Fork channel

Create a new channel as a copy of main.

Rename channel

Rename main to:

Delete channel

Delete main? This cannot be undone.

mode name
drwxr-xr-x GlobalISel/
-rw-r--r-- README
-rw-r--r-- acc-ldst.ll
-rw-r--r-- accvgpr-copy.mir
-rw-r--r-- add-debug.ll
-rw-r--r-- add.i16.ll
-rw-r--r-- add.ll
-rw-r--r-- add.v2i16.ll
-rw-r--r-- add3.ll
-rw-r--r-- add_i1.ll
-rw-r--r-- add_i128.ll
-rw-r--r-- add_i64.ll
-rw-r--r-- add_shl.ll
-rw-r--r-- addrspacecast.ll
-rw-r--r-- agpr-csr.ll
-rw-r--r-- agpr-remat.ll
-rw-r--r-- alignbit-pat.ll
-rw-r--r-- alloca.ll
-rw-r--r-- amd.endpgm.ll
-rw-r--r-- amdgcn-ieee.ll
-rw-r--r-- amdgpu-inline.ll
-rw-r--r-- amdpal-cs.ll
-rw-r--r-- amdpal-elf.ll
-rw-r--r-- amdpal-es.ll
-rw-r--r-- amdpal-gs.ll
-rw-r--r-- amdpal-hs.ll
-rw-r--r-- amdpal-ls.ll
-rw-r--r-- amdpal-ps.ll
-rw-r--r-- amdpal-vs.ll
-rw-r--r-- amdpal.ll
-rw-r--r-- and-gcn.ll
-rw-r--r-- and.ll
-rw-r--r-- and_or.ll
-rw-r--r-- andorbitset.ll
-rw-r--r-- andorn2.ll
-rw-r--r-- anonymous-gv.ll
-rw-r--r-- anyext.ll
-rw-r--r-- ashr.v2i16.ll
-rw-r--r-- basic-branch.ll
-rw-r--r-- basic-loop.ll
-rw-r--r-- bfe-combine.ll
-rw-r--r-- bfe-patterns.ll
-rw-r--r-- bfe_uint.ll
-rw-r--r-- bfi_int.ll
-rw-r--r-- bfi_int.r600.ll
-rw-r--r-- bfm.ll
-rw-r--r-- big_alu.ll
-rw-r--r-- bitreverse.ll
-rw-r--r-- br_cc.f16.ll
-rw-r--r-- bswap.ll
-rw-r--r-- build_vector.ll
-rw-r--r-- bypass-div.ll
-rw-r--r-- call-constant.ll
-rw-r--r-- call-encoding.ll
-rw-r--r-- call-skip.ll
-rw-r--r-- call-waitcnt.ll
-rw-r--r-- call_fs.ll
-rw-r--r-- cc-sgpr-limit.ll
-rw-r--r-- cc-update.ll
-rw-r--r-- cf-stack-bug.ll
-rw-r--r-- cf_end.ll
-rw-r--r-- clamp.ll
-rw-r--r-- cmp_shrink.mir
-rw-r--r-- comdat.ll
-rw-r--r-- commute-vop3.mir
-rw-r--r-- copy-to-reg.ll
-rw-r--r-- copy_to_scc.ll
-rw-r--r-- csr-gfx10.ll
-rw-r--r-- ctlz.ll
-rw-r--r-- ctpop.ll
-rw-r--r-- ctpop16.ll
-rw-r--r-- ctpop64.ll
-rw-r--r-- cttz.ll
-rw-r--r-- cube.ll
-rw-r--r-- cvt_f32_ubyte.ll
-rw-r--r-- dead-lane.mir
-rw-r--r-- dead_copy.mir
-rw-r--r-- debug-value.ll
-rw-r--r-- debug-value2.ll
-rw-r--r-- debug.ll
-rw-r--r-- debug_frame.ll
-rw-r--r-- div_i128.ll
-rw-r--r-- dpp64_combine.ll
-rw-r--r-- dpp_combine.ll
-rw-r--r-- dpp_combine.mir
-rw-r--r-- ds-alignment.ll
-rw-r--r-- ds-sub-offset.ll
-rw-r--r-- ds_gws_align.ll
-rw-r--r-- ds_read2.ll
-rw-r--r-- ds_read2st64.ll
-rw-r--r-- ds_write2.ll
-rw-r--r-- ds_write2st64.ll
-rw-r--r-- early-inline.ll
-rw-r--r-- early-term.mir
-rw-r--r-- elf-notes.ll
-rw-r--r-- elf.ll
-rw-r--r-- elf.metadata.ll
-rw-r--r-- elf.r600.ll
-rw-r--r-- else.ll
-rw-r--r-- endpgm-dce.mir
-rw-r--r-- extload-align.ll
-rw-r--r-- extload.ll
-rw-r--r-- fabs.f16.ll
-rw-r--r-- fabs.f64.ll
-rw-r--r-- fabs.ll
-rw-r--r-- fadd.f16.ll
-rw-r--r-- fadd.ll
-rw-r--r-- fadd64.ll
-rw-r--r-- fcanonicalize.ll
-rw-r--r-- fceil.ll
-rw-r--r-- fceil64.ll
-rw-r--r-- fcmp-cnd.ll
-rw-r--r-- fcmp.f16.ll
-rw-r--r-- fcmp.ll
-rw-r--r-- fcmp64.ll
-rw-r--r-- fconst64.ll
-rw-r--r-- fcopysign.f16.ll
-rw-r--r-- fcopysign.f32.ll
-rw-r--r-- fcopysign.f64.ll
-rw-r--r-- fdiv.f16.ll
-rw-r--r-- fdiv.f64.ll
-rw-r--r-- fdiv.ll
-rw-r--r-- fdot2.ll
-rw-r--r-- fence-barrier.ll
-rw-r--r-- fexp.ll
-rw-r--r-- ffloor.f64.ll
-rw-r--r-- ffloor.ll
-rw-r--r-- flat-scratch.ll
-rw-r--r-- flat_atomics.ll
-rw-r--r-- floor.ll
-rw-r--r-- fma-combine.ll
-rw-r--r-- fma.f64.ll
-rw-r--r-- fma.ll
-rw-r--r-- fmac.sdwa.ll
-rw-r--r-- fmad.ll
-rw-r--r-- fmax.ll
-rw-r--r-- fmax3.f64.ll
-rw-r--r-- fmax3.ll
-rw-r--r-- fmax_legacy.ll
-rw-r--r-- fmaxnum.f64.ll
-rw-r--r-- fmaxnum.ll
-rw-r--r-- fmaxnum.r600.ll
-rw-r--r-- fmed3.ll
-rw-r--r-- fmin.ll
-rw-r--r-- fmin3.ll
-rw-r--r-- fmin_legacy.ll
-rw-r--r-- fminnum.f64.ll
-rw-r--r-- fminnum.ll
-rw-r--r-- fminnum.r600.ll
-rw-r--r-- fmul.f16.ll
-rw-r--r-- fmul.ll
-rw-r--r-- fmul64.ll
-rw-r--r-- fmuladd.f16.ll
-rw-r--r-- fmuladd.f32.ll
-rw-r--r-- fmuladd.f64.ll
-rw-r--r-- fmuladd.v2f16.ll
-rw-r--r-- fnearbyint.ll
-rw-r--r-- fneg-combines.ll
-rw-r--r-- fneg-fabs.f16.ll
-rw-r--r-- fneg-fabs.f64.ll
-rw-r--r-- fneg-fabs.ll
-rw-r--r-- fneg.f16.ll
-rw-r--r-- fneg.f64.ll
-rw-r--r-- fneg.ll
-rw-r--r-- fold-cndmask.mir
-rw-r--r-- fp-classify.ll
-rw-r--r-- fp16_to_fp32.ll
-rw-r--r-- fp16_to_fp64.ll
-rw-r--r-- fp32_to_fp16.ll
-rw-r--r-- fp_to_sint.ll
-rw-r--r-- fp_to_uint.ll
-rw-r--r-- fpext-free.ll
-rw-r--r-- fpext.f16.ll
-rw-r--r-- fpext.ll
-rw-r--r-- fpow.ll
-rw-r--r-- fptosi.f16.ll
-rw-r--r-- fptoui.f16.ll
-rw-r--r-- fptrunc.f16.ll
-rw-r--r-- fptrunc.ll
-rw-r--r-- fract.f64.ll
-rw-r--r-- fract.ll
-rw-r--r-- frame-index.mir
-rw-r--r-- frem.ll
-rw-r--r-- fshl.ll
-rw-r--r-- fshr.ll
-rw-r--r-- fsqrt.f64.ll
-rw-r--r-- fsqrt.ll
-rw-r--r-- fsub.f16.ll
-rw-r--r-- fsub.ll
-rw-r--r-- fsub64.ll
-rw-r--r-- ftrunc.f64.ll
-rw-r--r-- ftrunc.ll
-rw-r--r-- function-args.ll
-rw-r--r-- gds-atomic.ll
-rw-r--r-- gfx90a-enc.ll
-rw-r--r-- global_smrd.ll
-rw-r--r-- gws-hazards.mir
-rw-r--r-- half.ll
-rw-r--r-- hard-clauses.mir
-rw-r--r-- hazard-kill.mir
-rw-r--r-- hazard.mir
-rw-r--r-- hoist-cond.ll
-rw-r--r-- hsa-fp-mode.ll
-rw-r--r-- hsa-func.ll
-rw-r--r-- hsa-globals.ll
-rw-r--r-- hsa.ll
-rw-r--r-- i1-copy-phi.ll
-rw-r--r-- icmp.i16.ll
-rw-r--r-- icmp64.ll
-rw-r--r-- idiv-licm.ll
-rw-r--r-- idot2.ll
-rw-r--r-- idot4s.ll
-rw-r--r-- idot4u.ll
-rw-r--r-- idot8s.ll
-rw-r--r-- idot8u.ll
-rw-r--r-- imm.ll
-rw-r--r-- imm16.ll
-rw-r--r-- immv216.ll
-rw-r--r-- indirect-call.ll
-rw-r--r-- infinite-loop.ll
-rw-r--r-- inline-asm.ll
-rw-r--r-- inline-attr.ll
-rw-r--r-- inline-calls.ll
-rw-r--r-- inline-maxbb.ll
-rw-r--r-- inlineasm-16.ll
-rw-r--r-- inlineasm-v16.ll
-rw-r--r-- input-mods.ll
-rw-r--r-- insert_subreg.ll
-rw-r--r-- internalize.ll
-rw-r--r-- ipra-regmask.ll
-rw-r--r-- ipra.ll
-rw-r--r-- issue48473.mir
-rw-r--r-- jump-address.ll
-rw-r--r-- kcache-fold.ll
-rw-r--r-- kernarg-size.ll
-rw-r--r-- kernel-args.ll
-rw-r--r-- lcssa-optnone.ll
-rw-r--r-- lds-alignment.ll
-rw-r--r-- lds-bounds.ll
-rw-r--r-- lds-relocs.ll
-rw-r--r-- lds-size.ll
-rw-r--r-- licm-valu.mir
-rw-r--r-- lit.local.cfg
-rw-r--r-- literals.ll
-rw-r--r-- liveness.mir
-rw-r--r-- llc-pipeline.ll
-rw-r--r-- llvm.ceil.f16.ll
-rw-r--r-- llvm.cos.f16.ll
-rw-r--r-- llvm.cos.ll
-rw-r--r-- llvm.exp2.f16.ll
-rw-r--r-- llvm.exp2.ll
-rw-r--r-- llvm.fma.f16.ll
-rw-r--r-- llvm.log.f16.ll
-rw-r--r-- llvm.log.ll
-rw-r--r-- llvm.log10.ll
-rw-r--r-- llvm.log2.f16.ll
-rw-r--r-- llvm.log2.ll
-rw-r--r-- llvm.memcpy.ll
-rw-r--r-- llvm.mulo.ll
-rw-r--r-- llvm.pow-gfx9.ll
-rw-r--r-- llvm.pow.ll
-rw-r--r-- llvm.powi.ll
-rw-r--r-- llvm.r600.tex.ll
-rw-r--r-- llvm.rint.f16.ll
-rw-r--r-- llvm.rint.f64.ll
-rw-r--r-- llvm.rint.ll
-rw-r--r-- llvm.round.ll
-rw-r--r-- llvm.sin.f16.ll
-rw-r--r-- llvm.sin.ll
-rw-r--r-- llvm.sqrt.f16.ll
-rw-r--r-- load-hi16.ll
-rw-r--r-- load-lo16.ll
-rw-r--r-- load-local-i1.ll
-rw-r--r-- load-local-i8.ll
-rw-r--r-- load-local.96.ll
-rw-r--r-- local-64.ll
-rw-r--r-- local-atomics.ll
-rw-r--r-- local-memory.ll
-rw-r--r-- loop-address.ll
-rw-r--r-- loop-idiom.ll
-rw-r--r-- loop-prefetch.ll
-rw-r--r-- loop_break.ll
-rw-r--r-- lshl-add-u64.ll
-rw-r--r-- lshl64-to-32.ll
-rw-r--r-- lshr.v2i16.ll
-rw-r--r-- mad-combine.ll
-rw-r--r-- mad-mix-hi.ll
-rw-r--r-- mad-mix-lo.ll
-rw-r--r-- mad-mix.ll
-rw-r--r-- mad.u16.ll
-rw-r--r-- mad_64_32.ll
-rw-r--r-- mad_int24.ll
-rw-r--r-- mad_u64_u32.ll
-rw-r--r-- mad_uint24.ll
-rw-r--r-- madak.ll
-rw-r--r-- madmk.ll
-rw-r--r-- mai-hazards.mir
-rw-r--r-- mai-inline.ll
-rw-r--r-- max-literals.ll
-rw-r--r-- max-sgprs.ll
-rw-r--r-- max.i16.ll
-rw-r--r-- max.ll
-rw-r--r-- max3.ll
-rw-r--r-- mem-builtins.ll
-rw-r--r-- memory_clause.ll
-rw-r--r-- merge-m0.mir
-rw-r--r-- merge-stores.ll
-rw-r--r-- mesa3d.ll
-rw-r--r-- mfma-loop.ll
-rw-r--r-- min.ll
-rw-r--r-- min3.ll
-rw-r--r-- minmax.ll
-rw-r--r-- missing-store.ll
-rw-r--r-- movreld-bug.ll
-rw-r--r-- movrels-bug.mir
-rw-r--r-- mubuf.ll
-rw-r--r-- mul.i16.ll
-rw-r--r-- mul.ll
-rw-r--r-- mul_int24.ll
-rw-r--r-- nand.ll
-rw-r--r-- nested-calls.ll
-rw-r--r-- no-bundle-asm.ll
-rw-r--r-- nop-data.ll
-rw-r--r-- nor.ll
-rw-r--r-- nsa-reassign.ll
-rw-r--r-- nsa-reassign.mir
-rw-r--r-- nullptr.ll
-rw-r--r-- omod.ll
-rw-r--r-- opencl-printf.ll
-rw-r--r-- or.ll
-rw-r--r-- or3.ll
-rw-r--r-- pack.v2f16.ll
-rw-r--r-- pack.v2i16.ll
-rw-r--r-- packed-fp32.ll
-rw-r--r-- packed-op-sel.ll
-rw-r--r-- packetizer.ll
-rw-r--r-- perfhint.ll
-rw-r--r-- permute.ll
-rw-r--r-- pr51516.mir
-rw-r--r-- predicate-dp4.ll
-rw-r--r-- predicates.ll
-rw-r--r-- preserve-hi16.ll
-rw-r--r-- ptrmask.ll
-rw-r--r-- pv-packing.ll
-rw-r--r-- pv.ll
-rw-r--r-- r600-encoding.ll
-rw-r--r-- r600.add.ll
-rw-r--r-- r600.bitcast.ll
-rw-r--r-- r600.sub.ll
-rw-r--r-- r600cfg.ll
-rw-r--r-- rcp-pattern.ll
-rw-r--r-- rcp_iflag.ll
-rw-r--r-- read_register.ll
-rw-r--r-- recursion.ll
-rw-r--r-- reduction.ll
-rw-r--r-- rel32.ll
-rw-r--r-- remat-sop.mir
-rw-r--r-- remat-vop.mir
-rw-r--r-- ret.ll
-rw-r--r-- ret_jump.ll
-rw-r--r-- returnaddress.ll
-rw-r--r-- rotl.i64.ll
-rw-r--r-- rotl.ll
-rw-r--r-- rotr.i64.ll
-rw-r--r-- rotr.ll
-rw-r--r-- rsq.ll
-rw-r--r-- rv7x0_count3.ll
-rw-r--r-- s_addk_i32.ll
-rw-r--r-- s_code_end.ll
-rw-r--r-- s_movk_i32.ll
-rw-r--r-- s_mulk_i32.ll
-rw-r--r-- sad.ll
-rw-r--r-- saddo.ll
-rw-r--r-- saddsat.ll
-rw-r--r-- salu-to-valu.ll
-rw-r--r-- save-fp.ll
-rw-r--r-- schedule-if-2.ll
-rw-r--r-- schedule-if.ll
-rw-r--r-- schedule-ilp.ll
-rw-r--r-- schedule-ilp.mir
-rw-r--r-- sdiv.ll
-rw-r--r-- sdiv64.ll
-rw-r--r-- sdivrem24.ll
-rw-r--r-- sdwa-gfx9.mir
-rw-r--r-- sdwa-ops.mir
-rw-r--r-- sdwa-peephole.ll
-rw-r--r-- sdwa-stack.mir
-rw-r--r-- select-i1.ll
-rw-r--r-- select-opt.ll
-rw-r--r-- select-undef.ll
-rw-r--r-- select.f16.ll
-rw-r--r-- select.ll
-rw-r--r-- select64.ll
-rw-r--r-- selectcc-cnd.ll
-rw-r--r-- selectcc-opt.ll
-rw-r--r-- selectcc.ll
-rw-r--r-- set-dx10.ll
-rw-r--r-- setcc-opt.ll
-rw-r--r-- setcc-sext.ll
-rw-r--r-- setcc.ll
-rw-r--r-- setcc64.ll
-rw-r--r-- seto.ll
-rw-r--r-- setuo.ll
-rw-r--r-- sext-in-reg.ll
-rw-r--r-- sgpr-copy.ll
-rw-r--r-- sgpr-spill.mir
-rw-r--r-- sgprcopies.ll
-rw-r--r-- shift-i128.ll
-rw-r--r-- shift-select.ll
-rw-r--r-- shl.ll
-rw-r--r-- shl.v2i16.ll
-rw-r--r-- shl_add.ll
-rw-r--r-- shl_add_ptr.ll
-rw-r--r-- shl_or.ll
-rw-r--r-- shrink-carry.mir
-rw-r--r-- si-i1-copies.mir
-rw-r--r-- si-scheduler.ll
-rw-r--r-- si-sgpr-spill.ll
-rw-r--r-- si-spill-cf.ll
-rw-r--r-- sibling-call.ll
-rw-r--r-- sign_extend.ll
-rw-r--r-- sint_to_fp.ll
-rw-r--r-- sitofp.f16.ll
-rw-r--r-- skip-if-dead.ll
-rw-r--r-- smed3.ll
-rw-r--r-- sminmax.ll
-rw-r--r-- sminmax.v2i16.ll
-rw-r--r-- smrd-gfx10.ll
-rw-r--r-- smrd-vccz-bug.ll
-rw-r--r-- smrd.ll
-rw-r--r-- smrd_vmem_war.ll
-rw-r--r-- sopk-compares.ll
-rw-r--r-- spill-agpr.ll
-rw-r--r-- spill-agpr.mir
-rw-r--r-- spill-m0.ll
-rw-r--r-- spill-vgpr.ll
-rw-r--r-- spill192.mir
-rw-r--r-- spill224.mir
-rw-r--r-- split-smrd.ll
-rw-r--r-- splitkit.mir
-rw-r--r-- sra.ll
-rw-r--r-- srem.ll
-rw-r--r-- srem64.ll
-rw-r--r-- srl.ll
-rw-r--r-- ssubo.ll
-rw-r--r-- ssubsat.ll
-rw-r--r-- stack-realign.ll
-rw-r--r-- store-barrier.ll
-rw-r--r-- store-global.ll
-rw-r--r-- store-hi16.ll
-rw-r--r-- store-local.ll
-rw-r--r-- store-private.ll
-rw-r--r-- store-v3i64.ll
-rw-r--r-- store_typed.ll
-rw-r--r-- stress-calls.ll
-rw-r--r-- structurize.ll
-rw-r--r-- structurize1.ll
-rw-r--r-- sub.i16.ll
-rw-r--r-- sub.ll
-rw-r--r-- sub.v2i16.ll
-rw-r--r-- sub_i1.ll
-rw-r--r-- swdev282079.ll
-rw-r--r-- swdev282079.mir
-rw-r--r-- syncscopes.ll
-rw-r--r-- tail-call-cgp.ll
-rw-r--r-- target-cpu.ll
-rw-r--r-- tgsplit.ll
-rw-r--r-- trap-abis.ll
-rw-r--r-- trap.ll
-rw-r--r-- trunc-combine.ll
-rw-r--r-- trunc-store.ll
-rw-r--r-- trunc.ll
-rw-r--r-- twoaddr-fma.mir
-rw-r--r-- twoaddr-mad.mir
-rw-r--r-- twoaddr-wmma.mir
-rw-r--r-- uaddo.ll
-rw-r--r-- uaddsat.ll
-rw-r--r-- udiv.ll
-rw-r--r-- udiv64.ll
-rw-r--r-- udivrem.ll
-rw-r--r-- udivrem24.ll
-rw-r--r-- uint_to_fp.ll
-rw-r--r-- uitofp.f16.ll
-rw-r--r-- umed3.ll
-rw-r--r-- uniform-cfg.ll
-rw-r--r-- uniform-crash.ll
-rw-r--r-- unpack-half.ll
-rw-r--r-- unroll.ll
-rw-r--r-- update-phi.ll
-rw-r--r-- urem.ll
-rw-r--r-- urem64.ll
-rw-r--r-- usubo.ll
-rw-r--r-- usubsat.ll
-rw-r--r-- v1024.ll
-rw-r--r-- v_cndmask.ll
-rw-r--r-- v_mac.ll
-rw-r--r-- v_mac_f16.ll
-rw-r--r-- v_madak_f16.ll
-rw-r--r-- v_pack.ll
-rw-r--r-- v_swap_b32.mir
-rw-r--r-- valu-i1.ll
-rw-r--r-- vector-alloca.ll
-rw-r--r-- verify-sop.mir
-rw-r--r-- verify-vopd.mir
-rw-r--r-- vgpr-remat.mir
-rw-r--r-- vgpr-spill.mir
-rw-r--r-- vop-shrink.ll
-rw-r--r-- vopc_dpp.ll
-rw-r--r-- vopc_dpp.mir
-rw-r--r-- vopd-combine.mir
-rw-r--r-- vselect.ll
-rw-r--r-- vselect64.ll
-rw-r--r-- vtx-schedule.ll
-rw-r--r-- wait.ll
-rw-r--r-- waitcnt-agpr.mir
-rw-r--r-- waitcnt-bvh.mir
-rw-r--r-- waitcnt-flat.ll
-rw-r--r-- waitcnt-vscnt.ll
-rw-r--r-- waitcnt.mir
-rw-r--r-- wave32.ll
-rw-r--r-- wmma-hazards.mir
-rw-r--r-- wqm-gfx11.ll
-rw-r--r-- wqm.ll
-rw-r--r-- wqm.mir
-rw-r--r-- wwm-reserved.ll
-rw-r--r-- xnor.ll
-rw-r--r-- xor.ll
-rw-r--r-- xor3-i1-const.ll
-rw-r--r-- xor3.ll
-rw-r--r-- xor_add.ll
-rw-r--r-- zero_extend.ll
-rw-r--r-- zext-lid.ll
README

+==============================================================================+ | How to organize the lit tests | +==============================================================================+

  • If you write a test for matching a single DAG opcode or intrinsic, it should go in a file called {opcode_name,intrinsic_name}.ll (e.g. fadd.ll)

  • If you write a test that matches several DAG opcodes and checks for a single ISA instruction, then that test should go in a file called {ISA_name}.ll (e.g. bfi_int.ll

  • For all other tests, use your best judgement for organizing tests and naming the files.

+==============================================================================+ | Naming conventions | +==============================================================================+

  • Use dash ‘-’ and not underscore ‘’ to separate words in file names, unless the file is named after a DAG opcode or ISA instruction that has an underscore ‘’ in its name.