[llvm-commits] [llvm] r131522 - in /llvm/trunk: include/llvm/MC/MCStreamer.h lib/MC/MCStreamer.cpp

Charles Davis cdavis at mines.edu
Tue May 17 21:47:22 PDT 2011


Author: cdavis
Date: Tue May 17 23:47:22 2011
New Revision: 131522

URL: http://llvm.org/viewvc/llvm-project?rev=131522&view=rev
Log:
While thinking about how to know where the functions' boundaries are for
the purposes of the Win64 EH tables, I realized we had no way to tell where
the function ends. (MASM bounds functions with PROC and ENDP keywords.)
Add a directive to delimit the end of the function, and rename the 'frame'
directive to more accurately reflect its duality with the new directive.

Modified:
    llvm/trunk/include/llvm/MC/MCStreamer.h
    llvm/trunk/lib/MC/MCStreamer.cpp

Modified: llvm/trunk/include/llvm/MC/MCStreamer.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/MC/MCStreamer.h?rev=131522&r1=131521&r2=131522&view=diff
==============================================================================
--- llvm/trunk/include/llvm/MC/MCStreamer.h (original)
+++ llvm/trunk/include/llvm/MC/MCStreamer.h Tue May 17 23:47:22 2011
@@ -457,13 +457,14 @@
     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 EmitWin64EHStartProc(MCSymbol *Symbol, MCSymbol *EHandler = 0);
+    virtual void EmitWin64EHEndProc();
     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);
-    virtual void EmitWin64EHEndProlog(void);
+    virtual void EmitWin64EHEndProlog();
 
     /// EmitInstruction - Emit the given @p Instruction into the current
     /// section.

Modified: llvm/trunk/lib/MC/MCStreamer.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCStreamer.cpp?rev=131522&r1=131521&r2=131522&view=diff
==============================================================================
--- llvm/trunk/lib/MC/MCStreamer.cpp (original)
+++ llvm/trunk/lib/MC/MCStreamer.cpp Tue May 17 23:47:22 2011
@@ -310,7 +310,13 @@
   CurFrame->Instructions.push_back(Instruction);
 }
 
-void MCStreamer::EmitWin64EHFrame(MCSymbol *Symbol, MCSymbol *EHandler)
+void MCStreamer::EmitWin64EHStartProc(MCSymbol *Symbol, MCSymbol *EHandler)
+{
+  errs() << "Not implemented yet\n";
+  abort();
+}
+
+void MCStreamer::EmitWin64EHEndProc()
 {
   errs() << "Not implemented yet\n";
   abort();
@@ -346,7 +352,7 @@
   abort();
 }
 
-void MCStreamer::EmitWin64EHEndProlog(void)
+void MCStreamer::EmitWin64EHEndProlog()
 {
   errs() << "Not implemented yet\n";
   abort();





More information about the llvm-commits mailing list