aboutsummaryrefslogtreecommitdiffstats
path: root/lib/MC/MCMachOStreamer.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2011-04-30 22:29:54 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2011-04-30 22:29:54 +0000
commit89fc9e8f5eb74d5607bed7759628775b564a5383 (patch)
treefb908ff4a7e98e22ebbd3405c092c5b8fec61547 /lib/MC/MCMachOStreamer.cpp
parentec7e4fff960f166be8a8a39b7ba8cc7baac6b02c (diff)
downloadexternal_llvm-89fc9e8f5eb74d5607bed7759628775b564a5383.zip
external_llvm-89fc9e8f5eb74d5607bed7759628775b564a5383.tar.gz
external_llvm-89fc9e8f5eb74d5607bed7759628775b564a5383.tar.bz2
Enable CFI on OS X.
Currently the output should be almost identical to the one produced by CodeGen to make the transition easier. The only two differences I know of are: * Some files get an extra advance loc of size 0. This will be fixed when relaxations are enabled. * The optimization of declaring an EH symbol as an external variable is not implemented. This is a subset of adding the nounwind attribute, so we if really this at -O0 we should probably do it at the IL level. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130623 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/MC/MCMachOStreamer.cpp')
-rw-r--r--lib/MC/MCMachOStreamer.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/MC/MCMachOStreamer.cpp b/lib/MC/MCMachOStreamer.cpp
index b5a55a7..350321b 100644
--- a/lib/MC/MCMachOStreamer.cpp
+++ b/lib/MC/MCMachOStreamer.cpp
@@ -377,6 +377,9 @@ void MCMachOStreamer::EmitInstToData(const MCInst &Inst) {
}
void MCMachOStreamer::Finish() {
+ if (getNumFrameInfos())
+ MCDwarfFrameEmitter::Emit(*this);
+
// We have to set the fragment atom associations so we can relax properly for
// Mach-O.