llvm-project/llvm/lib/Target/X86/MCTargetDesc
Fangrui Song a048ce13e3 [X86] Default to -x86-pad-for-align=false to drop assembler difference with or w/o -g
Fix PR48742: the D75203 assembler optimization locates MCRelaxableFragment's
within two MCSymbol's and relaxes some MCRelaxableFragment's to reduce the size
of a MCAlignFragment.  A -g build has more MCSymbol's and therefore may have
different assembler output (e.g. a MCRelaxableFragment (jmp) may have 5 bytes
with -O1 while 2 bytes with -O1 -g).

`.p2align 4, 0x90` is common due to loops. For a larger program, with a
lot of temporary labels, the assembly output difference is somewhat
destined. The cost seems to overweigh the benefits so we default to
-x86-pad-for-align=false until the heuristic is improved.

Reviewed By: skan

Differential Revision: https://reviews.llvm.org/D94542
2021-01-16 16:39:54 -08:00
..
CMakeLists.txt llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
X86ATTInstPrinter.cpp [llvm-objdump] Symbolize binary addresses for low-noisy asm diff. 2020-08-17 16:55:12 -07:00
X86ATTInstPrinter.h [AsmWriter] Factor out mnemonic generation to accessible getMnemonic. 2020-11-17 09:47:38 +00:00
X86AsmBackend.cpp [X86] Default to -x86-pad-for-align=false to drop assembler difference with or w/o -g 2021-01-16 16:39:54 -08:00
X86BaseInfo.h [X86] Support Intel avxvnni 2020-10-31 12:39:51 +08:00
X86ELFObjectWriter.cpp [X86] Support modifier @PLTOFF for R_X86_64_PLTOFF64 2020-12-01 08:39:01 -08:00
X86FixupKinds.h
X86InstComments.cpp
X86InstComments.h
X86InstPrinterCommon.cpp [X86] Support Intel avxvnni 2020-10-31 12:39:51 +08:00
X86InstPrinterCommon.h
X86IntelInstPrinter.cpp [llvm-objdump] Symbolize binary addresses for low-noisy asm diff. 2020-08-17 16:55:12 -07:00
X86IntelInstPrinter.h [AsmWriter] Factor out mnemonic generation to accessible getMnemonic. 2020-11-17 09:47:38 +00:00
X86MCAsmInfo.cpp
X86MCAsmInfo.h
X86MCCodeEmitter.cpp [X86] Avoid generating invalid R_X86_64_GOTPCRELX relocations 2020-12-18 23:38:38 +00:00
X86MCExpr.h
X86MCTargetDesc.cpp [X86][MC][Target] Initial backend support a tune CPU to support -mtune 2020-08-14 15:31:50 -07:00
X86MCTargetDesc.h [X86] X86MCTargetDesc - ensure the declaration/definition variable names match. NFCI. 2020-10-31 11:50:00 +00:00
X86MachObjectWriter.cpp [X86] Cleanup/add namespace closure comments. NFCI. 2020-09-22 15:06:58 +01:00
X86ShuffleDecode.cpp [X86] Cleanup/add namespace closure comments. NFCI. 2020-09-22 15:06:58 +01:00
X86ShuffleDecode.h
X86TargetStreamer.h
X86WinCOFFObjectWriter.cpp
X86WinCOFFStreamer.cpp Reapply "[CodeGen] [WinException] Only produce handler data at the end of the function if needed" 2020-11-23 23:17:03 +02:00
X86WinCOFFTargetStreamer.cpp