rampitec added a comment. You need to replace HasGFX10_BEncoding with HasGFX10_AEncoding in the BVH and IMAGE_MSAA_LOAD_X. You also need to update llvm.amdgcn.image.msaa.load.x.ll test to include gfx1013.
================ Comment at: llvm/lib/Target/AMDGPU/AMDGPU.td:1106 [FeatureGFX10, FeatureGFX10_BEncoding, FeatureGFX10_3Insts, ---------------- gfx1030 should now include FeatureGFX10_AEncoding as well. 10_B is an extension above 10_A. ================ Comment at: llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll:4 +; RUN: llc -global-isel -march=amdgcn -mcpu=gfx1013 -verify-machineinstrs < %s | FileCheck -check-prefix=GCN %s +; RUN: llc -global-isel -march=amdgcn -mcpu=gfx1012 -verify-machineinstrs < %s | FileCheck -check-prefix=GCN %s ---------------- foad wrote: > This test surely should not pass for gfx1012, since it does not have these > instructions. And with your patch as written it should fail for gfx1013 too, > since they are predicated on HasGFX10_BEncoding. > > @rampitec any idea what is wrong here? Apparently the backend will happily > generate image_bvh_intersect_ray instructions even for gfx900! Indeed. MIMG_IntersectRay has this: ``` let SubtargetPredicate = HasGFX10_BEncoding, AssemblerPredicate = HasGFX10_BEncoding, ``` but apparently SubtargetPredicate did not work. It needs to be fixed. gfx1012 does not have it, gfx1013 does though. That is what GFX10_A encoding is about, 10_B it has to be replaced with 10_A in BVH and MSAA load. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D103663/new/ https://reviews.llvm.org/D103663 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits