From c108831d4451f624167d2c433282c6ac63541a79 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Fri, 1 Jun 2012 16:08:41 -0400 Subject: [PATCH] radeon/llvm: Emit 2 bytes for vertex fetch offsets --- src/gallium/drivers/r600/r600_shader.c | 2 ++ src/gallium/drivers/radeon/R600CodeEmitter.cpp | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index 5f3c76eafbb..8a80dba38a4 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -458,7 +458,9 @@ static int r600_vtx_from_byte_stream(struct r600_shader_ctx *ctx, vtx.num_format_all = bytes[bytes_read++]; vtx.format_comp_all = bytes[bytes_read++]; vtx.srf_mode_all = bytes[bytes_read++]; + /* offset is 2 bytes wide */ vtx.offset = bytes[bytes_read++]; + vtx.offset |= bytes[bytes_read++]; vtx.endian = bytes[bytes_read++]; if (r600_bytecode_add_vtx(ctx->bc, &vtx)) { diff --git a/src/gallium/drivers/radeon/R600CodeEmitter.cpp b/src/gallium/drivers/radeon/R600CodeEmitter.cpp index fdc79a67499..8715f1133e8 100644 --- a/src/gallium/drivers/radeon/R600CodeEmitter.cpp +++ b/src/gallium/drivers/radeon/R600CodeEmitter.cpp @@ -255,7 +255,7 @@ bool R600CodeEmitter::runOnMachineFunction(MachineFunction &MF) { emitByte(0); // offset - emitByte(0); + emitTwoBytes(0); // endian emitByte(0); -- 2.30.2