From 3e0094d9694a27c9e925f789fa26e740dc445fbe Mon Sep 17 00:00:00 2001 From: Bruno Cardoso Lopes Date: Sat, 8 Aug 2009 17:29:04 +0000 Subject: ELF improvements: Handle large integers, x86_fp80, ConstantAggregateZero, and two more ConstantExpr: GetElementPtr and IntToPtr Set SHF_MERGE bit for mergeable strings Avoid zero initialized strings to be classified as a bss symbol Don't allow common symbols to be classified as STB_WEAK Add a constant to be used as a global value offset in data relocations git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78476 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/ELFWriter.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'lib/CodeGen/ELFWriter.h') diff --git a/lib/CodeGen/ELFWriter.h b/lib/CodeGen/ELFWriter.h index fe726524d3..362c278472 100644 --- a/lib/CodeGen/ELFWriter.h +++ b/lib/CodeGen/ELFWriter.h @@ -21,6 +21,7 @@ namespace llvm { class BinaryObject; class Constant; + class ConstantInt; class ConstantStruct; class ELFCodeEmitter; class ELFRelocation; @@ -248,8 +249,9 @@ namespace llvm { void EmitGlobalConstant(const Constant *C, ELFSection &GblS); void EmitGlobalConstantStruct(const ConstantStruct *CVS, ELFSection &GblS); - void emitGlobalDataRelocation(const GlobalValue *GV, unsigned Size, - ELFSection &GblS); + void EmitGlobalConstantLargeInt(const ConstantInt *CI, ELFSection &S); + void EmitGlobalDataRelocation(const GlobalValue *GV, unsigned Size, + ELFSection &GblS, uint64_t Offset = 0); bool EmitSpecialLLVMGlobal(const GlobalVariable *GV); void EmitXXStructorList(Constant *List, ELFSection &Xtor); void EmitRelocations(); -- cgit v1.2.3