mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-11-03 14:08:57 +00:00
1ef70ff39b
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@224257 91177308-0d34-0410-b5e6-96231b3b80d8 |
||
---|---|---|
.. | ||
access-non-generic.ll | ||
add-128bit.ll | ||
addrspacecast-gvar.ll | ||
addrspacecast.ll | ||
aggr-param.ll | ||
annotations.ll | ||
arg-lowering.ll | ||
arithmetic-fp-sm20.ll | ||
arithmetic-int.ll | ||
atomics.ll | ||
bfe.ll | ||
bug17709.ll | ||
bug21465.ll | ||
call-with-alloca-buffer.ll | ||
callchain.ll | ||
calling-conv.ll | ||
compare-int.ll | ||
constant-vectors.ll | ||
convert-fp.ll | ||
convert-int-sm20.ll | ||
ctlz.ll | ||
ctpop.ll | ||
cttz.ll | ||
div-ri.ll | ||
envreg.ll | ||
fast-math.ll | ||
fma-disable.ll | ||
fma.ll | ||
fp16.ll | ||
fp-contract.ll | ||
fp-literals.ll | ||
generic-to-nvvm.ll | ||
global-ordering.ll | ||
gvar-init.ll | ||
half.ll | ||
i1-global.ll | ||
i1-int-to-fp.ll | ||
i1-param.ll | ||
i8-param.ll | ||
imad.ll | ||
implicit-def.ll | ||
inline-asm.ll | ||
intrin-nocapture.ll | ||
intrinsic-old.ll | ||
intrinsics.ll | ||
isspacep.ll | ||
ld-addrspace.ll | ||
ld-generic.ll | ||
ldparam-v4.ll | ||
ldu-i8.ll | ||
ldu-ldg.ll | ||
ldu-reg-plus-offset.ll | ||
lit.local.cfg | ||
load-sext-i1.ll | ||
local-stack-frame.ll | ||
machine-sink.ll | ||
managed.ll | ||
misaligned-vector-ldst.ll | ||
module-inline-asm.ll | ||
mulwide.ll | ||
noduplicate-syncthreads.ll | ||
nvvm-reflect.ll | ||
param-align.ll | ||
pr13291-i1-store.ll | ||
pr16278.ll | ||
pr17529.ll | ||
ptx-version-30.ll | ||
ptx-version-31.ll | ||
refl1.ll | ||
rotate.ll | ||
rsqrt.ll | ||
sched1.ll | ||
sched2.ll | ||
sext-in-reg.ll | ||
sext-params.ll | ||
shift-parts.ll | ||
simple-call.ll | ||
sm-version-20.ll | ||
sm-version-21.ll | ||
sm-version-30.ll | ||
sm-version-35.ll | ||
st-addrspace.ll | ||
st-generic.ll | ||
surf-read-cuda.ll | ||
surf-read.ll | ||
surf-write-cuda.ll | ||
surf-write.ll | ||
symbol-naming.ll | ||
tex-read-cuda.ll | ||
tex-read.ll | ||
texsurf-queries.ll | ||
tuple-literal.ll | ||
vec8.ll | ||
vec-param-load.ll | ||
vector-args.ll | ||
vector-call.ll | ||
vector-compare.ll | ||
vector-loads.ll | ||
vector-return.ll | ||
vector-select.ll | ||
vector-stores.ll | ||
weak-global.ll | ||
weak-linkage.ll |