//===-- AMDGPUSearchableTables.td - ------------------------*- tablegen -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===// // Resource intrinsics table. //===----------------------------------------------------------------------===// class RsrcIntrinsic { Intrinsic Intr = !cast(intr); bits<8> RsrcArg = intr.RsrcArg; bit IsImage = intr.IsImage; } def RsrcIntrinsics : GenericTable { let FilterClass = "RsrcIntrinsic"; let Fields = ["Intr", "RsrcArg", "IsImage"]; let PrimaryKey = ["Intr"]; let PrimaryKeyName = "lookupRsrcIntrinsic"; } foreach intr = !listconcat(AMDGPUBufferIntrinsics, AMDGPUImageDimIntrinsics, AMDGPUImageDimAtomicIntrinsics) in { def : RsrcIntrinsic(intr)>; } class SourceOfDivergence { Intrinsic Intr = intr; } def SourcesOfDivergence : GenericTable { let FilterClass = "SourceOfDivergence"; let Fields = ["Intr"]; let PrimaryKey = ["Intr"]; let PrimaryKeyName = "lookupSourceOfDivergence"; } def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; def : SourceOfDivergence; foreach intr = AMDGPUImageDimAtomicIntrinsics in def : SourceOfDivergence;