diff options
author | Zack Rusin <[email protected]> | 2007-10-26 19:12:02 -0400 |
---|---|---|
committer | Zack Rusin <[email protected]> | 2007-10-26 19:12:56 -0400 |
commit | 789d248558061fe4d65f664d6770a12b90fa2e34 (patch) | |
tree | 51d17829b47536c8a8a0b0c929e8b28532f29ab3 /src/mesa/pipe/llvm/storage.h | |
parent | 78c1f8b2decf168d183c52e7b414adb29dd18988 (diff) |
Hold a stack of temporaries so that we can redeclare them
for all defined functions. Fixes crashes in function calls.
Diffstat (limited to 'src/mesa/pipe/llvm/storage.h')
-rw-r--r-- | src/mesa/pipe/llvm/storage.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mesa/pipe/llvm/storage.h b/src/mesa/pipe/llvm/storage.h index b8d6eb06049..eeadaa0506a 100644 --- a/src/mesa/pipe/llvm/storage.h +++ b/src/mesa/pipe/llvm/storage.h @@ -84,6 +84,8 @@ public: void pushArguments(llvm::Value *out, llvm::Value *in, llvm::Value *constPtr); void popArguments(); + void pushTemps(); + void popTemps(); private: llvm::Value *maskWrite(llvm::Value *src, int mask, llvm::Value *templ); @@ -122,6 +124,7 @@ private: llvm::Value *cst; }; std::stack<Args> m_argStack; + std::stack<std::vector<llvm::Value*> > m_tempStack; }; #endif |