diff options
author | Anton Korobeynikov <asl@math.spbu.ru> | 2007-01-17 10:33:08 +0000 |
---|---|---|
committer | Anton Korobeynikov <asl@math.spbu.ru> | 2007-01-17 10:33:08 +0000 |
commit | 5032e5a61381437174e035de2a7dd728978f7bd5 (patch) | |
tree | d3490b98b33a202ee2b2a399692d9c7b169ac1c8 /include/llvm/Target | |
parent | e911615c4769d793588087b5321d303ecb9661c7 (diff) | |
download | external_llvm-5032e5a61381437174e035de2a7dd728978f7bd5.zip external_llvm-5032e5a61381437174e035de2a7dd728978f7bd5.tar.gz external_llvm-5032e5a61381437174e035de2a7dd728978f7bd5.tar.bz2 |
* Fix one more bug in PIC codegen: extra load is needed for *all*
non-statics.
* Introduce new option to output zero-initialized data to .bss section.
This can reduce size of binaries. Enable it by default for ELF &
Cygwin/Mingw targets. Probably, Darwin should be also added.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33299 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Target')
-rw-r--r-- | include/llvm/Target/TargetAsmInfo.h | 7 | ||||
-rw-r--r-- | include/llvm/Target/TargetOptions.h | 2 |
2 files changed, 9 insertions, 0 deletions
diff --git a/include/llvm/Target/TargetAsmInfo.h b/include/llvm/Target/TargetAsmInfo.h index 6d80a7e..1b95789 100644 --- a/include/llvm/Target/TargetAsmInfo.h +++ b/include/llvm/Target/TargetAsmInfo.h @@ -38,6 +38,10 @@ namespace llvm { /// DataSection - Section directive for standard data. /// const char *DataSection; // Defaults to ".data". + + /// BSSSection - Section directive for uninitialized data. + /// + const char *BSSSection; // Default to ".bss". /// AddressSize - Size of addresses used in file. /// @@ -313,6 +317,9 @@ namespace llvm { const char *getDataSection() const { return DataSection; } + const char *getBSSSection() const { + return BSSSection; + } unsigned getAddressSize() const { return AddressSize; } diff --git a/include/llvm/Target/TargetOptions.h b/include/llvm/Target/TargetOptions.h index 4d21b0b..89234de 100644 --- a/include/llvm/Target/TargetOptions.h +++ b/include/llvm/Target/TargetOptions.h @@ -54,6 +54,8 @@ namespace llvm { /// generate libcalls to the software floating point library instead of /// target FP instructions. extern bool UseSoftFloat; + + extern bool NoZerosInBSS; } // End llvm namespace #endif |