anv/cmd_buffer: Add an anv_genX_call macro
This is copied and pasted from the similar macro we added to ISL. Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com> Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
This commit is contained in:
parent
ab7543b13d
commit
c180c2c868
|
@ -314,24 +314,34 @@ VkResult anv_ResetCommandBuffer(
|
||||||
return anv_cmd_buffer_reset(cmd_buffer);
|
return anv_cmd_buffer_reset(cmd_buffer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#define anv_genX_call(devinfo, func, ...) \
|
||||||
|
switch ((devinfo)->gen) { \
|
||||||
|
case 7: \
|
||||||
|
if ((devinfo)->is_haswell) { \
|
||||||
|
gen75_##func(__VA_ARGS__); \
|
||||||
|
} else { \
|
||||||
|
gen7_##func(__VA_ARGS__); \
|
||||||
|
} \
|
||||||
|
break; \
|
||||||
|
case 8: \
|
||||||
|
gen8_##func(__VA_ARGS__); \
|
||||||
|
break; \
|
||||||
|
case 9: \
|
||||||
|
gen9_##func(__VA_ARGS__); \
|
||||||
|
break; \
|
||||||
|
case 10: \
|
||||||
|
gen10_##func(__VA_ARGS__); \
|
||||||
|
break; \
|
||||||
|
default: \
|
||||||
|
assert(!"Unknown hardware generation"); \
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
anv_cmd_buffer_emit_state_base_address(struct anv_cmd_buffer *cmd_buffer)
|
anv_cmd_buffer_emit_state_base_address(struct anv_cmd_buffer *cmd_buffer)
|
||||||
{
|
{
|
||||||
switch (cmd_buffer->device->info.gen) {
|
anv_genX_call(&cmd_buffer->device->info,
|
||||||
case 7:
|
cmd_buffer_emit_state_base_address,
|
||||||
if (cmd_buffer->device->info.is_haswell)
|
cmd_buffer);
|
||||||
return gen75_cmd_buffer_emit_state_base_address(cmd_buffer);
|
|
||||||
else
|
|
||||||
return gen7_cmd_buffer_emit_state_base_address(cmd_buffer);
|
|
||||||
case 8:
|
|
||||||
return gen8_cmd_buffer_emit_state_base_address(cmd_buffer);
|
|
||||||
case 9:
|
|
||||||
return gen9_cmd_buffer_emit_state_base_address(cmd_buffer);
|
|
||||||
case 10:
|
|
||||||
return gen10_cmd_buffer_emit_state_base_address(cmd_buffer);
|
|
||||||
default:
|
|
||||||
unreachable("unsupported gen\n");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void anv_CmdBindPipeline(
|
void anv_CmdBindPipeline(
|
||||||
|
|
Loading…
Reference in New Issue