summaryrefslogtreecommitdiff
path: root/src/cuda-sim
diff options
context:
space:
mode:
authorWilson Fung <[email protected]>2012-01-12 04:54:05 -0800
committerAndrew Boktor <[email protected]>2014-08-14 13:19:02 -0700
commit6e652346372315ee0c6076df0e72d33c298e3545 (patch)
treec70aec72f25ee806a04651b6efe26d196f8d3769 /src/cuda-sim
parentaa71c23cfafc4c69ba4628da528fc572aaa5cc1a (diff)
Integration change. Fix for div_impl with 32-bit and smaller integers.
[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 11310]
Diffstat (limited to 'src/cuda-sim')
-rw-r--r--src/cuda-sim/instructions.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/cuda-sim/instructions.cc b/src/cuda-sim/instructions.cc
index 9a42212..74e3bd2 100644
--- a/src/cuda-sim/instructions.cc
+++ b/src/cuda-sim/instructions.cc
@@ -1870,17 +1870,27 @@ void div_impl( const ptx_instruction *pI, ptx_thread_info *thread )
switch ( i_type ) {
case S8_TYPE:
+ data.s8 = src1_data.s8 / src2_data.s8 ; break;
case S16_TYPE:
+ data.s16 = src1_data.s16 / src2_data.s16; break;
case S32_TYPE:
+ data.s32 = src1_data.s32 / src2_data.s32; break;
case S64_TYPE:
data.s64 = src1_data.s64 / src2_data.s64; break;
case U8_TYPE:
+ data.u8 = src1_data.u8 / src2_data.u8 ; break;
case U16_TYPE:
+ data.u16 = src1_data.u16 / src2_data.u16; break;
case U32_TYPE:
+ data.u32 = src1_data.u32 / src2_data.u32; break;
case U64_TYPE:
+ data.u64 = src1_data.u64 / src2_data.u64; break;
case B8_TYPE:
+ data.u8 = src1_data.u8 / src2_data.u8 ; break;
case B16_TYPE:
+ data.u16 = src1_data.u16 / src2_data.u16; break;
case B32_TYPE:
+ data.u32 = src1_data.u32 / src2_data.u32; break;
case B64_TYPE:
data.u64 = src1_data.u64 / src2_data.u64; break;
case F16_TYPE: assert(0); break;