| # REQUIRES: x86 |
| |
| # RUN: yaml2obj %s -o %t.o |
| # RUN: ld.lld %t.o -o /dev/null --entry 0 --fatal-warnings |
| |
| ## This is for https://bugs.llvm.org//show_bug.cgi?id=34852. GCC 8.0 or |
| ## earlier have a bug which creates non-absolute R_386_GOTPC relocations |
| ## in non-allocated sections. It is illegal, but we want to make sure that |
| ## lld skips them instead of reporting errors. |
| |
| --- !ELF |
| FileHeader: |
| Class: ELFCLASS32 |
| Data: ELFDATA2LSB |
| Type: ET_REL |
| Machine: EM_386 |
| Sections: |
| - Name: .debug_info |
| Type: SHT_PROGBITS |
| AddressAlign: 0x0000000000000001 |
| Content: 0000000000000000 |
| - Name: .rel.debug_info |
| Type: SHT_REL |
| Link: .symtab |
| AddressAlign: 0x0000000000000004 |
| Info: .debug_info |
| Relocations: |
| - Offset: 0x000000000000041F |
| Symbol: _GLOBAL_OFFSET_TABLE_ |
| Type: R_386_GOTPC |
| Symbols: |
| Global: |
| - Name: _GLOBAL_OFFSET_TABLE_ |