1*b1353588Szhijian# REQUIRES: system-aix 2*b1353588Szhijian## Test default "-X" option and environment variable "OBJECT_MODE" on AIX OS. 3*b1353588Szhijian 4*b1353588Szhijian# RUN: yaml2obj -DFLAG=0x1DF %s -o %t_xcoff32.o 5*b1353588Szhijian# RUN: yaml2obj -DFLAG=0x1F7 %s -o %t_xcoff64.o 6*b1353588Szhijian# RUN: rm -rf %t.a 7*b1353588Szhijian# RUN: unset OBJECT_MODE 8*b1353588Szhijian# RUN: env OBJECT_MODE=any llvm-ar -q -c %t.a %t_xcoff32.o %t_xcoff64.o 9*b1353588Szhijian 10*b1353588Szhijian## Test default "-X" option. 11*b1353588Szhijian# RUN: llvm-nm --format=just-symbols %t_xcoff32.o %t_xcoff64.o | \ 12*b1353588Szhijian# RUN: FileCheck -DFILE32=%t_xcoff32.o --check-prefixes=XCOFF32 %s --implicit-check-not={{.}} 13*b1353588Szhijian 14*b1353588Szhijian## Test environment variable "OBJECT_MODE". 15*b1353588Szhijian# RUN: env OBJECT_MODE=32 llvm-nm --format=just-symbols %t_xcoff32.o %t_xcoff64.o | \ 16*b1353588Szhijian# RUN: FileCheck -DFILE32=%t_xcoff32.o --check-prefixes=XCOFF32 %s --implicit-check-not={{.}} 17*b1353588Szhijian# RUN: env OBJECT_MODE=64 llvm-nm --format=just-symbols %t_xcoff32.o %t_xcoff64.o | \ 18*b1353588Szhijian# RUN: FileCheck -DFILE64=%t_xcoff64.o --check-prefixes=XCOFF64 %s --implicit-check-not={{.}} 19*b1353588Szhijian# RUN: env OBJECT_MODE=32_64 llvm-nm --format=just-symbols %t_xcoff32.o %t_xcoff64.o | \ 20*b1353588Szhijian# RUN: FileCheck --check-prefixes=XCOFF32,XCOFF64 %s -DFILE32=%t_xcoff32.o -DFILE64=%t_xcoff64.o --match-full-lines 21*b1353588Szhijian# RUN: env OBJECT_MODE=any llvm-nm --format=just-symbols %t_xcoff32.o %t_xcoff64.o | \ 22*b1353588Szhijian# RUN: FileCheck --check-prefixes=XCOFF32,XCOFF64 %s -DFILE32=%t_xcoff32.o -DFILE64=%t_xcoff64.o --match-full-lines 23*b1353588Szhijian# RUN: env OBJECT_MODE=32 llvm-nm --format=just-symbols %t.a | \ 24*b1353588Szhijian# RUN: FileCheck -DFILE=%basename_t --check-prefixes=ARC32 %s --implicit-check-not={{.}} 25*b1353588Szhijian# RUN: env OBJECT_MODE=64 llvm-nm --format=just-symbols %t.a | \ 26*b1353588Szhijian# RUN: FileCheck -DFILE=%basename_t --check-prefixes=ARC64 %s --implicit-check-not={{.}} 27*b1353588Szhijian 28*b1353588Szhijian## Test -X option overrides environment variable "OBJECT_MODE". 29*b1353588Szhijian# RUN: env OBJECT_MODE=any llvm-nm -X32 --format=just-symbols %t_xcoff32.o %t_xcoff64.o | \ 30*b1353588Szhijian# RUN: FileCheck -DFILE32=%t_xcoff32.o --check-prefixes=XCOFF32 %s --implicit-check-not={{.}} 31*b1353588Szhijian# RUN: env OBJECT_MODE=any llvm-nm -X64 --format=just-symbols %t_xcoff32.o %t_xcoff64.o | \ 32*b1353588Szhijian# RUN: FileCheck -DFILE64=%t_xcoff64.o --check-prefixes=XCOFF64 %s --implicit-check-not={{.}} 33*b1353588Szhijian# RUN: env OBJECT_MODE=any llvm-nm -X32_64 --format=just-symbols %t_xcoff32.o %t_xcoff64.o | \ 34*b1353588Szhijian# RUN: FileCheck --check-prefixes=XCOFF32,XCOFF64 %s -DFILE32=%t_xcoff32.o -DFILE64=%t_xcoff64.o --match-full-lines 35*b1353588Szhijian# RUN: env OBJECT_MODE=32 llvm-nm -Xany --format=just-symbols %t_xcoff32.o %t_xcoff64.o | \ 36*b1353588Szhijian# RUN: FileCheck --check-prefixes=XCOFF32,XCOFF64 %s -DFILE32=%t_xcoff32.o -DFILE64=%t_xcoff64.o --match-full-lines 37*b1353588Szhijian 38*b1353588Szhijian# XCOFF32: [[FILE32]]: 39*b1353588Szhijian# XCOFF32-NEXT: var_0x1DF 40*b1353588Szhijian# XCOFF64: [[FILE64]]: 41*b1353588Szhijian# XCOFF64-NEXT: var_0x1F7 42*b1353588Szhijian 43*b1353588Szhijian# ARC32: [[FILE]].tmp_xcoff32.o: 44*b1353588Szhijian# ARC32-NEXT: var_0x1DF 45*b1353588Szhijian# ARC64: [[FILE]].tmp_xcoff64.o: 46*b1353588Szhijian# ARC64-NEXT: var_0x1F7 47*b1353588Szhijian 48*b1353588Szhijian--- !XCOFF 49*b1353588SzhijianFileHeader: 50*b1353588Szhijian MagicNumber: [[FLAG]] 51*b1353588SzhijianSymbols: 52*b1353588Szhijian - Name: var_[[FLAG]] 53