diff --git a/llvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll b/llvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll index dd809f9b6a77..8f2b3dd8dea6 100644 --- a/llvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll +++ b/llvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll @@ -13,12 +13,12 @@ ; GFX10: v_med3_i32 [[A]], 0xffff8000, [[A]], [[C]] define i16 @v_clamp_i64_i16(i64 %in) #0 { entry: - %i = icmp sgt i64 %in, -32768 - %i1 = select i1 %i, i64 %in, i64 -32768 - %i2 = icmp slt i64 %i1, 32767 - %i3 = select i1 %i2, i64 %i1, i64 32767 - %i4 = trunc i64 %i3 to i16 - ret i16 %i4 + %greater = icmp sgt i64 %in, -32768 + %i1 = select i1 %greater, i64 %in, i64 -32768 + %lower = icmp slt i64 %i1, 32767 + %intermed = select i1 %lower, i64 %i1, i64 32767 + %result = trunc i64 %intermed to i16 + ret i16 %result } ; GFX10-LABEL: {{^}}v_clamp_i64_i16_reverse @@ -32,12 +32,12 @@ entry: ; GFX10: v_med3_i32 [[A]], 0xffff8000, [[A]], [[C]] define i16 @v_clamp_i64_i16_reverse(i64 %in) #0 { entry: - %i = icmp slt i64 %in, 32767 - %i1 = select i1 %i, i64 %in, i64 32767 - %i2 = icmp sgt i64 %i1, -32768 - %i3 = select i1 %i2, i64 %i1, i64 -32768 - %i4 = trunc i64 %i3 to i16 - ret i16 %i4 + %lower = icmp slt i64 %in, 32767 + %i1 = select i1 %lower, i64 %in, i64 32767 + %greater = icmp sgt i64 %i1, -32768 + %intermed = select i1 %greater, i64 %i1, i64 -32768 + %result = trunc i64 %intermed to i16 + ret i16 %result } ; GFX10-LABEL: {{^}}v_clamp_i64_i16_wrong_lower @@ -49,12 +49,12 @@ entry: ; GFX10: v_cndmask_b32_e32 [[B:v[0-9]+]], 0, [[B]], vcc_lo define i16 @v_clamp_i64_i16_wrong_lower(i64 %in) #0 { entry: - %i = icmp slt i64 %in, 32769 - %i1 = select i1 %i, i64 %in, i64 32769 - %i2 = icmp sgt i64 %i1, -32768 - %i3 = select i1 %i2, i64 %i1, i64 -32768 - %i4 = trunc i64 %i3 to i16 - ret i16 %i4 + %lower = icmp slt i64 %in, 32769 + %i1 = select i1 %lower, i64 %in, i64 32769 + %greater = icmp sgt i64 %i1, -32768 + %intermed = select i1 %greater, i64 %i1, i64 -32768 + %result = trunc i64 %intermed to i16 + ret i16 %result } ; GFX10-LABEL: {{^}}v_clamp_i64_i16_wrong_lower_and_higher @@ -63,12 +63,12 @@ entry: ; GFX10: v_cndmask_b32_e32 [[A:v[0-9]+]], 0x8000, [[A]], vcc_lo define i16 @v_clamp_i64_i16_wrong_lower_and_higher(i64 %in) #0 { entry: - %i = icmp sgt i64 %in, -32769 - %i1 = select i1 %i, i64 %in, i64 -32769 - %i2 = icmp slt i64 %i1, 32768 - %i3 = select i1 %i2, i64 %i1, i64 32768 - %i4 = trunc i64 %i3 to i16 - ret i16 %i4 + %greater = icmp sgt i64 %in, -32769 + %i1 = select i1 %greater, i64 %in, i64 -32769 + %lower = icmp slt i64 %i1, 32768 + %intermed = select i1 %lower, i64 %i1, i64 32768 + %result = trunc i64 %intermed to i16 + ret i16 %result } ; GFX10-LABEL: {{^}}v_clamp_i64_i16_lower_than_short @@ -82,12 +82,12 @@ entry: ; GFX10: v_med3_i32 [[A]], 0xffffff01, [[A]], [[C]] define i16 @v_clamp_i64_i16_lower_than_short(i64 %in) #0 { entry: - %i = icmp slt i64 %in, 256 - %i1 = select i1 %i, i64 %in, i64 256 - %i2 = icmp sgt i64 %i1, -255 - %i3 = select i1 %i2, i64 %i1, i64 -255 - %i4 = trunc i64 %i3 to i16 - ret i16 %i4 + %lower = icmp slt i64 %in, 256 + %i1 = select i1 %lower, i64 %in, i64 256 + %greater = icmp sgt i64 %i1, -255 + %intermed = select i1 %greater, i64 %i1, i64 -255 + %result = trunc i64 %intermed to i16 + ret i16 %result } ; GFX10-LABEL: {{^}}v_clamp_i64_i16_lower_than_short_reverse @@ -101,12 +101,12 @@ entry: ; GFX10: v_med3_i32 [[A]], 0xffffff01, [[A]], [[C]] define i16 @v_clamp_i64_i16_lower_than_short_reverse(i64 %in) #0 { entry: - %i = icmp sgt i64 %in, -255 - %i1 = select i1 %i, i64 %in, i64 -255 - %i2 = icmp slt i64 %i1, 256 - %i3 = select i1 %i2, i64 %i1, i64 256 - %i4 = trunc i64 %i3 to i16 - ret i16 %i4 + %greater = icmp sgt i64 %in, -255 + %i1 = select i1 %greater, i64 %in, i64 -255 + %lower = icmp slt i64 %i1, 256 + %intermed = select i1 %lower, i64 %i1, i64 256 + %result = trunc i64 %intermed to i16 + ret i16 %result } ; GFX10-LABEL: {{^}}v_clamp_i64_i16_zero @@ -114,10 +114,10 @@ entry: ; GFX10: v_mov_b32_e32 [[A:v[0-9]+]], 0 define i16 @v_clamp_i64_i16_zero(i64 %in) #0 { entry: - %i = icmp sgt i64 %in, 0 - %i1 = select i1 %i, i64 %in, i64 0 - %i2 = icmp slt i64 %i1, 0 - %i3 = select i1 %i2, i64 %i1, i64 0 - %i4 = trunc i64 %i3 to i16 - ret i16 %i4 + %greater = icmp sgt i64 %in, 0 + %i1 = select i1 %greater, i64 %in, i64 0 + %lower = icmp slt i64 %i1, 0 + %intermed = select i1 %lower, i64 %i1, i64 0 + %result = trunc i64 %intermed to i16 + ret i16 %result } \ No newline at end of file