Mesa (master): gallium/radeon: Only print a message for LLVM diagnostic errors

Tom Stellard tstellar at kemper.freedesktop.org
Wed Jul 2 19:26:40 UTC 2014


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

Author: Tom Stellard <thomas.stellard at amd.com>
Date:   Wed Jun 18 16:58:33 2014 -0400

gallium/radeon: Only print a message for LLVM diagnostic errors

We were printing messages for all diagnostic types, which was
spamming the console for some OpenCL programs.

---

 src/gallium/drivers/radeon/radeon_llvm_emit.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/radeon/radeon_llvm_emit.c b/src/gallium/drivers/radeon/radeon_llvm_emit.c
index 891781f..6a394b2 100644
--- a/src/gallium/drivers/radeon/radeon_llvm_emit.c
+++ b/src/gallium/drivers/radeon/radeon_llvm_emit.c
@@ -87,11 +87,13 @@ static void radeonDiagnosticHandler(LLVMDiagnosticInfoRef di, void *context) {
 	char *diaginfo_message;
 
 	diaginfo_message = LLVMGetDiagInfoDescription(di);
-	fprintf(stderr,"LLVM triggered Diagnostic Handler: %s\n", diaginfo_message);
 	LLVMDisposeMessage(diaginfo_message);
 
 	diagnosticflag = (unsigned int *)context;
-	*diagnosticflag = ((LLVMDSError == LLVMGetDiagInfoSeverity(di)) ? 1 : 0);
+	if (LLVMGetDiagInfoSeverity(di) == LLVMDSError) {
+		*diagnosticflag = 1;
+		fprintf(stderr,"LLVM triggered Diagnostic Handler: %s\n", diaginfo_message);
+	}
 }
 
 #endif




More information about the mesa-commit mailing list