i965: Create a "brw_last_inst" convenience macro.
Often times, we want to emit an instruction, then set one field on it, such as predication or a conditional modifier. Normally, we'd have to declare "struct brw_instruction *inst;" and then use "inst = brw_FOO(...)" to emit the instruction, which can hurt readability. The new "brw_last_inst" macro refers to the most recently emitted instruction, so you can just do: brw_ADD(...) brw_last_inst->header.predicate_control = BRW_PREDICATE_NORMAL; Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Matt Turner <mattst88@gmail.com>
This commit is contained in:
parent
8deb91b2e7
commit
42c292006c
|
@ -46,6 +46,12 @@ extern "C" {
|
|||
|
||||
#define BRW_EU_MAX_INSN_STACK 5
|
||||
|
||||
/* A helper for accessing the last instruction emitted. This makes it easy
|
||||
* to set various bits on an instruction without having to create temporary
|
||||
* variable and assign the emitted instruction to those.
|
||||
*/
|
||||
#define brw_last_inst (&p->store[p->nr_insn - 1])
|
||||
|
||||
struct brw_compile {
|
||||
struct brw_instruction *store;
|
||||
int store_size;
|
||||
|
|
Loading…
Reference in New Issue