summaryrefslogtreecommitdiff
path: root/libc/kernel/tools/clean_header.py
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2017-05-23 11:03:58 -0700
committerElliott Hughes <enh@google.com>2017-05-23 14:47:16 -0700
commit94072fbb4e42a195cd6cec97f9af15ff45cb84ee (patch)
treefe577acf1afd7e7be2372bf419537177da508011 /libc/kernel/tools/clean_header.py
parent4767bc4a6cebc2ad4c61cccdf92290e17227a792 (diff)
Switch to inline assembler in crtbegin.
Using __builtin_frame_address was clever, but didn't work for arm64 (for reasons which were never investigated) and the ChromeOS folks claim it causes trouble for x86 with ARC++ (though without a reproduceable test case). Naked functions turn out to be quite unevenly supported: some architectures do the right thing, others don't; some architectures warn, others don't (and the warnings don't always match the platforms that _actually_ have problems). Inline assembler also removes the guessing games: everyone knows what the couple of instructions _ought_ to be, and now we don't have to reason about what the compiler will actually do (yet still keep the majority of the code in C). Bug: N/A Test: builds, boots Change-Id: I14207ef50ca46b6eca273c3cb7509c311146a3ca
Diffstat (limited to 'libc/kernel/tools/clean_header.py')
0 files changed, 0 insertions, 0 deletions