diff options
author | Dale Johannesen <dalej@apple.com> | 2008-03-26 23:31:39 +0000 |
---|---|---|
committer | Dale Johannesen <dalej@apple.com> | 2008-03-26 23:31:39 +0000 |
commit | d9ffd4cb92c95806b05df2d9f9e2be5c27cfe7fd (patch) | |
tree | 09ae8c828fd034cb03caf8ef90aa261f717d8e8b /include | |
parent | 4d9c9e9d31408d9c7756ac241588862ffbe309ea (diff) | |
download | external_llvm-d9ffd4cb92c95806b05df2d9f9e2be5c27cfe7fd.zip external_llvm-d9ffd4cb92c95806b05df2d9f9e2be5c27cfe7fd.tar.gz external_llvm-d9ffd4cb92c95806b05df2d9f9e2be5c27cfe7fd.tar.bz2 |
Fix a bug in Darwin EH: FDE->CIE pointer must
be relocatable. Describe why .set is needed better.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48848 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/Target/TargetAsmInfo.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/include/llvm/Target/TargetAsmInfo.h b/include/llvm/Target/TargetAsmInfo.h index 2f54696..7fd88b2 100644 --- a/include/llvm/Target/TargetAsmInfo.h +++ b/include/llvm/Target/TargetAsmInfo.h @@ -65,8 +65,15 @@ namespace llvm { /// section on this target. Null if this target doesn't support zerofill. const char *ZeroFillDirective; // Default is null. - /// NeedsSet - True if target asm can't compute addresses on data - /// directives. + /// NeedsSet - True if target asm treats expressions in data directives + /// as linktime-relocatable. For assembly-time computation, we need to + /// use a .set. Thus: + /// .set w, x-y + /// .long w + /// is computed at assembly time, while + /// .long x-y + /// is relocated if the relative locations of x and y change at linktime. + /// We want both these things in different places. bool NeedsSet; // Defaults to false. /// MaxInstLength - This is the maximum possible length of an instruction, |