diff options
| author | Jimmy Kwa <[email protected]> | 2010-10-28 12:19:50 -0800 |
|---|---|---|
| committer | Jimmy Kwa <[email protected]> | 2010-10-28 12:19:50 -0800 |
| commit | d7809cae28dd28ac86555e53cb2d125656aa3ec0 (patch) | |
| tree | bbd599202a5a68e50e03b1fdab53225ac06a3e19 /getDecuda | |
| parent | 0586c55d7688f492d5264cb9299cf00ff73d3df7 (diff) | |
fixed decuda_to_ptxplus's makefile after being moved into distribution. Moved getDecuda into distribution as well.
[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 7943]
Diffstat (limited to 'getDecuda')
| -rw-r--r-- | getDecuda/decuda.patch | 37 | ||||
| -rwxr-xr-x | getDecuda/getDecuda.sh | 10 |
2 files changed, 47 insertions, 0 deletions
diff --git a/getDecuda/decuda.patch b/getDecuda/decuda.patch new file mode 100644 index 0000000..eab6c50 --- /dev/null +++ b/getDecuda/decuda.patch @@ -0,0 +1,37 @@ +diff -crB decuda/Instruction.py decudaplus/Instruction.py +*** decuda/Instruction.py 2010-07-24 05:28:03.000000000 -0700 +--- decudaplus/Instruction.py 2010-09-27 12:52:24.000000000 -0700 +*************** +*** 401,406 **** +--- 401,409 ---- + value = self.bits(0,0x001F0000) + else: + value = self.bits(0,0x007F0000) ++ if len(self.inst)==2: ++ if self.bits(1,0x00200000): ++ t_offset = 0 + + if opt_imm and self.fullinst and self.bits(1,0x00100000): + # Operand 3 is immediate +diff -crB decuda/Operand.py decudaplus/Operand.py +*** decuda/Operand.py 2010-07-24 05:28:03.000000000 -0700 +--- decudaplus/Operand.py 2010-09-27 12:52:24.000000000 -0700 +*************** +*** 176,183 **** + rv.write(("0x%06x") % value) + elif self.offset != None: + rv.write(("%s[$ofs%i%s%s0x%0"+width+"x]") % (_indir[self.indirection], self.offset, _ofs_inc[self.offset_inc], times, value)) +! elif self.indirection == OP_INDIRECTION_SHARED and self.size==16 and value in _param_space: +! rv.write(_param_space[value]) + elif self.indirection == OP_INDIRECTION_INTERNAL and value in _ldgpu_ops: + rv.write(_ldgpu_ops[value]) + else: +--- 176,183 ---- + rv.write(("0x%06x") % value) + elif self.offset != None: + rv.write(("%s[$ofs%i%s%s0x%0"+width+"x]") % (_indir[self.indirection], self.offset, _ofs_inc[self.offset_inc], times, value)) +! elif self.indirection == OP_INDIRECTION_SHARED and self.size==16 and value/2 in _param_space: +! rv.write(_param_space[value/2]) + elif self.indirection == OP_INDIRECTION_INTERNAL and value in _ldgpu_ops: + rv.write(_ldgpu_ops[value]) + else: diff --git a/getDecuda/getDecuda.sh b/getDecuda/getDecuda.sh new file mode 100755 index 0000000..a4a7db9 --- /dev/null +++ b/getDecuda/getDecuda.sh @@ -0,0 +1,10 @@ +# This script downloads the latest version of decuda from http://github.com/laanwj/decuda, untars it and patches it. +# Currently hardcoded to work with only decuda 0.4.2. + +# decuda.patch must be in the same folder as getDecuda.sh + +wget -q http://github.com/laanwj/decuda/tarball/master +tar -xf ./laanwj-decuda-c30bd17.tar.gz +mv laanwj-decuda-c30bd17 ../decuda +patch -s -d ../decuda < ./decuda.patch +rm ./laanwj-decuda-c30bd17.tar.gz |
