1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 03:53:04 +02:00
llvm-mirror/test/MC/COFF/temporary-alias.s
Peter Collingbourne fa04d73f02 MC: Simplify handling of temporary symbols in COFF writer.
The COFF object writer was previously adding unnecessary symbols to its
temporary data structures and cleaning them up later. This made the code
harder to understand and caused a bug (aliases classed as temporary symbols
would cause an assertion failure). A much simpler way of handling such
symbols is to ask the layout for their section-relative position when needed.

Tested with a bootstrap on Windows and by building Chrome.

Differential Revision: http://reviews.llvm.org/D14975

llvm-svn: 254183
2015-11-26 23:29:27 +00:00

22 lines
439 B
ArmAsm

// RUN: llvm-mc -triple=i686-pc-windows -filetype=obj -o %t %s
// RUN: llvm-objdump -d -r %t | FileCheck %s
.globl _main
_main:
// CHECK: 00 00 00 00
// CHECK-NEXT: 00000002: IMAGE_REL_I386_DIR32 .rdata
movb L_alias1(%eax), %al
// CHECK: 01 00 00 00
// CHECK-NEXT: 00000008: IMAGE_REL_I386_DIR32 .rdata
movb L_alias2(%eax), %al
retl
.section .rdata,"dr"
L_sym1:
.ascii "\001"
L_sym2:
.ascii "\002"
L_alias1 = L_sym1
L_alias2 = L_sym2