SSiva Chandra Reddy[libc] Make the errno macro resolve to the thread local variable directly.
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[libc] Make the errno macro resolve to the thread local variable directly. With modern architectures having a thread pointer and language supporting thread locals, there is no reason to use a function intermediary to access the thread local errno value. The entrypoint corresponding to errno has been replaced with an object library as there is no formal entrypoint for errno anymore. Reviewed By: jeffbailey, michaelrj Differential Revision: https://reviews.llvm.org/D120920 | 4 年前 | |
[libc] Move the implementation of mmap and munmap into a linux specific area. This allows us to get rid of the PAGE_SIZE macro and use EXEC_PAGESIZE from linux/param.h. Few other points about this change: 1. The linux syscall functions have been moved into a linux specific area instead of src/unistd/syscall.h. The Linux syscall function from unistd.h is a public vararg function. What we have currently are linux speciif internal overloaded C++ functions. So, moving them to a Linux only area is more meaningful. 2. The implementations of mmap and munmap are now in a 'linux' directory within src/sys/mman. The idea here is that platform specific implementations will live in a platform specific subdirectories like these. Infrastructure common to a platform will live in the platform's config directory. For example, the linux syscall implementations live in config/linux. Reviewers: abrachet Tags: #libc-project Differential Revision: https://reviews.llvm.org/D73302 | 6 年前 |