This repository has been archived by the owner on Apr 23, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Now that dsymutil can generate accelerator tables, we can upstream the update logic that, as the name implies, updates the accelerator tables in an existing dSYM bundle. In combination with `-minimize` this can be used to remove redundant .debug_(inlines|pubtypes|pubnames). Differential revision: https://reviews.llvm.org/D42880 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@324480 91177308-0d34-0410-b5e6-96231b3b80d8
- Loading branch information
1 parent
5065b0d
commit 87dba15
Showing
8 changed files
with
341 additions
and
45 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
RUN: llvm-dsymutil -oso-prepend-path=%p/.. %p/../Inputs/objc.macho.x86_64 -o %t.dSYM | ||
RUN: llvm-dsymutil -update %t.dSYM | ||
RUN: llvm-dwarfdump -apple-types -apple-objc %t.dSYM/Contents/Resources/DWARF/objc.macho.x86_64 | FileCheck %s | ||
|
||
CHECK: .apple_types contents: | ||
CHECK: Hash 0x2b5e6 [ | ||
CHECK-NEXT: Name@0x145 { | ||
CHECK-NEXT: String: 0x00000066 "A" | ||
CHECK-NEXT: Data 0 [ | ||
CHECK-NEXT: Atom[0]: 0x0000012d | ||
CHECK-NEXT: Atom[1]: 0x0013 | ||
CHECK-NEXT: Atom[2]: 0x02 | ||
CHECK-NEXT: Atom[3]: 0x0b87b15a | ||
CHECK-NEXT: ] | ||
CHECK-NEXT: } | ||
CHECK-NEXT: ] | ||
|
||
CHECK: .apple_objc contents: | ||
CHECK: Hash 0x2b5e6 | ||
CHECK-NEXT: Name@0x38 { | ||
CHECK-NEXT: String: 0x00000066 "A" | ||
CHECK-NEXT: Data 0 [ | ||
CHECK-NEXT: Atom[0]: 0x00000027 | ||
CHECK-NEXT: ] | ||
CHECK-NEXT: Data 1 [ | ||
CHECK-NEXT: Atom[0]: 0x0000007a | ||
CHECK-NEXT: ] | ||
CHECK-NEXT: } | ||
CHECK: Hash 0x3fa0f4b5 | ||
CHECK-NEXT: Name@0x4c { | ||
CHECK-NEXT: String: 0x0000009d "A(Category)" | ||
CHECK-NEXT: Data 0 [ | ||
CHECK-NEXT: Atom[0]: 0x0000007a | ||
CHECK-NEXT: ] | ||
CHECK-NEXT: } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
87dba15
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@JDevlieghere is this bringing llvm-dsymutil back in sync with the Apple dsymutil? Seeing the word upstream here gets me excited 😄
87dba15
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@copumpkin Yes! I'm pretty close at this point, there are only a few more thing left that should make it upstream in the near future.
87dba15
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh awesome! I've been eagerly keeping an eye on this work and it's very exciting to see it finally get ported over 😄 thank you so much!
87dba15
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@JDevlieghere any idea which LLVM release should have a "fully functional
llvm-dsymutil
"? Trying to figure out at what point I can start using it interchangeably with the official Apple one and it's hard to gauge feature parity by watching commits 😄87dba15
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@copumpkin I believe only support for BCSymbolFiles is missing upstream. I'm working on a patch for this but it's pretty low on my priorities list... We've also renamed the tool upstream to reflect this (it's just
dsymutil
now) and switched the LLDB test suite to use the one from llvm. So unless you're embedding bitcode, you should be able to switch between the two transparently.87dba15
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome, thanks for all the great work! So it seems like 7.0 is the first version with the rename: https://github.com/llvm-mirror/llvm/blob/release_70/tools/dsymutil/LLVMBuild.txt#L20
So excited!