aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/MC/MCStreamer.cpp
diff options
context:
space:
mode:
authorLuke Cheeseman <luke.cheeseman@arm.com>2018-09-28 13:37:27 +0000
committerLuke Cheeseman <luke.cheeseman@arm.com>2018-09-28 13:37:27 +0000
commit21f2955bb289bffe61f68a8b0726bbec24216214 (patch)
tree52c28c512e6e2b5d6119c11204dec73f41e5f36e /llvm/lib/MC/MCStreamer.cpp
parent66f4e45b35c809ff81b81044260a520e041a7d49 (diff)
downloadllvm-21f2955bb289bffe61f68a8b0726bbec24216214.zip
llvm-21f2955bb289bffe61f68a8b0726bbec24216214.tar.gz
llvm-21f2955bb289bffe61f68a8b0726bbec24216214.tar.bz2
Reapply changes reverted by r343235
- Add fix so that all code paths that create DWARFContext with an ObjectFile initialise the target architecture in the context - Add an assert that the Arch is known in the Dwarf CallFrameString method llvm-svn: 343317
Diffstat (limited to 'llvm/lib/MC/MCStreamer.cpp')
-rw-r--r--llvm/lib/MC/MCStreamer.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/lib/MC/MCStreamer.cpp b/llvm/lib/MC/MCStreamer.cpp
index fa0d1f4..bb8f3b8 100644
--- a/llvm/lib/MC/MCStreamer.cpp
+++ b/llvm/lib/MC/MCStreamer.cpp
@@ -565,6 +565,15 @@ void MCStreamer::EmitCFIWindowSave() {
CurFrame->Instructions.push_back(Instruction);
}
+void MCStreamer::EmitCFINegateRAState() {
+ MCSymbol *Label = EmitCFILabel();
+ MCCFIInstruction Instruction = MCCFIInstruction::createNegateRAState(Label);
+ MCDwarfFrameInfo *CurFrame = getCurrentDwarfFrameInfo();
+ if (!CurFrame)
+ return;
+ CurFrame->Instructions.push_back(Instruction);
+}
+
void MCStreamer::EmitCFIReturnColumn(int64_t Register) {
MCDwarfFrameInfo *CurFrame = getCurrentDwarfFrameInfo();
if (!CurFrame)