summaryrefslogtreecommitdiff
path: root/rtl/gfx/gfx_sp_swizzle.sv
blob: d07d93418d740ced59466e9e6465ad300587b5bf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
`include "gfx/gfx_defs.sv"

module gfx_sp_swizzle
(
	input  logic         clk,

	input  vec4          in,
	input  shuffler_deco deco,
	input  logic         stall,

	output vec4          out
);

	always_ff @(posedge clk)
		if (!stall)
			for (integer i = 0; i < `FLOATS_PER_VEC; ++i)
				out[i] <= in[deco.swizzle_op[i]];

endmodule