Files
UnrealEngine/Engine/Source/ThirdParty/Intel/ISPC/ispc-1.24.0/tests/lit-tests/2517.ispc
2025-05-18 13:04:45 +08:00

40 lines
776 B
Plaintext

// RUN: %{ispc} --target=host --nowrap --nostdlib --emit-llvm-text %s -o - | FileCheck %s
enum E {
E1 = 1,
E2 = 2,
E3 = 4,
};
static const uniform unsigned int e = E1 | E3;
// CHECK-LABEL: @foo
// CHECK-NEXT: allocas:
// CHECK-NEXT: ret i32 5
uniform int foo() {
return e;
}
// CHECK-LABEL: @bar
// CHECK-NEXT: allocas:
// CHECK-NEXT: ret i32 3
uniform int bar() {
static const uniform unsigned int x = E1 | 2;
return x;
}
// CHECK-LABEL: @func
// CHECK-NEXT: allocas:
// CHECK-NEXT: ret i32 6
uniform int func() {
static const uniform unsigned int x = 4 | E2;
return x;
}
// CHECK-LABEL: @boo
// CHECK-NEXT: allocas:
// CHECK-NEXT: ret i32 7
uniform int boo() {
static const uniform unsigned int x = ((E)4 ^ E1) ^ E2;
return x;
}