diff --git a/clang/test/CodeGen/bit-int-ubsan.c b/clang/test/CodeGen/bit-int-ubsan.c index 35f96963c181d..10c0d8a23f8f9 100644 --- a/clang/test/CodeGen/bit-int-ubsan.c +++ b/clang/test/CodeGen/bit-int-ubsan.c @@ -1,11 +1,9 @@ // REQUIRES: x86-registered-target -// RUN: %clang -Wno-constant-conversion -Wno-array-bounds -Wno-division-by-zero -Wno-shift-negative-value -Wno-shift-count-negative -Wno-int-to-pointer-cast -fsanitize=array-bounds,enum,float-cast-overflow,integer-divide-by-zero,implicit-unsigned-integer-truncation,implicit-signed-integer-truncation,implicit-integer-sign-change,unsigned-integer-overflow,signed-integer-overflow,shift-base,shift-exponent -O0 -S -emit-llvm -o - %s | FileCheck %s +// RUN: %clang_cc1 -Wno-constant-conversion -Wno-array-bounds -Wno-division-by-zero -Wno-shift-negative-value -Wno-shift-count-negative -Wno-int-to-pointer-cast -fsanitize=array-bounds,enum,float-cast-overflow,integer-divide-by-zero,implicit-unsigned-integer-truncation,implicit-signed-integer-truncation,implicit-integer-sign-change,unsigned-integer-overflow,signed-integer-overflow,shift-base,shift-exponent -O0 -emit-llvm -o - %s | FileCheck %s // The runtime test checking the _BitInt ubsan feature is located in compiler-rt/test/ubsan/TestCases/Integer/bit-int.c -#include -#include - +typedef unsigned int uint32_t; uint32_t float_divide_by_zero() { float f = 1.0f / 0.0f; // CHECK: constant { i16, i16, [8 x i8] } { i16 1, i16 32, [8 x i8] c"'float'\00" } @@ -78,19 +76,3 @@ uint32_t negative_shift5(unsigned _BitInt(37) x) return x >> c; // CHECK: constant { i16, i16, [20 x i8] } { i16 2, i16 {{([[:xdigit:]]{2})}}, [20 x i8] c"'_BitInt(68)'\00D\00\00\00\00\00" } } - -int main(int argc, char **argv) { - // clang-format off - uint64_t result = - 1ULL + - implicit_unsigned_integer_truncation() + - (uint32_t)array_bounds() + - float_cast_overflow() + - (uint64_t)implicit_signed_integer_truncation() + - negative_shift1(5) + - negative_shift2(5) + - negative_shift3(5) + - negative_shift5(5); - // clang-format on - printf("%u\n", (uint32_t)(result & 0xFFFFFFFF)); -}