summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/MCStreamer.cpp
diff options
context:
space:
mode:
authorSaleem Abdulrasool <compnerd@compnerd.org>2017-07-28 03:39:19 +0000
committerSaleem Abdulrasool <compnerd@compnerd.org>2017-07-28 03:39:19 +0000
commita219b3d8d1fd65b5b52ee47b026d092ad10c44ef (patch)
tree2756d8931b2a74e1623dbe5aa147c8f8713e95cf /llvm/lib/MC/MCStreamer.cpp
parentb3c70c09e37f73e8188fc3da8b9ed9914bca232e (diff)
downloadbcm5719-llvm-a219b3d8d1fd65b5b52ee47b026d092ad10c44ef.tar.gz
bcm5719-llvm-a219b3d8d1fd65b5b52ee47b026d092ad10c44ef.zip
MC: add support for cfi_return_column
This adds support for the CFI pseudo-op return_column. This specifies the frame table column which contains the return address. Addresses PR33953! llvm-svn: 309360
Diffstat (limited to 'llvm/lib/MC/MCStreamer.cpp')
-rw-r--r--llvm/lib/MC/MCStreamer.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/lib/MC/MCStreamer.cpp b/llvm/lib/MC/MCStreamer.cpp
index 2bfb9a63eed..e35907f77e1 100644
--- a/llvm/lib/MC/MCStreamer.cpp
+++ b/llvm/lib/MC/MCStreamer.cpp
@@ -508,6 +508,12 @@ void MCStreamer::EmitCFIWindowSave() {
CurFrame->Instructions.push_back(Instruction);
}
+void MCStreamer::EmitCFIReturnColumn(int64_t Register) {
+ EnsureValidDwarfFrame();
+ MCDwarfFrameInfo *CurFrame = getCurrentDwarfFrameInfo();
+ CurFrame->RAReg = Register;
+}
+
void MCStreamer::EnsureValidWinFrameInfo() {
const MCAsmInfo *MAI = Context.getAsmInfo();
if (!MAI->usesWindowsCFI())
OpenPOWER on IntegriCloud