1## Check obj2yaml reports a proper error when unable to resolve 2## a sh_link reference in a regular section. 3## (We had a bug: the error was silently ignored). 4 5# RUN: yaml2obj --docnum=1 %s -o %t1.o 6# RUN: not obj2yaml %t1.o 2>&1 | FileCheck %s -DFILE=%t1.o --check-prefix=ERR1 7 8## ERR1: Error reading file: [[FILE]]: unable to resolve sh_link reference in section '.test': invalid section index: 100 9 10--- !ELF 11FileHeader: 12 Class: ELFCLASS64 13 Data: ELFDATA2LSB 14 Type: ET_REL 15Sections: 16 - Name: .test 17 Type: SHT_PROGBITS 18 Link: 100 19 20## Check obj2yaml produce the correct output when a sh_link 21## reference in a regular section can be resolved. 22 23# RUN: yaml2obj --docnum=2 %s -o %t2.o 24# RUN: obj2yaml %t2.o 25# RUN: llvm-readobj -S %t2.o | FileCheck %s --check-prefix=OK 26 27# OK: Name: .test 28# OK: Link: 29# OK-SAME: 1 30 31--- !ELF 32FileHeader: 33 Class: ELFCLASS64 34 Data: ELFDATA2LSB 35 Type: ET_REL 36Sections: 37 - Name: .test 38 Type: SHT_PROGBITS 39 Link: 1 40 41## The same as above, but using a section name instead of the numeric value. 42 43# RUN: yaml2obj --docnum=3 %s -o %t3.o 44# RUN: obj2yaml %t3.o 45# RUN: llvm-readobj -S %t3.o | FileCheck %s --check-prefix=OK 46 47--- !ELF 48FileHeader: 49 Class: ELFCLASS64 50 Data: ELFDATA2LSB 51 Type: ET_REL 52Sections: 53 - Name: .test 54 Type: SHT_PROGBITS 55 Link: .test 56