Changes in directory llvm/lib/Target:
Target.td updated: 1.66 -> 1.67 --- Log message: Added field noResults to Instruction. Currently tblgen cannot tell which operands in the operand list are results so it assumes the first one is a result. This is bad. Ideally we would fix this by separating results from inputs, e.g. (res R32:$dst), (ops R32:$src1, R32:$src2). But that's a more distruptive change. Adding 'let noResults = 1' is the workaround to tell tblgen that the instruction does not produces a result. It works for now since tblgen does not support instructions which produce multiple results. --- Diffs of the changes: (+1 -0) Target.td | 1 + 1 files changed, 1 insertion(+) Index: llvm/lib/Target/Target.td diff -u llvm/lib/Target/Target.td:1.66 llvm/lib/Target/Target.td:1.67 --- llvm/lib/Target/Target.td:1.66 Fri Dec 23 16:14:32 2005 +++ llvm/lib/Target/Target.td Mon Dec 26 03:11:44 2005 @@ -171,6 +171,7 @@ bit hasCtrlDep = 0; // Does this instruction r/w ctrl-flow chains? bit hasInFlag = 0; // Does this instruction read a flag operand? bit hasOutFlag = 0; // Does this instruction write a flag operand? + bit noResults = 0; // Does this instruction produce no results? InstrItinClass Itinerary; // Execution steps used for scheduling. } _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits