hanchenye-llvm-project/llvm/test/MC/MachO
Duncan P. N. Exon Smith be7ea19b58 IR: Make metadata typeless in assembly
Now that `Metadata` is typeless, reflect that in the assembly.  These
are the matching assembly changes for the metadata/value split in
r223802.

  - Only use the `metadata` type when referencing metadata from a call
    intrinsic -- i.e., only when it's used as a `Value`.

  - Stop pretending that `ValueAsMetadata` is wrapped in an `MDNode`
    when referencing it from call intrinsics.

So, assembly like this:

    define @foo(i32 %v) {
      call void @llvm.foo(metadata !{i32 %v}, metadata !0)
      call void @llvm.foo(metadata !{i32 7}, metadata !0)
      call void @llvm.foo(metadata !1, metadata !0)
      call void @llvm.foo(metadata !3, metadata !0)
      call void @llvm.foo(metadata !{metadata !3}, metadata !0)
      ret void, !bar !2
    }
    !0 = metadata !{metadata !2}
    !1 = metadata !{i32* @global}
    !2 = metadata !{metadata !3}
    !3 = metadata !{}

turns into this:

    define @foo(i32 %v) {
      call void @llvm.foo(metadata i32 %v, metadata !0)
      call void @llvm.foo(metadata i32 7, metadata !0)
      call void @llvm.foo(metadata i32* @global, metadata !0)
      call void @llvm.foo(metadata !3, metadata !0)
      call void @llvm.foo(metadata !{!3}, metadata !0)
      ret void, !bar !2
    }
    !0 = !{!2}
    !1 = !{i32* @global}
    !2 = !{!3}
    !3 = !{}

I wrote an upgrade script that handled almost all of the tests in llvm
and many of the tests in cfe (even handling many `CHECK` lines).  I've
attached it (or will attach it in a moment if you're speedy) to PR21532
to help everyone update their out-of-tree testcases.

This is part of PR21532.

llvm-svn: 224257
2014-12-15 19:07:53 +00:00
..
AArch64
ARM MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
absolute.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
absolutize.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
bad-darwin-x86_64-32-bit-abs-addr.s
bad-darwin-x86_64-diff-relocs.s
bad-darwin-x86_64-reloc-expr.s
bad-darwin-x86_64-reloc-expr1.s Fix a Mach-O assembler segfault for a subtraction expression with an undefined symbol. 2014-10-24 22:39:40 +00:00
bad-darwin-x86_64-reloc-expr2.s Fix a Mach-O assembler segfault for a subtraction expression with an undefined symbol. 2014-10-24 22:39:40 +00:00
bad-dollar.s
bad-indirect-symbols.s
bad-macro.s
bss.s
comm-1.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
darwin-complex-difference.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
darwin-x86_64-diff-reloc-assign-2.s Don't produce relocations for a difference in a section with no symbols. 2014-11-04 22:10:33 +00:00
darwin-x86_64-diff-reloc-assign.s
darwin-x86_64-diff-relocs.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
darwin-x86_64-nobase-relocs.s
darwin-x86_64-reloc-offsets.s
darwin-x86_64-reloc.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
data.s
debug_frame.s
diff-with-two-sections.s
direction_labels.s
eh-frame-reloc.s
eh_symbol.s
file.s Drop support for an old version of ld64 (from darwin 9). 2014-10-21 18:31:09 +00:00
gen-dwarf-cpp.s
gen-dwarf-macro-cpp.s
gen-dwarf-producer.s
gen-dwarf.s [dwarfdump] Dump full filenames as DW_AT_(decl|call)_file attribute values 2014-09-22 12:36:04 +00:00
i386-large-relocations.s
indirect-symbols.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
jcc.s
lcomm-attributes.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
linker-option-1.s
linker-option-2.s
linker-options.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
lit.local.cfg
loc.s
osx-version-min-load-command.s
pcrel-to-other-section.s
pr19185.s
previous.s
pushsection.s
relax-jumps.s
relax-recompute-align.s
reloc-diff.s
reloc-pcrel-offset.s
reloc-pcrel.s
reloc.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
section-align-1.s
section-align-2.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
section-attributes.s
section-flags.s
string-table.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
symbol-diff.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
symbol-flags.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
symbol-indirect.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
symbols-1.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
tbss.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
tdata.s
temp-labels.s
thread_init_func.s
tls.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
tlv-bss.ll
tlv-reloc.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
tlv.s
values.s
variable-errors.s
variable-exprs.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
weakdef.s
x86-data-in-code.ll
x86_32-optimal_nop.s
x86_32-scattered-reloc-fallback.s
x86_32-sections.s
x86_32-symbols.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
x86_64-reloc-arithmetic.s
x86_64-sections.s
x86_64-symbols.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
zerofill-1.s
zerofill-2.s
zerofill-3.s MachObjectWriter: optimize the string table for common suffices 2014-10-06 17:05:19 +00:00
zerofill-4.s
zerofill-5.s
zerofill-sect-align.s