diff options
author | Zack Rusin <zack@tungstengraphics.com> | 2008-02-13 08:31:13 -0500 |
---|---|---|
committer | Zack Rusin <zack@tungstengraphics.com> | 2008-02-13 08:33:16 -0500 |
commit | 7e51d2a9986231f4ca44a3643628645923e4d468 (patch) | |
tree | e06b54b3586eeebc491154099a89177cf01a4c32 /src/mesa/pipe/llvm/storagesoa.h | |
parent | c107d572104890c83647ad611d303fe1fae70e8f (diff) |
implement immediates and make them work
Diffstat (limited to 'src/mesa/pipe/llvm/storagesoa.h')
-rw-r--r-- | src/mesa/pipe/llvm/storagesoa.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/mesa/pipe/llvm/storagesoa.h b/src/mesa/pipe/llvm/storagesoa.h index 43b23951de..2d07e836f4 100644 --- a/src/mesa/pipe/llvm/storagesoa.h +++ b/src/mesa/pipe/llvm/storagesoa.h @@ -38,6 +38,7 @@ namespace llvm { class LoadInst; class Value; class VectorType; + class Module; } class StorageSoa @@ -74,7 +75,9 @@ private: int channel) const; const char *name(const char *prefix) const; llvm::ConstantInt *constantInt(int) const; - llvm::Value *alignedArrayLoad(llvm::Value *val); + llvm::Value *alignedArrayLoad(llvm::Value *val); + llvm::Module *currentModule() const; + llvm::Value *createConstGlobalVector(float *vec); private: llvm::BasicBlock *m_block; @@ -84,6 +87,8 @@ private: llvm::Value *m_consts; llvm::Value *m_temps; + std::map<int, std::vector<llvm::Value*> > m_immediates; + mutable std::map<int, llvm::ConstantInt*> m_constInts; mutable char m_name[32]; mutable int m_idx; |