diff options
Diffstat (limited to 'test/asan/TestCases/dump_instruction_bytes.cc')
| -rw-r--r-- | test/asan/TestCases/dump_instruction_bytes.cc | 20 | 
1 files changed, 20 insertions, 0 deletions
| diff --git a/test/asan/TestCases/dump_instruction_bytes.cc b/test/asan/TestCases/dump_instruction_bytes.cc new file mode 100644 index 000000000000..981e3c31327f --- /dev/null +++ b/test/asan/TestCases/dump_instruction_bytes.cc @@ -0,0 +1,20 @@ +// Check that ASan prints the faulting instruction bytes on +// dump_instruction_bytes=1 +// RUN: %clangxx_asan  %s -o %t +// RUN: env ASAN_OPTIONS=dump_instruction_bytes=1 not %run %t 2>&1 | FileCheck %s --check-prefix=CHECK-DUMP +// RUN: not %run %t 2>&1 | FileCheck %s --check-prefix=CHECK-NODUMP +// +// REQUIRES: x86_64-supported-target,i386-supported-target + +int main() { +#if defined(__x86_64__) +  asm("movq $0, %rax"); +  asm("movl $0xcafebabe, 0x0(%rax)"); +#elif defined(i386) +  asm("movl $0, %eax"); +  asm("movl $0xcafebabe, 0x0(%eax)"); +#endif +  // CHECK-DUMP: First 16 instruction bytes at pc: c7 00 be ba fe ca +  // CHECK-NODUMP-NOT: First 16 instruction bytes +  return 0; +} | 
