// RUN: %clangxx_asan -O0 -x c %s -o %t && not %run %t 2>&1 | FileCheck %s
// RUN: %clangxx_asan -O1 -x c %s -o %t && not %run %t 2>&1 | FileCheck %s
// RUN: %clangxx_asan -O2 -x c %s -o %t && not %run %t 2>&1 | FileCheck %s
// RUN: %clangxx_asan -O3 -x c %s -o %t && not %run %t 2>&1 | FileCheck %s

// REQUIRES: arm-target-arch
// XFAIL: armv7l-unknown-linux-gnueabihf

#include <stdlib.h>

__attribute__((noinline))
int boom() {
  volatile int three = 3;
  char * volatile s = (char *)malloc(three);
// CHECK: #1 0x{{.*}} in boom {{.*}}clang_gcc_abi.cc:[[@LINE-1]]
  return s[three]; //BOOM
}

__attribute__((naked, noinline)) void gcc_abi() {
// CHECK: #2 0x{{.*}} in gcc_abi {{.*}}clang_gcc_abi.cc:[[@LINE+1]]
  asm volatile("str fp, [sp, #-8]!\n\t"
               "str lr, [sp, #4]\n\t"
               "add fp, sp, #4\n\t"
               "bl  boom\n\t"
               "sub sp, fp, #4\n\t"
               "ldr fp, [sp]\n\t"
               "add sp, sp, #4\n\t"
               "ldr pc, [sp], #4\n\t"
              );
}

__attribute__((naked, noinline)) void clang_abi() {
// CHECK: #3 0x{{.*}} in clang_abi {{.*}}clang_gcc_abi.cc:[[@LINE+1]]
  asm volatile("push {r11, lr}\n\t"
               "mov r11, sp\n\t"
               "bl  gcc_abi\n\t"
               "add r0, r0, #1\n\t"
               "pop {r11, pc}\n\t"
              );
}

int main() {
  clang_abi();
// CHECK: #4 0x{{.*}} in main {{.*}}clang_gcc_abi.cc:[[@LINE-1]]
}
