diff options
author | John McCall <rjmccall@apple.com> | 2010-03-06 00:35:14 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2010-03-06 00:35:14 +0000 |
commit | beec5a080f57929bd3ebb29d8da25c43ee67aa6d (patch) | |
tree | 2dc6ccfb14f11969c79159b57cd0b138b8ce1164 /clang/lib/CodeGen/TargetInfo.h | |
parent | 381268e629041da9add8736ddbfe87b7bb420f38 (diff) | |
download | bcm5719-llvm-beec5a080f57929bd3ebb29d8da25c43ee67aa6d.tar.gz bcm5719-llvm-beec5a080f57929bd3ebb29d8da25c43ee67aa6d.zip |
Implement __builtin_dwarf_sp_column for i386 (Darwin and not), x86-64 (all),
and ARM. Implement __builtin_init_dwarf_reg_size_table for i386 (both) and
x86-64 (all).
llvm-svn: 97859
Diffstat (limited to 'clang/lib/CodeGen/TargetInfo.h')
-rw-r--r-- | clang/lib/CodeGen/TargetInfo.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/TargetInfo.h b/clang/lib/CodeGen/TargetInfo.h index 9e80081429c..f0a78243ff7 100644 --- a/clang/lib/CodeGen/TargetInfo.h +++ b/clang/lib/CodeGen/TargetInfo.h @@ -56,6 +56,23 @@ namespace clang { /// through such registers. virtual bool extendPointerWithSExt() const { return false; } + /// Determines the DWARF register number for the stack pointer, for + /// exception-handling purposes. Implements __builtin_dwarf_sp_column. + /// + /// Returns -1 if the operation is unsupported by this target. + virtual int getDwarfEHStackPointer(CodeGen::CodeGenModule &M) const { + return -1; + } + + /// Initializes the given DWARF EH register-size table, a char*. + /// Implements __builtin_init_dwarf_reg_size_table. + /// + /// Returns true if the operation is unsupported by this target. + virtual bool initDwarfEHRegSizeTable(CodeGen::CodeGenFunction &CGF, + llvm::Value *Address) const { + return true; + } + /// Performs the code-generation required to convert a return /// address as stored by the system into the actual address of the /// next instruction that will be executed. |