SL_00_001 - bionic

SL_00_001 - bionic

About

bionic is Android's C library. A historical focus was on minimizing assembler, so very little new code actually needed writing. bionic reuses the Linux UAPI headers, so those definitions all came direct from the kernel.

Note: The RISCV64 ABI for Android mandates "V" extension, so discovery isn't necessary... only state save/restore (which is part of 6.5 already) 

Dependencies

Status

Development

ONGOING

Missing support for hardware breakpoints because kernel has no riscv64 ptrace() equivalent to arm64 ptrace(PTRACE_SETREGSET, child, NT_ARM_HW_BREAK, &iov).

Development Timeline

2022Q4-?

 

Upstreaming

COMPLETED

(Work happens directly upstream.)

Upstream Version

AOSP master

Projected to be API level 35 (Android V)

Contacts

Elliott Hughes (google)

Nick Knight (SiFive)

Yunhai Syh (Alibaba/T-Head)

 

Dependencies

Kernel support for hardware breakpoints (missing ptrace() )

 

 

Updates

Jan 3, 2024

  • Elliott Hughes (Google) - aosp/2896304 riscv64: remove some obsolete #if cruft.

Dec 6, 2023 

  • Elliott Hughes (Google) - aosp/2860689 riscv64: pass a pointer to __riscv_hwprobe() to ifunc resolvers.

Nov 27, 2023

  • Kenny Gong (Intel) - aosp/2844983 riscv64: correct comparison logic of have_fast_v

Oct 30, 2023

  • Elliott Hughes (Google) - aosp/2808261 riscv64: fix ODR violations.

Oct 27, 2023 

  • Elliott Hughes (Google) - aosp/2806858 Fix riscv64 stpcpy().

Oct 3, 2023 

  • Elliott Hughes (Google) - aosp/2768377 riscv64: add vector strcpy().  

Jun 1, 2023 

  • Project reported as priority for 2H23