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