aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCharles Davis <cdavis@mines.edu>2011-05-15 17:20:01 +0000
committerCharles Davis <cdavis@mines.edu>2011-05-15 17:20:01 +0000
commitff96a12db635daf4f88cfea899e63a885dfaa9ed (patch)
tree1ea47025bbcef940a050b1fca3132da04679757d
parent090a929aeafb1315b4a03e3f64904ba1ccc32388 (diff)
Add stub methods to MCStreamer for emitting Win64 exception-handling
information. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131382 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/MC/MCStreamer.h8
-rw-r--r--lib/MC/MCStreamer.cpp36
2 files changed, 44 insertions, 0 deletions
diff --git a/include/llvm/MC/MCStreamer.h b/include/llvm/MC/MCStreamer.h
index cf4a9e5edc..292fe74ee8 100644
--- a/include/llvm/MC/MCStreamer.h
+++ b/include/llvm/MC/MCStreamer.h
@@ -293,6 +293,7 @@ namespace llvm {
/// if non-zero. This must be a power of 2 on some targets.
virtual void EmitTBSSSymbol(const MCSection *Section, MCSymbol *Symbol,
uint64_t Size, unsigned ByteAlignment = 0) = 0;
+
/// @}
/// @name Generating Data
/// @{
@@ -456,6 +457,13 @@ namespace llvm {
virtual void EmitCFIRelOffset(int64_t Register, int64_t Offset);
virtual void EmitCFIAdjustCfaOffset(int64_t Adjustment);
+ virtual void EmitWin64EHFrame(MCSymbol *Symbol, MCSymbol *EHandler = 0);
+ virtual void EmitWin64EHPushReg(int64_t Register);
+ virtual void EmitWin64EHSetFrame(int64_t Register, int64_t Offset);
+ virtual void EmitWin64EHAllocStack(int64_t Size);
+ virtual void EmitWin64EHSaveReg(int64_t Register, int64_t Offset);
+ virtual void EmitWin64EHPushFrame(bool Code);
+
/// EmitInstruction - Emit the given @p Instruction into the current
/// section.
virtual void EmitInstruction(const MCInst &Inst) = 0;
diff --git a/lib/MC/MCStreamer.cpp b/lib/MC/MCStreamer.cpp
index 9b644a91bd..1c0fac5135 100644
--- a/lib/MC/MCStreamer.cpp
+++ b/lib/MC/MCStreamer.cpp
@@ -310,6 +310,42 @@ void MCStreamer::EmitCFISameValue(int64_t Register) {
CurFrame->Instructions.push_back(Instruction);
}
+void MCStreamer::EmitWin64EHFrame(MCSymbol *Symbol, MCSymbol *EHandler = 0)
+{
+ errs() << "Not implemented yet\n";
+ abort();
+}
+
+void MCStreamer::EmitWin64EHPushReg(int64_t Register)
+{
+ errs() << "Not implemented yet\n";
+ abort();
+}
+
+void MCStreamer::EmitWin64EHSetFrame(int64_t Register, int64_t Offset)
+{
+ errs() << "Not implemented yet\n";
+ abort();
+}
+
+void MCStreamer::EmitWin64EHAllocStack(int64_t Size)
+{
+ errs() << "Not implemented yet\n";
+ abort();
+}
+
+void MCStreamer::EmitWin64EHSaveReg(int64_t Register, int64_t Offset)
+{
+ errs() << "Not implemented yet\n";
+ abort();
+}
+
+void MCStreamer::EmitWin64EHPushFrame(bool Code)
+{
+ errs() << "Not implemented yet\n";
+ abort();
+}
+
void MCStreamer::EmitFnStart() {
errs() << "Not implemented yet\n";
abort();