Commit faaca237 authored by Kenneth Graunke's avatar Kenneth Graunke
Browse files

i965/fs: Make lower_load_payload etc. appear in INTEL_DEBUG=optimizer.

In order to support calling lower_load_payload() inside a condition,
this patch makes OPT() a statement expression:

https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html

We recently did the equivalent change in the vec4 backend (commit
9b8bd677

).
Signed-off-by: default avatarKenneth Graunke <kenneth@whitecape.org>
Reviewed-by: default avatarMatt Turner <mattst88@gmail.com>
Acked-by: default avatarJason Ekstrand <jason.ekstrand@intel.com>
parent a4ab08bf
......@@ -3543,7 +3543,7 @@ fs_visitor::optimize()
assign_constant_locations();
demote_pull_constants();
#define OPT(pass, args...) do { \
#define OPT(pass, args...) ({ \
pass_num++; \
bool this_progress = pass(args); \
\
......@@ -3556,7 +3556,8 @@ fs_visitor::optimize()
} \
\
progress = progress || this_progress; \
} while (false)
this_progress; \
})
if (unlikely(INTEL_DEBUG & DEBUG_OPTIMIZER)) {
char filename[64];
......@@ -3568,10 +3569,11 @@ fs_visitor::optimize()
bool progress;
int iteration = 0;
int pass_num = 0;
do {
progress = false;
pass_num = 0;
iteration++;
int pass_num = 0;
OPT(remove_duplicate_mrf_writes);
......@@ -3590,11 +3592,13 @@ fs_visitor::optimize()
OPT(compact_virtual_grfs);
} while (progress);
if (lower_load_payload()) {
pass_num = 0;
if (OPT(lower_load_payload)) {
split_virtual_grfs();
register_coalesce();
compute_to_mrf();
dead_code_eliminate();
OPT(register_coalesce);
OPT(compute_to_mrf);
OPT(dead_code_eliminate);
}
lower_uniform_pull_constant_loads();
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment