1*74989affSNico Weber // Check that sanitizer prints the faulting instruction bytes on 2*74989affSNico Weber // dump_instruction_bytes=1 3*74989affSNico Weber 4*74989affSNico Weber // RUN: %clangxx %s -o %t 5*74989affSNico Weber // RUN: %env_tool_opts=dump_instruction_bytes=1 not %run %t 2>&1 | FileCheck %s --check-prefix=CHECK-DUMP 6*74989affSNico Weber // RUN: not %run %t 2>&1 | FileCheck %s --check-prefix=CHECK-NODUMP 7*74989affSNico Weber 8*74989affSNico Weber // REQUIRES: x86-target-arch 9*74989affSNico Weber main()10*74989affSNico Weberint main() { 11*74989affSNico Weber #if defined(__x86_64__) 12*74989affSNico Weber asm("movq $0, %rax"); 13*74989affSNico Weber asm("movl $0xcafebabe, 0x0(%rax)"); 14*74989affSNico Weber #elif defined(i386) 15*74989affSNico Weber asm("movl $0, %eax"); 16*74989affSNico Weber asm("movl $0xcafebabe, 0x0(%eax)"); 17*74989affSNico Weber #endif 18*74989affSNico Weber // CHECK-DUMP: First 16 instruction bytes at pc: c7 00 be ba fe ca 19*74989affSNico Weber // CHECK-NODUMP-NOT: First 16 instruction bytes 20*74989affSNico Weber return 0; 21*74989affSNico Weber } 22