Refine longjmp key management. For Linux, re-implement key retrieval in
C (instead of assembly). Removal of InitializeGuardPtr and a final
round of cleanups will be done in the next commit.
Details
Details
- Reviewers
dvyukov - Commits
- rGba9eb4831842: Reland "[TSan] Improve handling of stack pointer mangling in {set,long}jmp, pt.
rCRT365560: Reland "[TSan] Improve handling of stack pointer mangling in {set,long}jmp, pt.
rL365560: Reland "[TSan] Improve handling of stack pointer mangling in {set,long}jmp, pt.
rG521f77e6351f: [TSan] Improve handling of stack pointer mangling in {set,long}jmp, pt.8
rCRT365513: [TSan] Improve handling of stack pointer mangling in {set,long}jmp, pt.8
rL365513: [TSan] Improve handling of stack pointer mangling in {set,long}jmp, pt.8
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
Our bots started failing with the following build error after this change landed:
/b/s/w/ir/k/llvm-project/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc:425:3: error: unknown type name 'jump_buf'; did you mean 'jmp_buf'?
jump_buf env;
^~~~~~~~
jmp_buf
/b/s/w/ir/k/cipd/linux-arm64/usr/include/setjmp.h:48:30: note: 'jmp_buf' declared here
typedef struct __jmp_buf_tag jmp_buf[1];
^
/b/s/w/ir/k/llvm-project/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc:426:3: error: use of undeclared identifier 'REAL'
REAL(setjmp)(env);
^
2 errors generated.Is it possible to fix the issue or revert the change?