mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 18:54:02 +01:00
[llvm-objcopy][MachO] Add support for LC_THREAD/LC_UNIXTHREAD
Add support for LC_THREAD/LC_UNIXTHREAD (these load commands can be copied over without any modifications). Test plan: make check-all Differential revision: https://reviews.llvm.org/D101384
This commit is contained in:
parent
20783a20c4
commit
c1f4ebca93
44
test/tools/llvm-objcopy/MachO/lc-thread.test
Normal file
44
test/tools/llvm-objcopy/MachO/lc-thread.test
Normal file
@ -0,0 +1,44 @@
|
||||
## This test verifies that the load commands LC_THREAD/LC_UNIXTHREAD
|
||||
## are copied correctly.
|
||||
|
||||
# RUN: yaml2obj -D LC_NAME=LC_THREAD %s -o %t.lc_thread.exe
|
||||
# RUN: llvm-objcopy %t.lc_thread.exe %t.lc_thread.exe.copy
|
||||
# RUN: cmp %t.lc_thread.exe %t.lc_thread.exe.copy
|
||||
|
||||
# RUN: yaml2obj -D LC_NAME=LC_UNIXTHREAD %s -o %t.lc_unixthread.exe
|
||||
# RUN: llvm-objcopy %t.lc_unixthread.exe %t.lc_unixthread.exe.copy
|
||||
# RUN: cmp %t.lc_unixthread.exe %t.lc_unixthread.exe.copy
|
||||
|
||||
--- !mach-o
|
||||
IsLittleEndian: true
|
||||
FileHeader:
|
||||
magic: 0xFEEDFACF
|
||||
cputype: 0x1000007
|
||||
cpusubtype: 0x3
|
||||
filetype: 0x2
|
||||
ncmds: 1
|
||||
sizeofcmds: 184
|
||||
flags: 0x18085
|
||||
reserved: 0x0
|
||||
LoadCommands:
|
||||
- cmd: [[LC_NAME]]
|
||||
cmdsize: 184
|
||||
PayloadBytes: [ 0x4, 0x0, 0x0, 0x0, 0x2A, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5C, 0xB, 0x0, 0x0,
|
||||
0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0 ]
|
||||
...
|
@ -371,6 +371,8 @@ Error MachOLayoutBuilder::layoutTail(uint64_t Offset) {
|
||||
case MachO::LC_LOAD_WEAK_DYLIB:
|
||||
case MachO::LC_UUID:
|
||||
case MachO::LC_SOURCE_VERSION:
|
||||
case MachO::LC_THREAD:
|
||||
case MachO::LC_UNIXTHREAD:
|
||||
// Nothing to update.
|
||||
break;
|
||||
default:
|
||||
|
Loading…
Reference in New Issue
Block a user