1 // RUN: pp-trace -callbacks '*,-FileChanged,-MacroDefined' %s -- -x cl | FileCheck --strict-whitespace %s 2 3 #pragma OPENCL EXTENSION all : disable 4 #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : disable 5 #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable 6 7 // CHECK: --- 8 // CHECK-NEXT: - Callback: PragmaDirective 9 // CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-pragma-opencl.cpp:3:1" 10 // CHECK-NEXT: Introducer: PIK_HashPragma 11 // CHECK-NEXT: - Callback: PragmaOpenCLExtension 12 // CHECK-NEXT: NameLoc: "{{.*}}{{[/\\]}}pp-trace-pragma-opencl.cpp:3:26" 13 // CHECK-NEXT: Name: all 14 // CHECK-NEXT: StateLoc: "{{.*}}{{[/\\]}}pp-trace-pragma-opencl.cpp:3:32" 15 // CHECK-NEXT: State: 0 16 // CHECK-NEXT: - Callback: PragmaDirective 17 // CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-pragma-opencl.cpp:4:1" 18 // CHECK-NEXT: Introducer: PIK_HashPragma 19 // CHECK-NEXT: - Callback: PragmaOpenCLExtension 20 // CHECK-NEXT: NameLoc: "{{.*}}{{[/\\]}}pp-trace-pragma-opencl.cpp:4:26" 21 // CHECK-NEXT: Name: cl_khr_int64_base_atomics 22 // CHECK-NEXT: StateLoc: "{{.*}}{{[/\\]}}pp-trace-pragma-opencl.cpp:4:54" 23 // CHECK-NEXT: State: 0 24 // CHECK-NEXT: - Callback: PragmaDirective 25 // CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-pragma-opencl.cpp:5:1" 26 // CHECK-NEXT: Introducer: PIK_HashPragma 27 // CHECK-NEXT: - Callback: PragmaOpenCLExtension 28 // CHECK-NEXT: NameLoc: "{{.*}}{{[/\\]}}pp-trace-pragma-opencl.cpp:5:26" 29 // CHECK-NEXT: Name: cl_khr_int64_base_atomics 30 // CHECK-NEXT: StateLoc: "{{.*}}{{[/\\]}}pp-trace-pragma-opencl.cpp:5:54" 31 // CHECK-NEXT: State: 1 32 // CHECK-NEXT: - Callback: EndOfMainFile 33 // CHECK-NEXT: ... 34