1# llvm-symbolizer infers the number base from the form of the address. 2RUN: llvm-symbolizer -e %p/Inputs/addr.exe -a 0x1234 | FileCheck %s 3RUN: llvm-symbolizer -e %p/Inputs/addr.exe -a 0X1234 | FileCheck %s 4RUN: llvm-symbolizer -e %p/Inputs/addr.exe -a 4660 | FileCheck %s 5RUN: llvm-symbolizer -e %p/Inputs/addr.exe -a 011064 | FileCheck %s 6RUN: llvm-symbolizer -e %p/Inputs/addr.exe -a 0b1001000110100 | FileCheck %s 7RUN: llvm-symbolizer -e %p/Inputs/addr.exe -a 0B1001000110100 | FileCheck %s 8RUN: llvm-symbolizer -e %p/Inputs/addr.exe -a 0o11064 | FileCheck %s 9 10# llvm-symbolizer / StringRef::getAsInteger only accepts the 0o prefix in lowercase. 11RUN: llvm-symbolizer -e %p/Inputs/addr.exe -a 0O1234 | FileCheck %s --check-prefix=INVALID 12 13# llvm-addr2line always requires hexadecimal, but accepts an optional 0x prefix. 14RUN: llvm-addr2line -e %p/Inputs/addr.exe -a 0x1234 | FileCheck %s 15RUN: llvm-addr2line -e %p/Inputs/addr.exe -a 0X1234 | FileCheck %s 16RUN: llvm-addr2line -e %p/Inputs/addr.exe -a 1234 | FileCheck %s 17RUN: llvm-addr2line -e %p/Inputs/addr.exe -a 01234 | FileCheck %s 18RUN: llvm-addr2line -e %p/Inputs/addr.exe -a 0b1010 | FileCheck %s --check-prefix=HEXADECIMAL-NOT-BINARY 19RUN: llvm-addr2line -e %p/Inputs/addr.exe -a 0B1010 | FileCheck %s --check-prefix=HEXADECIMAL-NOT-BINARY 20RUN: llvm-addr2line -e %p/Inputs/addr.exe -a 0o1234 | FileCheck %s --check-prefix=INVALID-NOT-OCTAL 21RUN: llvm-addr2line -e %p/Inputs/addr.exe -a 0O1234 | FileCheck %s --check-prefix=INVALID-NOT-OCTAL 22 23CHECK: 0x1234 24CHECK-NEXT: ?? 25 26INVALID: ?? 27INVALID-NEXT: ??:0 28 29HEXADECIMAL-NOT-BINARY: 0xb1010 30HEXADECIMAL-NOT-BINARY: ?? 31 32INVALID-NOT-OCTAL: ??:0 33