diff options
author | Vy Nguyen <vyng@google.com> | 2023-06-06 14:00:47 -0400 |
---|---|---|
committer | Vy Nguyen <vyng@google.com> | 2023-06-07 10:03:50 -0400 |
commit | e60b30d5e3878e7d91f8872ec4c4dca00d4a2dfc (patch) | |
tree | 91674a55081d3968d264d0a68224f3b1b15f2a1f /llvm/lib/MC/MCTargetOptionsCommandFlags.cpp | |
parent | 2eb84c3ae2bf6c918c20cbe1c315e2f4683056f4 (diff) | |
download | llvm-e60b30d5e3878e7d91f8872ec4c4dca00d4a2dfc.zip llvm-e60b30d5e3878e7d91f8872ec4c4dca00d4a2dfc.tar.gz llvm-e60b30d5e3878e7d91f8872ec4c4dca00d4a2dfc.tar.bz2 |
Reland "D144999 [MC][MachO]Only emits compact-unwind format for "canonical" personality symbols. For the rest, use DWARFs."
Reasons for rolling forward:
- the crash reported from Chromium was fixed in D151824 (not related to this patch at all)
- since D152824 was committed, it should now be safe to roll this forward.
New change:
- add an additional _ in name check
This reverts commit 4980eead4d0b4666d53dad07afb091375b3a13a0.
Diffstat (limited to 'llvm/lib/MC/MCTargetOptionsCommandFlags.cpp')
-rw-r--r-- | llvm/lib/MC/MCTargetOptionsCommandFlags.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/lib/MC/MCTargetOptionsCommandFlags.cpp b/llvm/lib/MC/MCTargetOptionsCommandFlags.cpp index 0667ca5..8a4923e 100644 --- a/llvm/lib/MC/MCTargetOptionsCommandFlags.cpp +++ b/llvm/lib/MC/MCTargetOptionsCommandFlags.cpp @@ -39,6 +39,7 @@ MCOPT(bool, IncrementalLinkerCompatible) MCOPT(int, DwarfVersion) MCOPT(bool, Dwarf64) MCOPT(EmitDwarfUnwindType, EmitDwarfUnwind) +MCOPT(bool, EmitCompactUnwindNonCanonical) MCOPT(bool, ShowMCInst) MCOPT(bool, FatalWarnings) MCOPT(bool, NoWarn) @@ -87,6 +88,14 @@ llvm::mc::RegisterMCTargetOptionsFlags::RegisterMCTargetOptionsFlags() { "Use target platform default"))); MCBINDOPT(EmitDwarfUnwind); + static cl::opt<bool> EmitCompactUnwindNonCanonical( + "emit-compact-unwind-non-canonical", + cl::desc( + "Whether to try to emit Compact Unwind for non canonical entries."), + cl::init( + false)); // By default, use DWARF for non-canonical personalities. + MCBINDOPT(EmitCompactUnwindNonCanonical); + static cl::opt<bool> ShowMCInst( "asm-show-inst", cl::desc("Emit internal instruction representation to assembly file")); @@ -135,6 +144,7 @@ MCTargetOptions llvm::mc::InitMCTargetOptionsFromFlags() { Options.MCNoDeprecatedWarn = getNoDeprecatedWarn(); Options.MCNoTypeCheck = getNoTypeCheck(); Options.EmitDwarfUnwind = getEmitDwarfUnwind(); + Options.EmitCompactUnwindNonCanonical = getEmitCompactUnwindNonCanonical(); Options.AsSecureLogFile = getAsSecureLogFile(); return Options; |