blob: 7b3149871f8fc2c467addd5135d12f1649ba2455 [file] [log] [blame]
// RUN: %clang -x cl --save-temps -c -### %s 2>&1 | FileCheck %s
// RUN: %clang -x cl -ccc-print-phases -c %s 2>&1 | FileCheck %s -check-prefix=CHECK-PHASES
// CHECK: "-o" "[[CLI_NAME:.+]].cli" "-x" "cl"
// CHECK-NEXT: "-o" "[[CLI_NAME]].bc" "-x" "cl-cpp-output"{{.*}}"[[CLI_NAME:.+]].cli"
// CHECK-PHASES: 0: input, {{.*}}, cl
// CHECK-PHASES: 1: preprocessor, {0}, cl-cpp-output
// CHECK-PHASES: 2: compiler, {1}, ir
uint3 add(uint3 a, uint3 b) {
ulong x = a.x + (ulong)b.x;
ulong y = a.y + (ulong)b.y + (x >> 32);
uint z = a.z + b.z + (y >> 32);
return (uint3)(x, y, z);
}