Mesa (master): r600g/llvm: Don't emit CALL_FS for vertex shaders

Tom Stellard tstellar at kemper.freedesktop.org
Mon May 6 17:59:02 UTC 2013


Module: Mesa
Branch: master
Commit: e917ed96ae38fc382bac50a6536d761b829ac8cd
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e917ed96ae38fc382bac50a6536d761b829ac8cd

Author: Tom Stellard <thomas.stellard at amd.com>
Date:   Fri May  3 11:15:55 2013 -0700

r600g/llvm: Don't emit CALL_FS for vertex shaders

The LLVM backend takes care of this now.

---

 src/gallium/drivers/r600/r600_shader.c       |   16 +++++++++-------
 src/gallium/drivers/radeon/LLVM_REVISION.txt |    2 +-
 2 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c
index 9afd57f..b3b124e 100644
--- a/src/gallium/drivers/r600/r600_shader.c
+++ b/src/gallium/drivers/r600/r600_shader.c
@@ -1371,13 +1371,6 @@ static int r600_shader_from_tgsi(struct r600_screen *rscreen,
 	for (i = 0; i < TGSI_FILE_COUNT; i++) {
 		ctx.file_offset[i] = 0;
 	}
-	if (ctx.type == TGSI_PROCESSOR_VERTEX) {
-		ctx.file_offset[TGSI_FILE_INPUT] = 1;
-		r600_bytecode_add_cfinst(ctx.bc, CF_OP_CALL_FS);
-	}
-	if (ctx.type == TGSI_PROCESSOR_FRAGMENT && ctx.bc->chip_class >= EVERGREEN) {
-		ctx.file_offset[TGSI_FILE_INPUT] = evergreen_gpr_count(&ctx);
-	}
 
 #ifdef R600_USE_LLVM
 	if (use_llvm && ctx.info.indirect_files && (ctx.info.indirect_files & (1 << TGSI_FILE_CONSTANT)) != ctx.info.indirect_files) {
@@ -1387,6 +1380,15 @@ static int r600_shader_from_tgsi(struct r600_screen *rscreen,
 		use_llvm = 0;
 	}
 #endif
+	if (ctx.type == TGSI_PROCESSOR_VERTEX) {
+		ctx.file_offset[TGSI_FILE_INPUT] = 1;
+		if (!use_llvm) {
+			r600_bytecode_add_cfinst(ctx.bc, CF_OP_CALL_FS);
+		}
+	}
+	if (ctx.type == TGSI_PROCESSOR_FRAGMENT && ctx.bc->chip_class >= EVERGREEN) {
+		ctx.file_offset[TGSI_FILE_INPUT] = evergreen_gpr_count(&ctx);
+	}
 	ctx.use_llvm = use_llvm;
 
 	if (use_llvm) {
diff --git a/src/gallium/drivers/radeon/LLVM_REVISION.txt b/src/gallium/drivers/radeon/LLVM_REVISION.txt
index 0b998d4..d1939fd 100644
--- a/src/gallium/drivers/radeon/LLVM_REVISION.txt
+++ b/src/gallium/drivers/radeon/LLVM_REVISION.txt
@@ -1 +1 @@
- at 180753
+ at 181223




More information about the mesa-commit mailing list