From a7f9b915aeade96d8ca58d70a1f1d42cd6a16e3d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= <jfonseca@vmware.com>
Date: Sun, 16 Aug 2009 10:02:17 +0100
Subject: llvmpipe: Shader function arguments don't alias.

---
 src/gallium/drivers/llvmpipe/lp_state_fs.c | 2 ++
 1 file changed, 2 insertions(+)

(limited to 'src/gallium')

diff --git a/src/gallium/drivers/llvmpipe/lp_state_fs.c b/src/gallium/drivers/llvmpipe/lp_state_fs.c
index c148a9f..b9bb7ab 100644
--- a/src/gallium/drivers/llvmpipe/lp_state_fs.c
+++ b/src/gallium/drivers/llvmpipe/lp_state_fs.c
@@ -88,6 +88,8 @@ shader_generate(struct llvmpipe_screen *screen,
 
    shader->function = LLVMAddFunction(screen->module, "shader", func_type);
    LLVMSetFunctionCallConv(shader->function, LLVMCCallConv);
+   for(i = 0; i < Elements(arg_types); ++i)
+      LLVMAddAttribute(LLVMGetParam(shader->function, i), LLVMNoAliasAttribute);
 
    pos_ptr = LLVMGetParam(shader->function, 0);
    a0_ptr = LLVMGetParam(shader->function, 1);
-- 
cgit v1.1