diff gen/irstate.h @ 233:76ee1bbe487e trunk

[svn r249] Changed inline asm clobbers to a set instead of a list so we don't get duplicate clobbers.
author lindquist
date Sun, 08 Jun 2008 06:45:54 +0200
parents 092468448d25
children fc9c1a0eabbd
line wrap: on
line diff
--- a/gen/irstate.h	Sun Jun 08 06:15:51 2008 +0200
+++ b/gen/irstate.h	Sun Jun 08 06:45:54 2008 +0200
@@ -70,11 +70,16 @@
     std::string code;
     std::string out_c;
     std::string in_c;
-    std::string clobbers;
     std::vector<LLValue*> out;
     std::vector<LLValue*> in;
 };
 
+struct IRAsmBlock
+{
+    std::vector<IRAsmStmt*> s;
+    std::set<std::string> clobs;
+};
+
 // represents the module
 struct IRState
 {
@@ -152,8 +157,7 @@
     FuncDeclVector unitTests;
 
     // for inline asm
-    std::vector<IRAsmStmt*> ASMs;
-    bool inASM;
+    IRAsmBlock* asmBlock;
 };
 
 #endif // LLVMDC_GEN_IRSTATE_H