diff options
| author | Jez Ng <jezng@fb.com> | 2020-10-14 11:03:34 -0700 |
|---|---|---|
| committer | Jez Ng <jezng@fb.com> | 2020-11-10 12:19:28 -0800 |
| commit | b86908171ea81a57f11fb29960328f57aaa9e7f9 (patch) | |
| tree | 105b26557a66e5e05cbbb966fd5903dc297d8079 /llvm/lib/CodeGen/SafeStack.cpp | |
| parent | 2e8e1bdb89392f8bbe1c3886b1f8da8746659bb2 (diff) | |
| download | llvm-b86908171ea81a57f11fb29960328f57aaa9e7f9.zip llvm-b86908171ea81a57f11fb29960328f57aaa9e7f9.tar.gz llvm-b86908171ea81a57f11fb29960328f57aaa9e7f9.tar.bz2 | |
[lld-macho] Implement LC_UUID
Apple devtools use this to locate the dSYM files for a given
binary.
The UUID is computed based on an MD5 hash of the binary's contents. In order to
hash the contents, we must first write them, but LC_UUID itself must be part of
the written contents in order for all the offsets to be calculated correctly.
We resolve this circular paradox by first writing an LC_UUID with an all-zero
UUID, then updating the UUID with its real value later.
I'm not sure there's a good way to test that the value of the UUID is
"as expected", so I've just checked that it's present.
Reviewed By: #lld-macho, compnerd, smeenai
Differential Revision: https://reviews.llvm.org/D89418
Diffstat (limited to 'llvm/lib/CodeGen/SafeStack.cpp')
0 files changed, 0 insertions, 0 deletions
