brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.9 KiB · d01d4eb Raw
51 lines · plain
1// RUN: cir-opt %s --verify-roundtrip | FileCheck %s2 3!s32i = !cir.int<s, 32>4!s64i = !cir.int<s, 64>5!u32i = !cir.int<u, 32>6!u64i = !cir.int<u, 64>7 8module {9  cir.func @test_unary_unsigned() {10    %0 = cir.alloca !u32i, !cir.ptr<!u32i>, ["a"] {alignment = 4 : i64}11    %1 = cir.load %0 : !cir.ptr<!u32i>, !u32i12    %2 = cir.unary(plus, %1) : !u32i, !u32i13    %3 = cir.unary(minus, %1) : !u32i, !u32i14    %4 = cir.unary(not, %1) : !u32i, !u32i15    %5 = cir.unary(inc, %1) : !u32i, !u32i16    %6 = cir.unary(dec, %1) : !u32i, !u32i17    cir.return18  }19// CHECK: cir.func{{.*}} @test_unary_unsigned() {20// CHECK:   %0 = cir.alloca !u32i, !cir.ptr<!u32i>, ["a"] {alignment = 4 : i64}21// CHECK:   %1 = cir.load %0 : !cir.ptr<!u32i>, !u32i22// CHECK:   %2 = cir.unary(plus, %1) : !u32i, !u32i23// CHECK:   %3 = cir.unary(minus, %1) : !u32i, !u32i24// CHECK:   %4 = cir.unary(not, %1) : !u32i, !u32i25// CHECK:   %5 = cir.unary(inc, %1) : !u32i, !u32i26// CHECK:   %6 = cir.unary(dec, %1) : !u32i, !u32i27// CHECK:   cir.return28// CHECK: }29 30  cir.func @test_unary_signed() {31    %0 = cir.alloca !s32i, !cir.ptr<!s32i>, ["a"] {alignment = 4 : i64}32    %1 = cir.load %0 : !cir.ptr<!s32i>, !s32i33    %2 = cir.unary(plus, %1) : !s32i, !s32i34    %3 = cir.unary(minus, %1) nsw : !s32i, !s32i35    %4 = cir.unary(not, %1) : !s32i, !s32i36    %5 = cir.unary(inc, %1) nsw : !s32i, !s32i37    %6 = cir.unary(dec, %1) nsw : !s32i, !s32i38    cir.return39  }40// CHECK: cir.func{{.*}} @test_unary_signed() {41// CHECK:   %0 = cir.alloca !s32i, !cir.ptr<!s32i>, ["a"] {alignment = 4 : i64}42// CHECK:   %1 = cir.load %0 : !cir.ptr<!s32i>, !s32i43// CHECK:   %2 = cir.unary(plus, %1) : !s32i, !s32i44// CHECK:   %3 = cir.unary(minus, %1) nsw : !s32i, !s32i45// CHECK:   %4 = cir.unary(not, %1) : !s32i, !s32i46// CHECK:   %5 = cir.unary(inc, %1) nsw : !s32i, !s32i47// CHECK:   %6 = cir.unary(dec, %1) nsw : !s32i, !s32i48// CHECK:   cir.return49// CHECK: }50}51