diff options
-rw-r--r-- | include/llvm/MC/MCAsmInfo.h | 9 | ||||
-rw-r--r-- | include/llvm/Target/TargetOptions.h | 7 | ||||
-rw-r--r-- | lib/CodeGen/LLVMTargetMachine.cpp | 3 |
3 files changed, 17 insertions, 2 deletions
diff --git a/include/llvm/MC/MCAsmInfo.h b/include/llvm/MC/MCAsmInfo.h index 0ecffa34bd..724c3d7f38 100644 --- a/include/llvm/MC/MCAsmInfo.h +++ b/include/llvm/MC/MCAsmInfo.h @@ -307,6 +307,9 @@ namespace llvm { /// construction (see LLVMTargetMachine::initAsmInfo()). bool UseIntegratedAssembler; + /// Compress DWARF debug sections. Defaults to false. + bool CompressDebugSections; + public: explicit MCAsmInfo(); virtual ~MCAsmInfo(); @@ -538,6 +541,12 @@ namespace llvm { virtual void setUseIntegratedAssembler(bool Value) { UseIntegratedAssembler = Value; } + + bool compressDebugSections() const { return CompressDebugSections; } + + void setCompressDebugSections(bool CompressDebugSections) { + this->CompressDebugSections = CompressDebugSections; + } }; } diff --git a/include/llvm/Target/TargetOptions.h b/include/llvm/Target/TargetOptions.h index f50af6734b..1f873439c6 100644 --- a/include/llvm/Target/TargetOptions.h +++ b/include/llvm/Target/TargetOptions.h @@ -50,8 +50,8 @@ namespace llvm { DisableTailCalls(false), StackAlignmentOverride(0), EnableFastISel(false), PositionIndependentExecutable(false), EnableSegmentedStacks(false), UseInitArray(false), - DisableIntegratedAS(false), TrapFuncName(""), - FloatABIType(FloatABI::Default), + DisableIntegratedAS(false), CompressDebugSections(false), + TrapFuncName(""), FloatABIType(FloatABI::Default), AllowFPOpFusion(FPOpFusion::Standard) {} /// PrintMachineCode - This flag is enabled when the -print-machineinstrs @@ -161,6 +161,9 @@ namespace llvm { /// Disable the integrated assembler. unsigned DisableIntegratedAS : 1; + /// Compress DWARF debug sections. + unsigned CompressDebugSections : 1; + /// getTrapFunctionName - If this returns a non-empty string, this means /// isel should lower Intrinsic::trap to a call to the specified function /// name instead of an ISD::TRAP node. diff --git a/lib/CodeGen/LLVMTargetMachine.cpp b/lib/CodeGen/LLVMTargetMachine.cpp index 77f8377d9b..9c2718be7f 100644 --- a/lib/CodeGen/LLVMTargetMachine.cpp +++ b/lib/CodeGen/LLVMTargetMachine.cpp @@ -75,6 +75,9 @@ void LLVMTargetMachine::initAsmInfo() { if (Options.DisableIntegratedAS) TmpAsmInfo->setUseIntegratedAssembler(false); + if (Options.CompressDebugSections) + TmpAsmInfo->setCompressDebugSections(true); + AsmInfo = TmpAsmInfo; } |