|  | // RUN: not llvm-tblgen -gen-instr-info -I %p/../../include %s 2>&1 | FileCheck %s | 
|  |  | 
|  | // This test verifies that TableGen is displaying an error when mapped instruction | 
|  | // does not contain a field listed under RowFields. | 
|  |  | 
|  | include "llvm/Target/Target.td" | 
|  |  | 
|  | class SimpleReg<string n> : Register<n> { | 
|  | let Namespace = "Simple"; | 
|  | } | 
|  | def R0 : SimpleReg<"r0">; | 
|  | def SimpleRegClass : RegisterClass<"Simple",[i32],0,(add R0)>; | 
|  | def SimpleInstrInfo : InstrInfo; | 
|  |  | 
|  | def SimpleTarget : Target { | 
|  | let InstructionSet = SimpleInstrInfo; | 
|  | } | 
|  |  | 
|  | class SimpleRel; | 
|  |  | 
|  | def REL_DEF : InstrMapping { | 
|  | let FilterClass = "SimpleRel"; | 
|  | let RowFields = ["BaseName"]; | 
|  | let ColFields = ["Col"]; | 
|  | let KeyCol = ["KeyCol"]; | 
|  | let ValueCols = [["ValCol"]]; | 
|  | } | 
|  |  | 
|  | class INSTR_DEF : Instruction { | 
|  | let Namespace = "Simple"; | 
|  | let OutOperandList = (outs); | 
|  | let InOperandList = (ins); | 
|  | string Basename = ""; | 
|  | string Col = ""; | 
|  | } | 
|  |  | 
|  | def SimpleInstr : SimpleRel, INSTR_DEF; | 
|  |  | 
|  | // CHECK: error: No value "BaseName" found in "SimpleInstr" instruction description. | 
|  | // CHECK: def SimpleInstr : SimpleRel, INSTR_DEF; |