Tree @release_50 (Download .tar.gz)
- ..
- GlobalISel
- 32-bit-local-address-space.ll
- add-debug.ll
- add.i16.ll
- add.ll
- add.v2i16.ll
- add_i128.ll
- add_i64.ll
- addrspacecast-captured.ll
- addrspacecast-constantexpr.ll
- addrspacecast.ll
- alignbit-pat.ll
- always-uniform.ll
- amdgcn.bitcast.ll
- amdgcn.private-memory.ll
- amdgpu-alias-analysis.ll
- amdgpu-codegenprepare-fdiv.ll
- amdgpu-codegenprepare-i16-to-i32.ll
- amdgpu-shader-calling-convention.ll
- amdgpu.private-memory.ll
- amdgpu.work-item-intrinsics.deprecated.ll
- and-gcn.ll
- and.ll
- annotate-kernel-features-hsa-call.ll
- annotate-kernel-features-hsa.ll
- annotate-kernel-features.ll
- anonymous-gv.ll
- any_extend_vector_inreg.ll
- anyext.ll
- array-ptr-calc-i32.ll
- array-ptr-calc-i64.ll
- ashr.v2i16.ll
- atomic_cmp_swap_local.ll
- atomic_load_add.ll
- atomic_load_sub.ll
- attr-amdgpu-flat-work-group-size.ll
- attr-amdgpu-num-sgpr.ll
- attr-amdgpu-num-vgpr.ll
- attr-amdgpu-waves-per-eu.ll
- attr-unparseable.ll
- barrier-elimination.ll
- basic-branch.ll
- basic-loop.ll
- bfe-combine.ll
- bfe-patterns.ll
- bfe_uint.ll
- bfi_int.ll
- bfm.ll
- big_alu.ll
- bitcast-vector-extract.ll
- bitreverse-inline-immediates.ll
- bitreverse.ll
- br_cc.f16.ll
- branch-condition-and.ll
- branch-relax-spill.ll
- branch-relaxation.ll
- branch-uniformity.ll
- bswap.ll
- bug-vopc-commute.ll
- build_vector.ll
- call.ll
- call_fs.ll
- callee-frame-setup.ll
- calling-conventions.ll
- captured-frame-index.ll
- cayman-loop-bug.ll
- cf-loop-on-constant.ll
- cf-stack-bug.ll
- cf_end.ll
- cgp-addressing-modes-flat.ll
- cgp-addressing-modes.ll
- cgp-bitfield-extract.ll
- clamp-modifier.ll
- clamp-omod-special-case.mir
- clamp.ll
- cndmask-no-def-vcc.ll
- coalescer-subrange-crash.ll
- coalescer-subreg-join.mir
- coalescer_distribute.ll
- coalescer_remat.ll
- code-object-metadata-deduce-ro-arg.ll
- code-object-metadata-from-llvm-ir-full.ll
- code-object-metadata-images.ll
- code-object-metadata-invalid-ocl-version-1.ll
- code-object-metadata-invalid-ocl-version-2.ll
- code-object-metadata-invalid-ocl-version-3.ll
- code-object-metadata-kernel-code-props.ll
- code-object-metadata-kernel-debug-props.ll
- codegen-prepare-addrmode-sext.ll
- combine-and-sext-bool.ll
- combine-cond-add-sub.ll
- combine_vloads.ll
- commute-compares.ll
- commute-shifts.ll
- commute_modifiers.ll
- complex-folding.ll
- concat_vectors.ll
- constant-fold-imm-immreg.mir
- constant-fold-mi-operands.ll
- control-flow-fastregalloc.ll
- convergent-inlineasm.ll
- copy-illegal-type.ll
- copy-to-reg.ll
- ctlz.ll
- ctlz_zero_undef.ll
- ctpop.ll
- ctpop64.ll
- cttz_zero_undef.ll
- cube.ll
- cvt_f32_ubyte.ll
- cvt_flr_i32_f32.ll
- cvt_rpi_i32_f32.ll
- dagcombine-reassociate-bug.ll
- dagcombiner-bug-illegal-vec4-int-to-fp.ll
- debug.ll
- debugger-emit-prologue.ll
- debugger-insert-nops.ll
- debugger-reserve-regs.ll
- default-fp-mode.ll
- detect-dead-lanes.mir
- disconnected-predset-break-bug.ll
- drop-mem-operand-move-smrd.ll
- ds-combine-large-stride.ll
- ds-negative-offset-addressing-mode-loop.ll
- ds-sub-offset.ll
- ds_read2.ll
- ds_read2_offset_order.ll
- ds_read2_superreg.ll
- ds_read2st64.ll
- ds_write2.ll
- ds_write2st64.ll
- dynamic_stackalloc.ll
- early-if-convert-cost.ll
- early-if-convert.ll
- early-inline-alias.ll
- early-inline.ll
- elf.ll
- elf.r600.ll
- else.ll
- empty-function.ll
- enable-no-signed-zeros-fp-math.ll
- endcf-loop-header.ll
- env-amdgiz.ll
- env-amdgizcl.ll
- exceed-max-sgprs.ll
- extend-bit-ops-i16.ll
- extload-align.ll
- extload-private.ll
- extload.ll
- extract-vector-elt-build-vector-combine.ll
- extract_vector_elt-f16.ll
- extract_vector_elt-f64.ll
- extract_vector_elt-i16.ll
- extract_vector_elt-i64.ll
- extract_vector_elt-i8.ll
- extractelt-to-trunc.ll
- fabs.f16.ll
- fabs.f64.ll
- fabs.ll
- fadd-fma-fmul-combine.ll
- fadd.f16.ll
- fadd.ll
- fadd64.ll
- fcanonicalize-elimination.ll
- fcanonicalize.f16.ll
- fcanonicalize.ll
- fceil.ll
- fceil64.ll
- fcmp-cnd.ll
- fcmp-cnde-int-args.ll
- fcmp.f16.ll
- fcmp.ll
- fcmp64.ll
- fconst64.ll
- fcopysign.f16.ll
- fcopysign.f32.ll
- fcopysign.f64.ll
- fdiv.f16.ll
- fdiv.f64.ll
- fdiv.ll
- fence-amdgiz.ll
- fetch-limits.r600.ll
- fetch-limits.r700+.ll
- ffloor.f64.ll
- ffloor.ll
- fix-vgpr-copies.mir
- flat-address-space.ll
- flat-for-global-subtarget-feature.ll
- flat-scratch-reg.ll
- flat_atomics.ll
- flat_atomics_i64.ll
- floor.ll
- fma-combine.ll
- fma.f64.ll
- fma.ll
- fmad.ll
- fmax.ll
- fmax3.f64.ll
- fmax3.ll
- fmax_legacy.f64.ll
- fmax_legacy.ll
- fmaxnum.f64.ll
- fmaxnum.ll
- fmed3.ll
- fmin.ll
- fmin3.ll
- fmin_fmax_legacy.amdgcn.ll
- fmin_legacy.f64.ll
- fmin_legacy.ll
- fminnum.f64.ll
- fminnum.ll
- fmul-2-combine-multi-use.ll
- fmul.f16.ll
- fmul.ll
- fmul64.ll
- fmuladd.f16.ll
- fmuladd.f32.ll
- fmuladd.f64.ll
- fmuladd.v2f16.ll
- fnearbyint.ll
- fneg-combines.ll
- fneg-fabs.f16.ll
- fneg-fabs.f64.ll
- fneg-fabs.ll
- fneg.f16.ll
- fneg.f64.ll
- fneg.ll
- fold-cndmask.mir
- fold-fmul-to-neg-abs.ll
- fold-immediate-output-mods.mir
- fold-operands-order.mir
- fp-classify.ll
- fp16_to_fp32.ll
- fp16_to_fp64.ll
- fp32_to_fp16.ll
- fp_to_sint.f64.ll
- fp_to_sint.ll
- fp_to_uint.f64.ll
- fp_to_uint.ll
- fpext.f16.ll
- fpext.ll
- fptosi.f16.ll
- fptoui.f16.ll
- fptrunc.f16.ll
- fptrunc.ll
- fract.f64.ll
- fract.ll
- frame-index-amdgiz.ll
- frame-index-elimination.ll
- frem.ll
- fsqrt.f64.ll
- fsqrt.ll
- fsub.f16.ll
- fsub.ll
- fsub64.ll
- ftrunc.f64.ll
- ftrunc.ll
- function-args.ll
- function-returns.ll
- gep-address-space.ll
- global-constant.ll
- global-directive.ll
- global-extload-i16.ll
- global-smrd-unknown.ll
- global-variable-relocs.ll
- global_atomics.ll
- global_atomics_i64.ll
- global_smrd.ll
- global_smrd_cfg.ll
- gv-const-addrspace.ll
- gv-offset-folding.ll
- half.ll
- hazard.mir
- hoist-cond.ll
- hsa-default-device.ll
- hsa-fp-mode.ll
- hsa-func-align.ll
- hsa-func.ll
- hsa-globals.ll
- hsa-group-segment.ll
- hsa-note-no-func.ll
- hsa.ll
- i1-copy-implicit-def.ll
- i1-copy-phi.ll
- i8-to-double-to-float.ll
- icmp-select-sete-reverse-args.ll
- icmp.i16.ll
- icmp64.ll
- illegal-sgpr-to-vgpr-copy.ll
- image-attributes.ll
- image-resource-id.ll
- imm.ll
- imm16.ll
- immv216.ll
- indirect-addressing-si-noopt.ll
- indirect-addressing-si.ll
- indirect-private-64.ll
- infer-addrpace-pipeline.ll
- infinite-loop-evergreen.ll
- infinite-loop.ll
- inline-asm.ll
- inline-calls.ll
- inline-constraints.ll
- inlineasm-16.ll
- inlineasm-illegal-type.ll
- inlineasm-packed.ll
- input-mods.ll
- insert-skips-kill-uncond.mir
- insert-waits-callee.mir
- insert-waits-exp.mir
- insert_subreg.ll
- insert_vector_elt.ll
- insert_vector_elt.v2i16.ll
- inserted-wait-states.mir
- internalize.ll
- invalid-addrspacecast.ll
- invariant-load-no-alias-store.ll
- invert-br-undef-vcc.mir
- jump-address.ll
- kcache-fold.ll
- kernarg-stack-alignment.ll
- kernel-args.ll
- large-alloca-compute.ll
- large-alloca-graphics.ll
- large-constant-initializer.ll
- large-work-group-promote-alloca.ll
- lds-alignment.ll
- lds-initializer.ll
- lds-m0-init-in-loop.ll
- lds-oqap-crash.ll
- lds-output-queue.ll
- lds-size.ll
- lds-zero-initializer.ll
- legalizedag-bug-expand-setcc.ll
- limit-coalesce.mir
- lit.local.cfg
- literals.ll
- liveness.mir
- llvm.amdgcn.alignb.ll
- llvm.amdgcn.atomic.dec.ll
- llvm.amdgcn.atomic.inc.ll
- llvm.amdgcn.buffer.atomic.ll
- llvm.amdgcn.buffer.load.format.ll
- llvm.amdgcn.buffer.load.ll
- llvm.amdgcn.buffer.store.format.ll
- llvm.amdgcn.buffer.store.ll
- llvm.amdgcn.buffer.wbinvl1.ll
- llvm.amdgcn.buffer.wbinvl1.sc.ll
- llvm.amdgcn.buffer.wbinvl1.vol.ll
- llvm.amdgcn.class.f16.ll
- llvm.amdgcn.class.ll
- llvm.amdgcn.cos.f16.ll
- llvm.amdgcn.cos.ll
- llvm.amdgcn.cubeid.ll
- llvm.amdgcn.cubema.ll
- llvm.amdgcn.cubesc.ll
- llvm.amdgcn.cubetc.ll
- llvm.amdgcn.cvt.pkrtz.ll
- llvm.amdgcn.dispatch.id.ll
- llvm.amdgcn.dispatch.ptr.ll
- llvm.amdgcn.div.fixup.f16.ll
- llvm.amdgcn.div.fixup.ll
- llvm.amdgcn.div.fmas.ll
- llvm.amdgcn.div.scale.ll
- llvm.amdgcn.ds.bpermute.ll
- llvm.amdgcn.ds.permute.ll
- llvm.amdgcn.ds.swizzle.ll
- llvm.amdgcn.exp.compr.ll
- llvm.amdgcn.exp.ll
- llvm.amdgcn.fcmp.ll
- llvm.amdgcn.fdiv.fast.ll
- llvm.amdgcn.fmed3.f16.ll
- llvm.amdgcn.fmed3.ll
- llvm.amdgcn.fmul.legacy.ll
- llvm.amdgcn.fract.f16.ll
- llvm.amdgcn.fract.ll
- llvm.amdgcn.frexp.exp.f16.ll
- llvm.amdgcn.frexp.exp.ll
- llvm.amdgcn.frexp.mant.f16.ll
- llvm.amdgcn.frexp.mant.ll
- llvm.amdgcn.groupstaticsize.ll
- llvm.amdgcn.icmp.ll
- llvm.amdgcn.image.atomic.ll
- llvm.amdgcn.image.gather4.ll
- llvm.amdgcn.image.getlod.ll
- llvm.amdgcn.image.ll
- llvm.amdgcn.image.sample.ll
- llvm.amdgcn.image.sample.o.ll
- llvm.amdgcn.implicit.buffer.ptr.hsa.ll
- llvm.amdgcn.implicit.buffer.ptr.ll
- llvm.amdgcn.init.exec.ll
- llvm.amdgcn.interp.ll
- llvm.amdgcn.kernarg.segment.ptr.ll
- llvm.amdgcn.ldexp.f16.ll
- llvm.amdgcn.ldexp.ll
- llvm.amdgcn.lerp.ll
- llvm.amdgcn.log.clamp.ll
- llvm.amdgcn.mbcnt.ll
- llvm.amdgcn.mov.dpp.ll
- llvm.amdgcn.mqsad.pk.u16.u8.ll
- llvm.amdgcn.mqsad.u32.u8.ll
- llvm.amdgcn.msad.u8.ll
- llvm.amdgcn.ps.live.ll
- llvm.amdgcn.qsad.pk.u16.u8.ll
- llvm.amdgcn.queue.ptr.ll
- llvm.amdgcn.rcp.f16.ll
- llvm.amdgcn.rcp.legacy.ll
- llvm.amdgcn.rcp.ll
- llvm.amdgcn.readfirstlane.ll
- llvm.amdgcn.readlane.ll
- llvm.amdgcn.rsq.clamp.ll
- llvm.amdgcn.rsq.f16.ll
- llvm.amdgcn.rsq.legacy.ll
- llvm.amdgcn.rsq.ll
- llvm.amdgcn.s.barrier.ll
- llvm.amdgcn.s.dcache.inv.ll
- llvm.amdgcn.s.dcache.inv.vol.ll
- llvm.amdgcn.s.dcache.wb.ll
- llvm.amdgcn.s.dcache.wb.vol.ll
- llvm.amdgcn.s.decperflevel.ll
- llvm.amdgcn.s.getpc.ll
- llvm.amdgcn.s.getreg.ll
- llvm.amdgcn.s.incperflevel.ll
- llvm.amdgcn.s.memrealtime.ll
- llvm.amdgcn.s.memtime.ll
- llvm.amdgcn.s.sleep.ll
- llvm.amdgcn.s.waitcnt.ll
- llvm.amdgcn.sad.hi.u8.ll
- llvm.amdgcn.sad.u16.ll
- llvm.amdgcn.sad.u8.ll
- llvm.amdgcn.sbfe.ll
- llvm.amdgcn.sendmsg.ll
- llvm.amdgcn.sffbh.ll
- llvm.amdgcn.sin.f16.ll
- llvm.amdgcn.sin.ll
- llvm.amdgcn.tbuffer.load.ll
- llvm.amdgcn.tbuffer.store.ll
- llvm.amdgcn.trig.preop.ll
- llvm.amdgcn.ubfe.ll
- llvm.amdgcn.unreachable.ll
- llvm.amdgcn.wave.barrier.ll
- llvm.amdgcn.workgroup.id.ll
- llvm.amdgcn.workitem.id.ll
- llvm.AMDGPU.kill.ll
- llvm.amdgpu.kilp.ll
- llvm.ceil.f16.ll
- llvm.cos.f16.ll
- llvm.cos.ll
- llvm.dbg.value.ll
- llvm.exp2.f16.ll
- llvm.exp2.ll
- llvm.floor.f16.ll
- llvm.fma.f16.ll
- llvm.fmuladd.f16.ll
- llvm.log2.f16.ll
- llvm.log2.ll
- llvm.maxnum.f16.ll
- llvm.memcpy.ll
- llvm.minnum.f16.ll
- llvm.pow.ll
- llvm.r600.cube.ll
- llvm.r600.dot4.ll
- llvm.r600.group.barrier.ll
- llvm.r600.read.local.size.ll
- llvm.r600.recipsqrt.clamped.ll
- llvm.r600.recipsqrt.ieee.ll
- llvm.r600.tex.ll
- llvm.rint.f16.ll
- llvm.rint.f64.ll
- llvm.rint.ll
- llvm.round.f64.ll
- llvm.round.ll
- llvm.SI.load.dword.ll
- llvm.SI.tbuffer.store.ll
- llvm.sin.f16.ll
- llvm.sin.ll
- llvm.sqrt.f16.ll
- llvm.trunc.f16.ll
- load-constant-f64.ll
- load-constant-i1.ll
- load-constant-i16.ll
- load-constant-i32.ll
- load-constant-i64.ll
- load-constant-i8.ll
- load-global-f32.ll
- load-global-f64.ll
- load-global-i1.ll
- load-global-i16.ll
- load-global-i32.ll
- load-global-i64.ll
- load-global-i8.ll
- load-input-fold.ll
- load-local-f32.ll
- load-local-f64.ll
- load-local-i1.ll
- load-local-i16.ll
- load-local-i32.ll
- load-local-i64.ll
- load-local-i8.ll
- load-weird-sizes.ll
- local-64.ll
- local-atomics.ll
- local-atomics64.ll
- local-memory.amdgcn.ll
- local-memory.ll
- local-memory.r600.ll
- local-stack-slot-offset.ll
- loop-address.ll
- loop-idiom.ll
- loop_break.ll
- lower-mem-intrinsics.ll
- lower-range-metadata-intrinsic-call.ll
- lshl64-to-32.ll
- lshr.v2i16.ll
- macro-fusion-cluster-vcc-uses.mir
- mad-combine.ll
- mad24-get-global-id.ll
- mad_int24.ll
- mad_uint24.ll
- madak.ll
- madmk.ll
- max-literals.ll
- max.i16.ll
- max.ll
- max3.ll
- mem-builtins.ll
- merge-m0.mir
- merge-store-crash.ll
- merge-store-usedef.ll
- merge-stores.ll
- mesa_regression.ll
- min.ll
- min3.ll
- misched-killflags.mir
- missing-store.ll
- move-addr64-rsrc-dead-subreg-writes.ll
- move-to-valu-atomicrmw.ll
- move-to-valu-worklist.ll
- movreld-bug.ll
- movrels-bug.mir
- mubuf-offset-private.ll
- mubuf-shader-vgpr.ll
- mubuf.ll
- mul.ll
- mul_int24.ll
- mul_uint24-amdgcn.ll
- mul_uint24-r600.ll
- multi-divergent-exit-region.ll
- multilevel-break.ll
- nested-loop-conditions.ll
- no-hsa-graphics-shaders.ll
- no-initializer-constant-addrspace.ll
- no-shrink-extloads.ll
- nop-data.ll
- not-scalarize-volatile-load.ll
- nullptr.ll
- omod.ll
- opencl-image-metadata.ll
- operand-folding.ll
- operand-spacing.ll
- opt-sgpr-to-vgpr-copy.mir
- optimize-if-exec-masking.mir
- or.ll
- over-max-lds-size.ll
- pack.v2f16.ll
- pack.v2i16.ll
- packed-op-sel.ll
- packetizer.ll
- parallelandifcollapse.ll
- parallelorifcollapse.ll
- partial-sgpr-to-vgpr-spills.ll
- partially-dead-super-register-immediate.ll
- predicate-dp4.ll
- predicates.ll
- private-access-no-objects.ll
- private-element-size.ll
- private-memory-atomics.ll
- private-memory-broken.ll
- private-memory-r600.ll
- promote-alloca-addrspacecast.ll
- promote-alloca-array-aggregate.ll
- promote-alloca-array-allocation.ll
- promote-alloca-bitcast-function.ll
- promote-alloca-calling-conv.ll
- promote-alloca-globals.ll
- promote-alloca-invariant-markers.ll
- promote-alloca-lifetime.ll
- promote-alloca-mem-intrinsics.ll
- promote-alloca-no-opts.ll
- promote-alloca-padding-size-estimate.ll
- promote-alloca-stored-pointer-value.ll
- promote-alloca-to-lds-icmp.ll
- promote-alloca-to-lds-phi.ll
- promote-alloca-to-lds-select.ll
- promote-alloca-unhandled-intrinsic.ll
- promote-alloca-volatile.ll
- pv-packing.ll
- pv.ll
- r600-constant-array-fixup.ll
- r600-encoding.ll
- r600-export-fix.ll
- r600-infinite-loop-bug-while-reorganizing-vector.ll
- r600-legalize-umax-bug.ll
- r600.alu-limits.ll
- r600.amdgpu-alias-analysis.ll
- r600.bitcast.ll
- r600.global_atomics.ll
- r600.private-memory.ll
- r600.work-item-intrinsics.ll
- r600cfg.ll
- rcp-pattern.ll
- read-register-invalid-subtarget.ll
- read-register-invalid-type-i32.ll
- read-register-invalid-type-i64.ll
- read_register.ll
- readcyclecounter.ll
- README
- reduce-load-width-alignment.ll
- reduce-store-width-alignment.ll
- reg-coalescer-sched-crash.ll
- regcoal-subrange-join.mir
- regcoalesce-dbg.mir
- regcoalesce-prune.mir
- register-count-comments.ll
- rename-disconnected-bug.ll
- rename-independent-subregs-mac-operands.mir
- rename-independent-subregs.mir
- reorder-stores.ll
- ret.ll
- ret_jump.ll
- rotl.i64.ll
- rotl.ll
- rotr.i64.ll
- rotr.ll
- rsq.ll
- rv7x0_count3.ll
- s_addk_i32.ll
- s_movk_i32.ll
- s_mulk_i32.ll
- sad.ll
- saddo.ll
- salu-to-valu.ll
- sampler-resource-id.ll
- scalar-store-cache-flush.mir
- scalar_to_vector.ll
- schedule-fs-loop-nested-if.ll
- schedule-fs-loop-nested.ll
- schedule-fs-loop.ll
- schedule-global-loads.ll
- schedule-if-2.ll
- schedule-if.ll
- schedule-kernel-arg-loads.ll
- schedule-regpressure-limit.ll
- schedule-regpressure-limit2.ll
- schedule-regpressure.mir
- schedule-vs-if-nested-loop-failure.ll
- schedule-vs-if-nested-loop.ll
- scheduler-subrange-crash.ll
- scratch-buffer.ll
- scratch-simple.ll
- sdiv.ll
- sdivrem24.ll
- sdivrem64.ll
- sdwa-gfx9.mir
- sdwa-peephole-instr.mir
- sdwa-peephole.ll
- sdwa-scalar-ops.mir
- sdwa-vop2-64bit.mir
- select-fabs-fneg-extract-legacy.ll
- select-fabs-fneg-extract.ll
- select-i1.ll
- select-opt.ll
- select-vectors.ll
- select.f16.ll
- select.ll
- select64.ll
- selectcc-cnd.ll
- selectcc-cnde-int.ll
- selectcc-icmp-select-float.ll
- selectcc-opt.ll
- selectcc.ll
- selected-stack-object.ll
- set-dx10.ll
- setcc-equivalent.ll
- setcc-fneg-constant.ll
- setcc-opt.ll
- setcc-sext.ll
- setcc.ll
- setcc64.ll
- seto.ll
- setuo.ll
- sext-eliminate.ll
- sext-in-reg-failure-r600.ll
- sext-in-reg.ll
- sgpr-control-flow.ll
- sgpr-copy-duplicate-operand.ll
- sgpr-copy.ll
- sgprcopies.ll
- shared-op-cycle.ll
- shift-and-i128-ubfe.ll
- shift-and-i64-ubfe.ll
- shift-i64-opts.ll
- shl-add-to-add-shl.ll
- shl.ll
- shl.v2i16.ll
- shl_add_constant.ll
- shl_add_ptr.ll
- shrink-add-sub-constant.ll
- shrink-carry.mir
- shrink-vop3-carry-out.mir
- si-annotate-cf-noloop.ll
- si-annotate-cf-unreachable.ll
- si-annotate-cf.ll
- si-annotate-cfg-loop-assert.ll
- si-fix-sgpr-copies.mir
- si-instr-info-correct-implicit-operands.ll
- si-lod-bias.ll
- si-lower-control-flow-unreachable-block.ll
- si-scheduler.ll
- si-sgpr-spill.ll
- si-spill-cf.ll
- si-spill-sgpr-stack.ll
- si-triv-disjoint-mem-access.ll
- si-vector-hang.ll
- sign_extend.ll
- sint_to_fp.f64.ll
- sint_to_fp.i64.ll
- sint_to_fp.ll
- sitofp.f16.ll
- skip-if-dead.ll
- smed3.ll
- sminmax.ll
- sminmax.v2i16.ll
- smrd-vccz-bug.ll
- smrd.ll
- sopk-compares.ll
- spill-alloc-sgpr-init-bug.ll
- spill-cfg-position.ll
- spill-empty-live-interval.mir
- spill-m0.ll
- spill-scavenge-offset.ll
- spill-to-smem-m0.ll
- spill-wide-sgpr.ll
- split-scalar-i64-add.ll
- split-smrd.ll
- split-vector-memoperand-offsets.ll
- splitkit.mir
- sra.ll
- srem.ll
- srl.ll
- ssubo.ll
- store-barrier.ll
- store-global.ll
- store-local.ll
- store-private.ll
- store-v3i64.ll
- store-vector-ptrs.ll
- store_typed.ll
- structurize.ll
- structurize1.ll
- sub.i16.ll
- sub.ll
- sub.v2i16.ll
- subreg-coalescer-crash.ll
- subreg-coalescer-undef-use.ll
- subreg-eliminate-dead.ll
- subreg-intervals.mir
- subreg_interference.mir
- swizzle-export.ll
- syncscopes.ll
- target-cpu.ll
- tex-clause-antidep.ll
- texture-input-merge.ll
- trap.ll
- trunc-bitcast-vector.ll
- trunc-cmp-constant.ll
- trunc-store-f64-to-f16.ll
- trunc-store-i1.ll
- trunc-store.ll
- trunc-vector-store-assertion-failure.ll
- trunc.ll
- tti-unroll-prefs.ll
- uaddo.ll
- udiv.ll
- udivrem.ll
- udivrem24.ll
- udivrem64.ll
- uint_to_fp.f64.ll
- uint_to_fp.i64.ll
- uint_to_fp.ll
- uitofp.f16.ll
- umed3.ll
- unaligned-load-store.ll
- undefined-subreg-liverange.ll
- unhandled-loop-condition-assertion.ll
- uniform-branch-intrinsic-cond.ll
- uniform-cfg.ll
- uniform-crash.ll
- uniform-loop-inside-nonuniform.ll
- unify-metadata.ll
- unigine-liveness-crash.ll
- unknown-processor.ll
- unroll.ll
- unsupported-cc.ll
- urem.ll
- use-sgpr-multiple-times.ll
- usubo.ll
- v1i64-kernel-arg.ll
- v_cndmask.ll
- v_cvt_pk_u8_f32.ll
- v_mac.ll
- v_mac_f16.ll
- v_madak_f16.ll
- valu-i1.ll
- vccz-corrupt-bug-workaround.mir
- vector-alloca.ll
- vector-extract-insert.ll
- vectorize-global-local.ll
- vertex-fetch-encoding.ll
- vgpr-spill-emergency-stack-slot-compute.ll
- vgpr-spill-emergency-stack-slot.ll
- vi-removed-intrinsics.ll
- vop-shrink-frame-index.mir
- vop-shrink-non-ssa.mir
- vop-shrink.ll
- vselect.ll
- vselect64.ll
- vtx-fetch-branch.ll
- vtx-schedule.ll
- wait.ll
- waitcnt-flat.ll
- waitcnt-looptest.ll
- waitcnt-permute.mir
- waitcnt.mir
- wqm.ll
- write-register-vgpr-into-sgpr.ll
- write_register.ll
- wrong-transalu-pos-fix.ll
- xfail.r600.bitcast.ll
- xor.ll
- zero_extend.ll
- zext-i64-bit-operand.ll
- zext-lid.ll
swizzle-export.ll @release_50 — raw · history · blame
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 | ; RUN: llc < %s -march=r600 -mcpu=redwood | FileCheck --check-prefix=EG %s
;EG: {{^}}main:
;EG: EXPORT T{{[0-9]+}}.XYXX
;EG: EXPORT T{{[0-9]+}}.ZXXX
;EG: EXPORT T{{[0-9]+}}.XXWX
;EG: EXPORT T{{[0-9]+}}.XXXW
define amdgpu_vs void @main(<4 x float> inreg %reg0, <4 x float> inreg %reg1) {
main_body:
%0 = extractelement <4 x float> %reg1, i32 0
%1 = extractelement <4 x float> %reg1, i32 1
%2 = extractelement <4 x float> %reg1, i32 2
%3 = extractelement <4 x float> %reg1, i32 3
%4 = load <4 x float>, <4 x float> addrspace(8)* null
%5 = extractelement <4 x float> %4, i32 1
%6 = load <4 x float>, <4 x float> addrspace(8)* null
%7 = extractelement <4 x float> %6, i32 2
%8 = load <4 x float>, <4 x float> addrspace(8)* null
%9 = extractelement <4 x float> %8, i32 0
%10 = fmul float 0.000000e+00, %9
%11 = load <4 x float>, <4 x float> addrspace(8)* null
%12 = extractelement <4 x float> %11, i32 0
%13 = fmul float %5, %12
%14 = load <4 x float>, <4 x float> addrspace(8)* null
%15 = extractelement <4 x float> %14, i32 0
%16 = fmul float 0.000000e+00, %15
%17 = load <4 x float>, <4 x float> addrspace(8)* null
%18 = extractelement <4 x float> %17, i32 0
%19 = fmul float 0.000000e+00, %18
%20 = load <4 x float>, <4 x float> addrspace(8)* null
%21 = extractelement <4 x float> %20, i32 0
%22 = fmul float %7, %21
%23 = load <4 x float>, <4 x float> addrspace(8)* null
%24 = extractelement <4 x float> %23, i32 0
%25 = fmul float 0.000000e+00, %24
%26 = load <4 x float>, <4 x float> addrspace(8)* null
%27 = extractelement <4 x float> %26, i32 0
%28 = fmul float 0.000000e+00, %27
%29 = load <4 x float>, <4 x float> addrspace(8)* null
%30 = extractelement <4 x float> %29, i32 0
%31 = fmul float 0.000000e+00, %30
%32 = load <4 x float>, <4 x float> addrspace(8)* null
%33 = extractelement <4 x float> %32, i32 0
%34 = fmul float 0.000000e+00, %33
%35 = load <4 x float>, <4 x float> addrspace(8)* null
%36 = extractelement <4 x float> %35, i32 0
%37 = fmul float 0.000000e+00, %36
%38 = load <4 x float>, <4 x float> addrspace(8)* null
%39 = extractelement <4 x float> %38, i32 0
%40 = fmul float 1.000000e+00, %39
%41 = load <4 x float>, <4 x float> addrspace(8)* null
%42 = extractelement <4 x float> %41, i32 0
%43 = fmul float 0.000000e+00, %42
%44 = load <4 x float>, <4 x float> addrspace(8)* null
%45 = extractelement <4 x float> %44, i32 0
%46 = fmul float 0.000000e+00, %45
%47 = load <4 x float>, <4 x float> addrspace(8)* null
%48 = extractelement <4 x float> %47, i32 0
%49 = fmul float 0.000000e+00, %48
%50 = load <4 x float>, <4 x float> addrspace(8)* null
%51 = extractelement <4 x float> %50, i32 0
%52 = fmul float 0.000000e+00, %51
%53 = load <4 x float>, <4 x float> addrspace(8)* null
%54 = extractelement <4 x float> %53, i32 0
%55 = fmul float 1.000000e+00, %54
%56 = insertelement <4 x float> undef, float %0, i32 0
%57 = insertelement <4 x float> %56, float %1, i32 1
%58 = insertelement <4 x float> %57, float %2, i32 2
%59 = insertelement <4 x float> %58, float %3, i32 3
call void @llvm.r600.store.swizzle(<4 x float> %59, i32 60, i32 1)
%60 = insertelement <4 x float> undef, float %10, i32 0
%61 = insertelement <4 x float> %60, float %13, i32 1
%62 = insertelement <4 x float> %61, float %16, i32 2
%63 = insertelement <4 x float> %62, float %19, i32 3
call void @llvm.r600.store.swizzle(<4 x float> %63, i32 0, i32 2)
%64 = insertelement <4 x float> undef, float %22, i32 0
%65 = insertelement <4 x float> %64, float %25, i32 1
%66 = insertelement <4 x float> %65, float %28, i32 2
%67 = insertelement <4 x float> %66, float %31, i32 3
call void @llvm.r600.store.swizzle(<4 x float> %67, i32 1, i32 2)
%68 = insertelement <4 x float> undef, float %34, i32 0
%69 = insertelement <4 x float> %68, float %37, i32 1
%70 = insertelement <4 x float> %69, float %40, i32 2
%71 = insertelement <4 x float> %70, float %43, i32 3
call void @llvm.r600.store.swizzle(<4 x float> %71, i32 2, i32 2)
%72 = insertelement <4 x float> undef, float %46, i32 0
%73 = insertelement <4 x float> %72, float %49, i32 1
%74 = insertelement <4 x float> %73, float %52, i32 2
%75 = insertelement <4 x float> %74, float %55, i32 3
call void @llvm.r600.store.swizzle(<4 x float> %75, i32 3, i32 2)
ret void
}
; EG: {{^}}main2:
; EG: T{{[0-9]+}}.XY__
; EG: T{{[0-9]+}}.ZXY0
define amdgpu_vs void @main2(<4 x float> inreg %reg0, <4 x float> inreg %reg1) {
main_body:
%0 = extractelement <4 x float> %reg1, i32 0
%1 = extractelement <4 x float> %reg1, i32 1
%2 = fadd float %0, 2.5
%3 = fmul float %1, 3.5
%4 = load <4 x float>, <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>], [1024 x <4 x float>] addrspace(8)* null, i64 0, i32 1)
%5 = extractelement <4 x float> %4, i32 0
%6 = call float @llvm.cos.f32(float %5)
%7 = load <4 x float>, <4 x float> addrspace(8)* null
%8 = extractelement <4 x float> %7, i32 0
%9 = load <4 x float>, <4 x float> addrspace(8)* null
%10 = extractelement <4 x float> %9, i32 1
%11 = insertelement <4 x float> undef, float %2, i32 0
%12 = insertelement <4 x float> %11, float %3, i32 1
call void @llvm.r600.store.swizzle(<4 x float> %12, i32 60, i32 1)
%13 = insertelement <4 x float> undef, float %6, i32 0
%14 = insertelement <4 x float> %13, float %8, i32 1
%15 = insertelement <4 x float> %14, float %10, i32 2
%16 = insertelement <4 x float> %15, float 0.000000e+00, i32 3
call void @llvm.r600.store.swizzle(<4 x float> %16, i32 0, i32 2)
ret void
}
; Function Attrs: nounwind readonly
declare float @llvm.cos.f32(float) #1
declare void @llvm.r600.store.swizzle(<4 x float>, i32, i32)
attributes #1 = { nounwind readonly }
|