aboutsummaryrefslogtreecommitdiffhomepage
path: root/ptx/src/test/spirv_run/subc_cc2.ptx
diff options
context:
space:
mode:
Diffstat (limited to 'ptx/src/test/spirv_run/subc_cc2.ptx')
-rw-r--r--ptx/src/test/spirv_run/subc_cc2.ptx55
1 files changed, 0 insertions, 55 deletions
diff --git a/ptx/src/test/spirv_run/subc_cc2.ptx b/ptx/src/test/spirv_run/subc_cc2.ptx
deleted file mode 100644
index 2c776a4..0000000
--- a/ptx/src/test/spirv_run/subc_cc2.ptx
+++ /dev/null
@@ -1,55 +0,0 @@
-.version 6.5
-.target sm_30
-.address_size 64
-
-.visible .entry subc_cc2(
- .param .u64 input,
- .param .u64 output
-)
-{
- .reg .u64 in_addr;
- .reg .u64 out_addr;
- .reg .b32 unused;
-
- .reg .b32 result_1;
- .reg .b32 carry_out_1_1;
- .reg .b32 carry_out_1_2;
- .reg .b32 result_2;
- .reg .b32 carry_out_2;
- .reg .b32 result_3;
- .reg .b32 carry_out_3;
-
- ld.param.u64 out_addr, [output];
-
- // set carry=1
- sub.cc.s32 unused, 0, 1;
- // overflow (b + CC.CF), no underflow in whole operation
- subc.cc.s32 result_1, 0, 4294967295;
- // write carry
- subc.s32 carry_out_1_1, 2, 0;
- // make sure the overflow in (b + CC.CF) is not detected by addc
- addc.s32 carry_out_1_2, 0, 0;
-
- // set carry=1
- sub.cc.s32 unused, 0, 1;
- // underflow in substraction, underflow in whole operation
- subc.cc.s32 result_2, 0, 0;
- // write carry
- subc.s32 carry_out_2, 2, 0;
-
- // set carry=0
- sub.cc.s32 unused, 0, 0;
- // same operation as bove, but 0-1-0 instead of 0-0-1
- subc.cc.s32 result_3, 0, 1;
- // write carry
- subc.s32 carry_out_3, 2, 0;
-
- st.s32 [out_addr], result_1;
- st.s32 [out_addr+4], carry_out_1_1;
- st.s32 [out_addr+8], carry_out_1_2;
- st.s32 [out_addr+12], result_2;
- st.s32 [out_addr+16], carry_out_2;
- st.s32 [out_addr+20], result_3;
- st.s32 [out_addr+24], carry_out_3;
- ret;
-}