14 This document describes extensions to tools and formats LLVM seeks compatibility
17 Machine-specific Assembly Syntax
18 ================================
26 The following additional relocation type is supported:
28 **@IMGREL** (AT&T syntax only) generates an image-relative relocation that
29 corresponds to the COFF relocation types ``IMAGE_REL_I386_DIR32NB`` (32-bit) or
30 ``IMAGE_REL_AMD64_ADDR32NB`` (64-bit).
36 mov foo@IMGREL(%ebx, %ecx, 4), %eax
40 .long (fun@imgrel + 0x3F)
41 .long $unwind$fun@imgrel
44 ``.linkonce`` Directive
45 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
49 ``.linkonce [ comdat type [ section identifier ] ]``
51 Supported COMDAT types:
54 Discards duplicate sections with the same COMDAT symbol. This is the default
55 if no type is specified.
58 If the symbol is defined multiple times, the linker issues an error.
61 Duplicates are discarded, but the linker issues an error if any have
65 Duplicates are discarded, but the linker issues an error if any duplicates
66 do not have exactly the same content.
69 Links the section if a certain other COMDAT section is linked. This other
70 section is indicated by its section identifier following the comdat type.
71 The following restrictions apply to the associated section:
73 1. It must be the name of a section already defined.
74 2. It must differ from the current section.
75 3. It must be a COMDAT section.
76 4. It cannot be another associative COMDAT section.
79 Links the largest section from among the duplicates.
82 Links the newest section from among the duplicates.
92 .linkonce associative .text$foo