Re: [Mesa-dev] [PATCH] R600: Do not fold single instruction with more that 3 kcache read

2013-02-13 Thread Tom Stellard
On Tue, Feb 12, 2013 at 10:45:27PM +0100, Vincent Lejeune wrote: > It fixes around 100 tfb piglit tests and 16 glean tests. > > NOTE: This is a candidate for the Mesa stable branch. Reviewed-by: Tom Stellard > --- > lib/Target/R600/AMDILISelDAGToDAG.cpp | 2 ++ >

Re: [Mesa-dev] [PATCH] R600/SI: Fix INTERP_CONST.

2013-02-13 Thread Tom Stellard
On Wed, Feb 13, 2013 at 04:34:23PM +0100, Michel Dänzer wrote: > From: Michel Dänzer > > The important fix is that the constant interpolation value is stored in the > parameter slot P0, which is encoded as 2. > > In addition, pass the parameter slot as an operand to V_INTERP_MOV_F32 > instead of

Re: [Mesa-dev] [PATCH v2] R600/SI: Fix INTERP_CONST.

2013-02-13 Thread Tom Stellard
_MOV_F32 > instead of hardcoding it there, and add a special register class for the > parameter slots for type checking and pretty dumping. > > NOTE: This is a candidate for the Mesa stable branch. > > Signed-off-by: Michel Dänzer Reviewed-by: Tom Stellard > --- > >

Re: [Mesa-dev] [PATCH 07/12] R600/SI: move *_Helper definitions to SIInstrFormat.td

2013-02-13 Thread Tom Stellard
On Wed, Feb 13, 2013 at 10:18:23AM +0100, Christian König wrote: > Am 13.02.2013 01:20, schrieb Tom Stellard: > > On Tue, Feb 12, 2013 at 06:13:19PM +0100, Christian König wrote: > >> From: Christian König > >> > > SIInstrFormats.td should contain the instruc

Re: [Mesa-dev] [PATCH 10/12] R600/SI: cleanup literal handling

2013-02-13 Thread Tom Stellard
On Wed, Feb 13, 2013 at 10:34:12AM +0100, Christian König wrote: > Am 13.02.2013 01:39, schrieb Tom Stellard: > > [SNIP] > > > > Way back when I first started working on the backend I was using > > immediate operands in instructions defined to only uses registers, an

Re: [Mesa-dev] [PATCH 12/12] R600/SI: Add pattern to simplify i64 loading

2013-02-13 Thread Tom Stellard
On Tue, Feb 12, 2013 at 06:13:24PM +0100, Christian König wrote: > From: Christian König > > Signed-off-by: Christian König > --- > lib/Target/R600/SIInstrInfo.td|4 > lib/Target/R600/SIInstructions.td |5 + > 2 files changed, 9 insertions(+) > > diff --git a/lib/Target/R6

Re: [Mesa-dev] [PATCH 01/12] R600/structurizer: add class to find the Nearest Common Dominator

2013-02-13 Thread Tom Stellard
There's just the one cleanup on patch 10 that you mentioned, but otherwise the series looks good to me. Should we mark all these patches as candidates for the stable branch? For the series: Reviewed-by: Tom Stellard On Tue, Feb 12, 2013 at 06:13:13PM +0100, Christian König wrote: &

Re: [Mesa-dev] [PATCH 12/12] R600/SI: Add pattern to simplify i64 loading

2013-02-13 Thread Tom Stellard
On Wed, Feb 13, 2013 at 11:24:24AM -0500, Tom Stellard wrote: > On Tue, Feb 12, 2013 at 06:13:24PM +0100, Christian König wrote: > > From: Christian König > > > > Signed-off-by: Christian König > > --- > > lib/Target/R600/SIInstrInfo.td|4 >

[Mesa-dev] [PATCH 1/5] R600: Fix tracking of implicit defs in the IndirectAddressing pass

2013-02-13 Thread Tom Stellard
From: Tom Stellard In some cases, we were losing track of live implicit registers which was creating dead defs and causing the scheduler to produce invalid code. NOTE: This is a candidate for the Mesa stable branch. --- lib/Target/R600/AMDGPUIndirectAddressing.cpp | 35

[Mesa-dev] [PATCH 2/5] R600: Fix scheduler crash caused by invalid MachinePointerInfo

2013-02-13 Thread Tom Stellard
From: Tom Stellard Kernel function arguments are lowered to loads from the PARAM_I address space. When creating these load instructions, we were initializing their MachinePointerInfo with an Arguement object that was not attached to any function. This was causing the MachineScheduler to crash

[Mesa-dev] [PATCH 3/5] R600: Mark all members of the TRegMem register class as reserved

2013-02-13 Thread Tom Stellard
From: Tom Stellard This stops the Machine Verifier from complaining about uses of undefined physical registers. NOTE: This is a candidate for the Mesa stable branch. --- lib/Target/R600/R600RegisterInfo.cpp |6 ++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/lib

[Mesa-dev] [PATCH 4/5] R600: Add AR_X to the R600_TReg_X register class.

2013-02-13 Thread Tom Stellard
From: Tom Stellard NOTE: This is a candidate for the Mesa stable branch. --- lib/Target/R600/R600RegisterInfo.td |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/lib/Target/R600/R600RegisterInfo.td b/lib/Target/R600/R600RegisterInfo.td index 3812eb7..a7d847a 100644

[Mesa-dev] [PATCH 5/5] R600: initial scheduler code

2013-02-13 Thread Tom Stellard
single VLIW group). Also it tries to reduce clause switching by grouping instruction of the same kind (ALU/FETCH/CF) together. Vincent Lejeune: - Support for VLIW4 Slot assignement - Recomputation of ScheduleDAG to get more parallelism opportunities Tom Stellard: - Fix assertion failure when trying

Re: [Mesa-dev] [PATCH] radeonsi: Fix up and enable flat shading.

2013-02-13 Thread Tom Stellard
On Wed, Feb 13, 2013 at 04:34:24PM +0100, Michel Dänzer wrote: > From: Michel Dänzer > > Requires corresponding LLVM R600 backend fix to work correctly, but even > without that it doesn't hang anymore. > > 13 more little piglits. > > NOTE: This is a candidate for the 9.1 branch. Since this cha

[Mesa-dev] [PATCH 1/2] r600g: Add $(DEFINES) to AM_CXXFLAGS

2013-02-13 Thread Tom Stellard
From: Tom Stellard This way llvm_wrapper.cpp is compiled with -DHAVE_LLVM=0x --- src/gallium/drivers/r600/Makefile.am | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/r600/Makefile.am b/src/gallium/drivers/r600/Makefile.am index 6f48b56..e1c8574

[Mesa-dev] [PATCH 2/2] radeon/llvm: Fix build with LLVM 3.3

2013-02-13 Thread Tom Stellard
From: Tom Stellard --- src/gallium/drivers/r600/llvm_wrapper.cpp | 4 src/gallium/drivers/radeon/radeon_llvm_emit.cpp | 9 - 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/r600/llvm_wrapper.cpp b/src/gallium/drivers/r600/llvm_wrapper.cpp

Re: [Mesa-dev] [PATCH 1/3] R600/SI: Add pattern for sign extension of i1 to i32.

2013-02-14 Thread Tom Stellard
s for these. For the series: Reviewed-by: Tom Stellard > --- > lib/Target/R600/SIInstructions.td | 5 + > 1 file changed, 5 insertions(+) > > diff --git a/lib/Target/R600/SIInstructions.td > b/lib/Target/R600/SIInstructions.td > index d4f7b37..ad1eff7 100644 > --- a/

Re: [Mesa-dev] [PATCH v2] R600/SI: Fix INTERP_CONST.

2013-02-14 Thread Tom Stellard
On Thu, Feb 14, 2013 at 06:07:16PM +0100, Michel Dänzer wrote: > On Mit, 2013-02-13 at 17:51 +0100, Christian König wrote: > > Am 13.02.2013 17:07, schrieb Michel Dänzer: > > > From: Michel Dänzer > > > > > > The important fix is that the constant interpolation value is stored in > > > the > > >

Re: [Mesa-dev] [PATCH 1/2] R600: Increase number of ArrayBase Reg to 32

2013-02-14 Thread Tom Stellard
On Thu, Feb 14, 2013 at 05:47:11PM +0100, Vincent Lejeune wrote: Reviewed-by: Tom Stellard > --- > lib/Target/R600/R600RegisterInfo.td | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/lib/Target/R600/R600RegisterInfo.td > b/lib/Target/R600/R

Re: [Mesa-dev] [PATCH 2/2] R600: Support for TBO

2013-02-14 Thread Tom Stellard
On Thu, Feb 14, 2013 at 05:47:12PM +0100, Vincent Lejeune wrote: Reviewed-by: Tom Stellard > NOTE: This is a candidate for the Mesa stable branch. > --- > lib/Target/R600/MCTargetDesc/R600MCCodeEmitter.cpp | 3 +- > lib/Target/R600/R600Instructions.td

Re: [Mesa-dev] [PATCH v3] R600/SI: Fix int_SI_fs_interp_constant

2013-02-14 Thread Tom Stellard
; > > > NOTE: This is a candidate for the Mesa stable branch. > > > > Signed-off-by: Michel Dänzer > Reviewed-by: Christian König Reviewed-by: Tom Stellard > > > --- > > > > v3: Use operand class instead of register class, drop SI_INTERP_CONST > >

Re: [Mesa-dev] [PATCH 01/12] R600/structurizer: add class to find the Nearest Common Dominator

2013-02-14 Thread Tom Stellard
On Thu, Feb 14, 2013 at 06:34:14PM +0100, Christian König wrote: > From: Christian König > > Signed-off-by: Christian König For the series: Reviewed-by: Tom Stellard Don't forget to mark these as candidates for the stable branch. > --- > lib/Target/R600/AMDGPUStruc

Re: [Mesa-dev] [PATCH 1/4] r600g/llvm: Add support for UBO

2013-02-14 Thread Tom Stellard
On Thu, Feb 14, 2013 at 05:48:33PM +0100, Vincent Lejeune wrote: For the series: Reviewed-by: Tom Stellard > NOTE: This is a candidate for the Mesa stable branch. > --- > src/gallium/drivers/r600/r600_llvm.c| 6 +- > src/gallium/drivers/radeon/radeon_setup

Re: [Mesa-dev] r600g: status of my work on the shader optimization

2013-02-15 Thread Tom Stellard
On Fri, Feb 15, 2013 at 03:00:24PM +0400, Vadim Girlin wrote: > On 02/14/2013 02:42 PM, Christian König wrote: > >Hi Vadim, > > > >nice work, I think you've made quite a progress here, but on the other > >hand it should be clear that the LLVM backend is the future and we > >should concentrate on th

Re: [Mesa-dev] [PATCH 2/2] radeon/llvm: Fix build with LLVM 3.3

2013-02-16 Thread Tom Stellard
On Sat, Feb 16, 2013 at 12:51:34PM -0800, Matt Turner wrote: > On Wed, Feb 13, 2013 at 1:43 PM, Tom Stellard wrote: > > From: Tom Stellard > > > > --- > > Candidate for the stable branch as well? No, only LLVM 3.2 is supported

Re: [Mesa-dev] [PATCH 5/6] R600: Remove LowerConstCopyPass and lower CONST_COPY right after ISel.

2013-02-19 Thread Tom Stellard
On Mon, Feb 18, 2013 at 05:27:29PM +0100, Vincent Lejeune wrote: > Maintaining CONST_COPY Instructions until Pre Emit may prevent some ifcvt case > and taking them in account for scheduling is difficult for no real benefit. > --- > lib/Target/R600/AMDGPU.h| 1 - > lib/Target/R600

Re: [Mesa-dev] [PATCH 6/6] R600: initial scheduler code

2013-02-19 Thread Tom Stellard
ions to be packed together in a single VLIW group). > Also it tries to reduce clause switching by grouping instruction of the > same kind (ALU/FETCH/CF) together. > > Vincent Lejeune: > - Support for VLIW4 Slot assignement > - Recomputation of ScheduleDAG to get more parallelism op

Re: [Mesa-dev] [PATCH 1/6] R600: Use MUL_IEEE for trig/fdiv intrinsic

2013-02-19 Thread Tom Stellard
On Mon, Feb 18, 2013 at 05:27:25PM +0100, Vincent Lejeune wrote: Reviewed-by: Tom Stellard > --- > lib/Target/R600/R600Instructions.td | 8 > test/CodeGen/R600/fdiv.v4f32.ll | 8 > 2 files changed, 8 insertions(+), 8 deletions(-) > > diff --git

Re: [Mesa-dev] [PATCH 2/6] R600: CONST_ADDRESS node is not marked as mayLoad anymore

2013-02-19 Thread Tom Stellard
On Mon, Feb 18, 2013 at 05:27:26PM +0100, Vincent Lejeune wrote: > mayLoad complexify scheduling and does not bring any usefull info > as the location is not writeable at all. Reviewed-by: Tom Stellard > --- > lib/Target/R600/R600Instructions.td | 2 +- > 1 file changed, 1

Re: [Mesa-dev] [PATCH 3/6] R600: Turn BUILD_VECTOR into Reg_Sequence

2013-02-19 Thread Tom Stellard
On Mon, Feb 18, 2013 at 05:27:27PM +0100, Vincent Lejeune wrote: Reviewed-by: Tom Stellard > --- > lib/Target/R600/AMDILISelDAGToDAG.cpp | 29 + > 1 file changed, 29 insertions(+) > > diff --git a/lib/Target/R600/AMDILISelDAGToDAG.cpp >

Re: [Mesa-dev] [PATCH 4/6] R600: Fix for Unigine when MachineSched is enabled

2013-02-19 Thread Tom Stellard
On Mon, Feb 18, 2013 at 05:27:28PM +0100, Vincent Lejeune wrote: Reviewed-by: Tom Stellard > --- > lib/Target/R600/R600Instructions.td | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/lib/Target/R600/R600Instructions.td > b/lib/Target/R600/R600Instructions.td > i

Re: [Mesa-dev] [PATCH 1/8] R600/SI: cleanup SIInstrInfo.td and SIInstrFormat.td

2013-02-19 Thread Tom Stellard
Hi Christian, >From now on can you cc llvm-comm...@cs.uiuc.edu when you submit a patch. Thanks, Tom On Tue, Feb 19, 2013 at 02:54:23PM +0100, Christian König wrote: > From: Christian König > > Those two files got mixed up. > > Signed-off-by: Christian König > --- > lib/Target/R600/SIInstrF

Re: [Mesa-dev] [PATCH] R600/SI: Make sure M0 is loaded for V_INTERP_MOV_F32

2013-02-20 Thread Tom Stellard
On Wed, Feb 20, 2013 at 12:13:43PM +0100, Michel Dänzer wrote: > From: Michel Dänzer > > NOTE: This is a candidate for the Mesa stable branch. > > Signed-off-by: Michel Dänzer Reviewed-by: Tom Stellard > --- > > Not sure why the lack of this didn't seem to cause

[Mesa-dev] [PATCH] clover: Fix build with LLVM 3.3

2013-02-20 Thread Tom Stellard
From: Tom Stellard --- .../state_trackers/clover/llvm/invocation.cpp | 47 --- 1 files changed, 39 insertions(+), 8 deletions(-) diff --git a/src/gallium/state_trackers/clover/llvm/invocation.cpp b/src/gallium/state_trackers/clover/llvm/invocation.cpp index 0bd8e22

Re: [Mesa-dev] [PATCH] r600g: don't enable ReZ mode on evergreen

2013-02-20 Thread Tom Stellard
t; This is a candidate for the 9.1 branch. > > Signed-off-by: Alex Deucher Tested-by: Tom Stellard > --- This also fixes a lockup with Civ4 and wine on my Juniper. -Tom > src/gallium/drivers/r600/evergreen_state.c |5 - > 1 files changed, 4 insertions(+), 1 deletions(

Re: [Mesa-dev] [PATCH 1/8] R600/SI: cleanup SIInstrInfo.td and SIInstrFormat.td

2013-02-21 Thread Tom Stellard
With the changes Michel suggested, this series is: Reviewed-by: Tom Stellard Are any of these candidates for the stable branch? -Tom On Tue, Feb 19, 2013 at 02:54:23PM +0100, Christian König wrote: > From: Christian König > > Those two files got mixed up. > > Signed-of

Re: [Mesa-dev] [PATCH 1/8] R600/SI: cleanup SIInstrInfo.td and SIInstrFormat.td

2013-02-21 Thread Tom Stellard
On Thu, Feb 21, 2013 at 09:06:36AM -0500, Tom Stellard wrote: > With the changes Michel suggested, this series is: > > Reviewed-by: Tom Stellard > > Are any of these candidates for the stable branch? > Please ignore this, I overlooked v2 of this series. I will review t

Re: [Mesa-dev] [PATCH 14/14] R600/SI: inline V_ADD|SUB_F32 patterns

2013-02-21 Thread Tom Stellard
On Wed, Feb 20, 2013 at 06:47:00PM +0100, Christian König wrote: > From: Christian König > > Signed-off-by: Christian König > --- > lib/Target/R600/SIInstructions.td | 14 +- > 1 file changed, 5 insertions(+), 9 deletions(-) > > diff --git a/lib/Target/R600/SIInstructions.td > b

Re: [Mesa-dev] [PATCH 01/14] R600/SI: cleanup SIInstrInfo.td and SIInstrFormat.td

2013-02-21 Thread Tom Stellard
For the series: Reviewed-by: Tom Stellard On Wed, Feb 20, 2013 at 06:46:47PM +0100, Christian König wrote: > From: Christian König > > Those two files got mixed up. > > Signed-off-by: Christian König > --- > lib/Target/R600/SII

Re: [Mesa-dev] [PATCH] clover: Fix build with LLVM 3.3

2013-02-21 Thread Tom Stellard
Which revisions of Clang and LLVM are you using? -Tom > --Aaron > > On Wed, Feb 20, 2013 at 4:27 PM, Tom Stellard wrote: > > > From: Tom Stellard > > > > --- > > .../state_trackers/clover/llvm/invocation.cpp | 47 > > -

Re: [Mesa-dev] [PATCH 4/6] R600: Fix for Unigine when MachineSched is enabled

2013-02-21 Thread Tom Stellard
On Mon, Feb 18, 2013 at 05:27:28PM +0100, Vincent Lejeune wrote: > --- This fixes the for-loop.cl piglit test, so I've pushed this patch and backported it to the stable branch. -Tom > lib/Target/R600/R600Instructions.td | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/lib/Target/R600/

Re: [Mesa-dev] [PATCH] clover: Fix build with LLVM 3.3

2013-02-21 Thread Tom Stellard
On Thu, Feb 21, 2013 at 10:02:34AM -0600, Aaron Watry wrote: > On Thu, Feb 21, 2013 at 8:33 AM, Tom Stellard wrote: > > > On Thu, Feb 21, 2013 at 08:25:20AM -0600, Aaron Watry wrote: > > > Hi Tom, > > > > > > Mesa+Clover does indeed build against master l

Re: [Mesa-dev] [PATCH 3/4] R600/SI: Initial support for LDS/GDS instructions

2013-02-22 Thread Tom Stellard
On Fri, Feb 22, 2013 at 05:02:12PM +0100, Michel Dänzer wrote: > From: Michel Dänzer > > > Signed-off-by: Michel Dänzer > --- > lib/Target/R600/SIInstrFormats.td | 24 > lib/Target/R600/SIInstrInfo.td| 22 ++ > lib/Target/R600/SIInstructions.td

Re: [Mesa-dev] [PATCH 4/4] R600/SI: Support AMDGPU.ddx/y intrinsics

2013-02-22 Thread Tom Stellard
This patch has my r-b, but I think we need a better solution for representing inline constants. See my comment below. On Fri, Feb 22, 2013 at 05:02:13PM +0100, Michel Dänzer wrote: > From: Michel Dänzer > > Use LDS for calculating the deltas between neighbouring pixels. Not sure the > sign of t

Re: [Mesa-dev] [PATCH 1/4] R600/SI: Add intrinsics for texture sampling with user derivatives

2013-02-22 Thread Tom Stellard
On Fri, Feb 22, 2013 at 05:02:10PM +0100, Michel Dänzer wrote: > From: Michel Dänzer > > > Signed-off-by: Michel Dänzer Reviewed-by: Tom Stellard > --- > lib/Target/R600/SIInstructions.td | 7 ++- > lib/Target/R600/SIIntrinsics.td | 1 + > 2 files changed, 7 i

Re: [Mesa-dev] [PATCH 2/4] R600/SI: Handle VGPR256 in copyPhysReg

2013-02-22 Thread Tom Stellard
On Fri, Feb 22, 2013 at 05:02:11PM +0100, Michel Dänzer wrote: > From: Michel Dänzer > > > Signed-off-by: Michel Dänzer Reviewed-by: Tom Stellard > --- > lib/Target/R600/SIInstrInfo.cpp | 28 +++- > 1 file changed, 27 insertions(+), 1 deletion(-)

Re: [Mesa-dev] [PATCH 1/3] radeonsi: Refactor packing of texture coordinates

2013-02-22 Thread Tom Stellard
On Fri, Feb 22, 2013 at 05:02:37PM +0100, Michel Dänzer wrote: > From: Michel Dänzer > > The number of coordinates to pack will be useful for other address parameters > as well. > > Signed-off-by: Michel Dänzer These patches depend on LLVM changes, and I would like to track this somehow. Do yo

[Mesa-dev] [PATCH] clover: Fix build with LLVM 3.3 v2

2013-02-22 Thread Tom Stellard
From: Tom Stellard v2: - Fix order that the clang libraries are passed to the linker to avoid missing symbol errors. --- .../state_trackers/clover/llvm/invocation.cpp | 47 --- src/gallium/targets/opencl/Makefile.am |2 +- 2 files changed, 40

Re: [Mesa-dev] [PATCH] clover: Fix build with LLVM 3.3

2013-02-22 Thread Tom Stellard
I've sent a v2 of this patch that should fix this. The dependencies between clang libraries changed so I had to change the order that they were passed to the linker. -Tom > --Aaron > > On Wed, Feb 20, 2013 at 4:27 PM, Tom Stellard wrote: > > > From: Tom Stellard >

Re: [Mesa-dev] Khronos Conformance test

2013-02-25 Thread Tom Stellard
On Mon, Feb 25, 2013 at 02:13:59PM +, Alle Mahesh wrote: > Hi, > > > We have run the Khronos test suite on for OpenGLES2.0. There are few failures > in the GL tests because of the difference in the images generated. > > We have found that the images generated using our development board ar

[Mesa-dev] R600 backend patch avaiable for Mesa 9.1

2013-03-01 Thread Tom Stellard
Hi, I've generated a patch from the master branch of my llvm tree (http://cgit.freedesktop.org/~tstellar/llvm/) that can be applied against the LLVM 3.2 code base to add the R600 backend. For the Mesa 9.1 release, this patch is required in order to use the radeonsi driver, experimental compute su

Re: [Mesa-dev] [PATCH 2/6] r600g: cleanup #include recursion between r600_pipe.h and evergreen_compute.h

2013-03-04 Thread Tom Stellard
On Fri, Mar 01, 2013 at 05:55:31PM +0100, Marek Olšák wrote: Patches 2-4 are: Reviewed-by: Tom Stellard Thanks for working on this, it is a nice improvement. -Tom > --- > src/gallium/drivers/r600/compute_memory_pool.c|1 + > src/gallium/drivers/r600/evergreen_

Re: [Mesa-dev] [PATCH 1/7] radeonsi: switch to v*i8 for resources and samplers

2013-03-05 Thread Tom Stellard
On Tue, Mar 05, 2013 at 03:27:19PM +0100, Christian König wrote: > From: Christian König > > Signed-off-by: Christian König This series has my r-b, but I'd like to test it on r600, before you push it. -Tom > --- > src/gallium/drivers/radeonsi/radeonsi_shader.c | 31 > +

Re: [Mesa-dev] [PATCH 1/7] radeonsi: switch to v*i8 for resources and samplers

2013-03-06 Thread Tom Stellard
On Tue, Mar 05, 2013 at 07:51:02PM +0100, Tom Stellard wrote: > On Tue, Mar 05, 2013 at 03:27:19PM +0100, Christian König wrote: > > From: Christian König > > > > Signed-off-by: Christian König > > This series has my r-b, but I'd like to test it on r600, >

Re: [Mesa-dev] [PATCH] R600/SI: Use source scheduler

2013-03-07 Thread Tom Stellard
le some shaders with the > default scheduler because it ends up trying to spill registers, which > we don't support yet (and which is probably a bad idea in general for > performance if it can be avoided). > > NOTE: This is a candidate for the Mesa stable branch. > Revi

[Mesa-dev] [PATCH 1/7] r600g/llvm: Move llvm wrapper functions into the radeon directory

2013-03-07 Thread Tom Stellard
From: Tom Stellard --- src/gallium/drivers/r600/Makefile.am|6 +-- src/gallium/drivers/r600/Makefile.sources |1 - src/gallium/drivers/r600/evergreen_compute.c|6 +- src/gallium/drivers/r600/llvm_wrapper.cpp | 61 -- src/gallium

[Mesa-dev] [PATCH 3/7] radeon/llvm: Implement radeon_llvm_get_num_kernels() using the C API

2013-03-07 Thread Tom Stellard
From: Tom Stellard --- src/gallium/drivers/radeon/radeon_llvm_util.cpp |7 +-- 1 files changed, 1 insertions(+), 6 deletions(-) diff --git a/src/gallium/drivers/radeon/radeon_llvm_util.cpp b/src/gallium/drivers/radeon/radeon_llvm_util.cpp index 5f63ed7..fcfb6d8 100644 --- a/src

[Mesa-dev] [PATCH 4/7] radeon/llvm: Implement radeon_llvm_get_kernel_module() using the C API

2013-03-07 Thread Tom Stellard
From: Tom Stellard --- src/gallium/drivers/radeon/Makefile.am |1 + src/gallium/drivers/radeon/radeon_llvm_util.cpp | 21 ++--- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/src/gallium/drivers/radeon/Makefile.am b/src/gallium/drivers/radeon

[Mesa-dev] [PATCH 5/7] radeon/llvm: Optimize radeon_llvm_strip_unused_kernels()

2013-03-07 Thread Tom Stellard
From: Tom Stellard Just delete unused kernels rather than marking them as internal and running the GlobalDCE pass. Also implement this function in C and inline it into radeon_llvm_get_kernel_module() --- src/gallium/drivers/radeon/radeon_llvm_util.cpp | 26 -- src/gallium

[Mesa-dev] [PATCH 2/7] radeon/llvm: Implement radeon_llvm_parse_bitcode() using C API

2013-03-07 Thread Tom Stellard
From: Tom Stellard Also make the function static since it is not used anywhere else. --- src/gallium/drivers/radeon/radeon_llvm_util.cpp | 18 +++--- src/gallium/drivers/radeon/radeon_llvm_util.h |1 - 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src

[Mesa-dev] [PATCH 6/7] radeon/llvm: Make radeon_llvm_util.cpp a C file

2013-03-07 Thread Tom Stellard
From: Tom Stellard All the functions in this file are now implemented in C. --- src/gallium/drivers/radeon/Makefile.sources |6 +- src/gallium/drivers/radeon/radeon_llvm_util.c | 49 ++ src/gallium/drivers/radeon/radeon_llvm_util.cpp | 62

[Mesa-dev] [PATCH 7/7] radeon/llvm: Add missing license headers

2013-03-07 Thread Tom Stellard
From: Tom Stellard Signed-off-by: Tom Stellard --- src/gallium/drivers/radeon/radeon_llvm_util.c | 26 + src/gallium/drivers/radeon/radeon_llvm_util.h | 26 + 2 files changed, 52 insertions(+), 0 deletions(-) diff --git a/src/gallium/drivers

Re: [Mesa-dev] [PATCH] libclc: Fix libclc build for LLVM 3.3

2013-03-08 Thread Tom Stellard
On Fri, Mar 08, 2013 at 09:11:48AM -0600, Aaron Watry wrote: > LLVM moved a bunch of IR-related headers for version 3.3. > > This fixes the libclc build to follow suit. > A fix for this has been sitting on the libclc mailing list for a weeks. I will try to update my branch. -Tom > --- > utils

[Mesa-dev] [PATCH 1/2] gallium: PIPE_COMPUTE_CAP_IR_TARGET - allow drivers to specify a processor

2013-03-08 Thread Tom Stellard
From: Tom Stellard This target string now contains four values instead of three. The old processor field (which was really being interpreted as arch) has been split into two fields: processor and arch. This allows drivers to pass a more a more detailed description of the hardware to compiler

[Mesa-dev] [PATCH 2/2] radeonsi: Add compute support

2013-03-08 Thread Tom Stellard
From: Tom Stellard --- This patch depends on the series I posted yesterday that moves llvm_wrapper.cpp into the radeon directory and re-implements it using the C API. It also requires the patches on the llvm-commits list that add support for buffer stores. src/gallium/drivers/radeon

[Mesa-dev] [PATCH] [libclc] configure: Enable building separate libraries for target variants

2013-03-12 Thread Tom Stellard
From: Tom Stellard --- configure.py | 119 - 1 files changed, 75 insertions(+), 44 deletions(-) diff --git a/configure.py b/configure.py index d861c24..dfd9a8f 100755 --- a/configure.py +++ b/configure.py @@ -68,6 +68,15 @@ llvm_clang

[Mesa-dev] [PATCH 1/2] gallium: PIPE_COMPUTE_CAP_IR_TARGET - allow drivers to specify a processor v2

2013-03-12 Thread Tom Stellard
From: Tom Stellard This target string now contains four values instead of three. The old processor field (which was really being interpreted as arch) has been split into two fields: processor and arch. This allows drivers to pass a more a more detailed description of the hardware to compiler

[Mesa-dev] [PATCH 2/2] radeonsi: Add compute support v2

2013-03-12 Thread Tom Stellard
From: Tom Stellard v2: - Only dump shaders when env variable is set. --- src/gallium/drivers/radeon/radeon_llvm_util.c |2 +- src/gallium/drivers/radeon/radeon_llvm_util.h |2 + src/gallium/drivers/radeonsi/Makefile.sources |1 + src/gallium/drivers/radeonsi

[Mesa-dev] Google Summer of Code ideas needed

2013-03-13 Thread Tom Stellard
ected last year was that the ideas page was not up to par, so if we want to participate in Google Summer of Code this year, it is important we have a good ideas page with lots of ideas. Thanks, Tom Stellard ___ mesa-dev mailing list mes

[Mesa-dev] [PATCH 1/4] gallium: PIPE_COMPUTE_CAP_IR_TARGET - allow drivers to specify a processor v2

2013-03-13 Thread Tom Stellard
From: Tom Stellard This target string now contains four values instead of three. The old processor field (which was really being interpreted as arch) has been split into two fields: processor and arch. This allows drivers to pass a more a more detailed description of the hardware to compiler

[Mesa-dev] [PATCH 2/4] radeonsi: Remove si_pm4_inval_vertex_cache()

2013-03-13 Thread Tom Stellard
From: Tom Stellard This function is a holdover from r600g and is identical to si_pm4_inval_texture_cache(), so it is not needed. --- src/gallium/drivers/radeonsi/radeonsi_pm4.c |6 -- src/gallium/drivers/radeonsi/radeonsi_pm4.h |1 - src/gallium/drivers/radeonsi/si_state_draw.c

[Mesa-dev] [PATCH 3/4] radeonsi: Use TCL1_ACTION_ENA when invalidating the texture cache

2013-03-13 Thread Tom Stellard
From: Tom Stellard --- src/gallium/drivers/radeonsi/radeonsi_pm4.c |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/src/gallium/drivers/radeonsi/radeonsi_pm4.c b/src/gallium/drivers/radeonsi/radeonsi_pm4.c index 9a884f7..4ea30f6 100644 --- a/src/gallium/drivers/radeonsi

[Mesa-dev] [PATCH 4/4] radeonsi: Add compute support v3

2013-03-13 Thread Tom Stellard
From: Tom Stellard v2: - Only dump shaders when env variable is set. v3: - Don't emit VGT registers --- src/gallium/drivers/radeon/radeon_llvm_util.c |2 +- src/gallium/drivers/radeon/radeon_llvm_util.h |2 + src/gallium/drivers/radeonsi/Makefile.sources |1 + src/ga

Re: [Mesa-dev] [PATCH] R600: Factorize code handling Const Read Port limitation

2013-03-13 Thread Tom Stellard
On Wed, Mar 13, 2013 at 09:12:41PM +0100, Vincent Lejeune wrote: > --- > lib/Target/R600/AMDILISelDAGToDAG.cpp| 34 ++ > lib/Target/R600/R600InstrInfo.cpp| 54 ++ > lib/Target/R600/R600InstrInfo.h | 3 ++ > lib/Target/R600/R600MachineScheduler.

Re: [Mesa-dev] [PATCH] R600: Lower clamp constant to constant

2013-03-13 Thread Tom Stellard
On Wed, Mar 13, 2013 at 10:26:38PM +0100, Vincent Lejeune wrote: > --- > lib/Target/R600/R600ISelLowering.cpp | 23 +++ > test/CodeGen/R600/clamp-constants.ll | 20 > 2 files changed, 43 insertions(+) > create mode 100644 test/CodeGen/R600/clamp-constants.

Re: [Mesa-dev] [PATCH] [libclc] configure: Enable building separate libraries for target variants

2013-03-14 Thread Tom Stellard
my other patches, I'll submit it upstream. > > --Aaron > > > On Tue, Mar 12, 2013 at 3:20 PM, Tom Stellard wrote: > > > From: Tom Stellard > > > > --- > > configure.py | 119 > > - &

Re: [Mesa-dev] [PATCH] R600: Factorize code handling Const Read Port limitation

2013-03-14 Thread Tom Stellard
On Wed, Mar 13, 2013 at 02:59:07PM -0700, Vincent Lejeune wrote: > I fixed the coding style issue. > The include was a debug leftover line, it shouldn't be there. > Reviewed-by: Tom Stellard > > - Mail original - > > De : Tom Stellard > > À : Vin

Re: [Mesa-dev] [PATCH 0/4] Indirect addressing for radeonsi

2013-03-15 Thread Tom Stellard
On Thu, Mar 14, 2013 at 04:49:35PM +0100, Christian König wrote: > Hi, > > as promised here is the mesa part of my indirect addressing patchset for > radeonsi. > > Based on the TGSI changes I've send out earlier today. > For the series: Reviewed-by: Tom Stellard &g

Re: [Mesa-dev] [PATCH] libclc: Add max() builtin function

2013-03-15 Thread Tom Stellard
On Thu, Mar 14, 2013 at 09:12:57PM -0500, Aaron Watry wrote: > Adds this function for both int and floating data types. > --- > generic/include/clc/clc.h |2 ++ > generic/include/clc/integer/max.h |2 ++ > generic/include/clc/integer/max.inc |1 + > generic/include/clc/math

Re: [Mesa-dev] libclc: Improve libclc handling of built-in functions

2013-03-15 Thread Tom Stellard
orrectly in the backend. For the series: Reviewed-by: Tom Stellard > > ___ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] Google Summer of Code ideas needed

2013-03-18 Thread Tom Stellard
On Mon, Mar 18, 2013 at 01:45:26PM -0700, Ian Romanick wrote: > On 03/13/2013 10:11 AM, Tom Stellard wrote: > > Hi, > > > > It's time again for Google Summer of Code, so we need to start updating > > the X.Org ideas page (http://www.x.org/wiki/SummerOfCodeIdeas)

Re: [Mesa-dev] [PATCH] R600: Use CONSTANT_BUFFER_0 address space for Implicit Parameters

2013-03-19 Thread Tom Stellard
On Sat, Mar 16, 2013 at 05:45:31PM +0100, Vincent Lejeune wrote: > It allows the backend to generate reads to constant cache which > are faster that VTX_READ. Hi Vincent, Is there a corresponding Mesa change that goes with this patch? -Tom > --- > lib/Target/R600/R600ISelLowering.cpp | 2 +- >

Re: [Mesa-dev] Google Summer of Code ideas needed

2013-03-19 Thread Tom Stellard
On Mon, Mar 18, 2013 at 03:07:06PM -0700, Jordan Justen wrote: > On Wed, Mar 13, 2013 at 10:11 AM, Tom Stellard wrote: > > - A brief description of the project > > - A difficulty rating (e.g. easy, medium, hard) > > - The skills / programming languages required > > GL

Re: [Mesa-dev] [PATCH] libclc: implement rotate builtin

2013-03-23 Thread Tom Stellard
On Sat, Mar 23, 2013 at 12:37:38PM -0500, Aaron Watry wrote: > This implementation does a lot of bit shifting and masking. Suffice to say, > this is somewhat suboptimal... but it does look to produce correct results > (after the piglit tests were corrected for sign extension issues). > > Someone w

Re: [Mesa-dev] [PATCH 1/2] R600: Emit native instructions for tex

2013-03-27 Thread Tom Stellard
On Thu, Mar 28, 2013 at 12:40:18AM +0100, Vincent Lejeune wrote: > --- Just a few style issues, with those changes, this patch is: Reviewed-by: Tom Stellard > lib/Target/R600/MCTargetDesc/R600MCCodeEmitter.cpp | 169 > + > lib/Target/R600/R600Ins

Re: [Mesa-dev] [PATCH 2/2] R600: Emit CF_ALU and use true kcache register.

2013-03-27 Thread Tom Stellard
On Thu, Mar 28, 2013 at 12:40:19AM +0100, Vincent Lejeune wrote: > --- Thanks for working on this, it is a very nice improvement. See my comments inline. > lib/Target/R600/AMDGPU.h | 1 + > lib/Target/R600/AMDGPUTargetMachine.cpp| 1 + > lib/Target/R600

Re: [Mesa-dev] [PATCH 1/2] r600g/llvm: use native encode for tex

2013-03-27 Thread Tom Stellard
For the series: Reviewed-by: Tom Stellard When you commit these can you update drivers/radeon/LLVM_REVISION.txt with the revision number of the llvm commits these patches depend on? Thanks, Tom On Thu, Mar 28, 2013 at 12:40:52AM +0100, Vincent Lejeune wrote: > --- > src/gallium/driver

Re: [Mesa-dev] [PATCH 1/6] radeon/llvm: remove uneeded inclusion

2013-04-01 Thread Tom Stellard
On Fri, Mar 29, 2013 at 12:32:19PM +, Mike Lothian wrote: > Sorry that patch doesn't fix the build > > diff -Naur a/src/gallium/state_trackers/clover/llvm/invocation.cpp > b/src/gallium/state_trackers/clover/llvm/invocation.cpp > --- a/src/gallium/state_trackers/clover/llvm/invocation.cpp

Re: [Mesa-dev] [PATCH] Fix Clover build with latest LLVM 3.3 snapshot

2013-04-01 Thread Tom Stellard
On Sun, Mar 31, 2013 at 02:26:00PM +0200, Armin K. wrote: > Dana 31.3.2013 14:21, Mike Lothian je napisao: > >I've already posted this > > > >Clover seems to be working as well as it normally does > > > > > > Doh, and I thought I looked at mesa-dev for a patch. It's hard to > find it on such high

Re: [Mesa-dev] [PATCH] R600: Emit CF_ALU and use true kcache register.

2013-04-01 Thread Tom Stellard
On Thu, Mar 28, 2013 at 06:47:37PM +0100, Vincent Lejeune wrote: > --- Don't forget about the change suggested by Vadim. Reviewed-by: Tom Stellard > lib/Target/R600/AMDGPU.h | 1 + > lib/Target/R600/AMDGPUTargetMachine.cpp| 1 + >

Re: [Mesa-dev] [PATCH] R600: Add support for native control flow

2013-04-01 Thread Tom Stellard
On Mon, Apr 01, 2013 at 05:42:43PM +0200, Vincent Lejeune wrote: > --- Reviewed-by: Tom Stellard > lib/Target/R600/AMDGPU.h | 1 + > lib/Target/R600/AMDGPUTargetMachine.cpp| 1 + > lib/Target/R600/MCTargetDesc/R600MCCodeEmitter.cpp |

[Mesa-dev] [PATCH] radeon/llvm: Build libradeonllvm as a static library

2013-04-01 Thread Tom Stellard
From: Tom Stellard Building libradeonllvm as a shared object has led to a number of bugs and build system complications, and I don't think it's necessary for such a small library. This library was originally changed to a shared object to work around linker error in egl_static.so,

Re: [Mesa-dev] [PATCH] register_allocate: Fix the type of best_benefit.

2013-04-02 Thread Tom Stellard
On Tue, Apr 02, 2013 at 01:38:07PM -0700, Matt Turner wrote: > --- Nice catch, will this change have any affect on the compiled code? -Tom > src/mesa/program/register_allocate.c |2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/src/mesa/program/register_allocate.c

[Mesa-dev] [PATCH] radeonsi: add more cases for copying unsupported formats to resource_copy_region

2013-04-02 Thread Tom Stellard
From: Marek Olšák Ported from r600g commit: 8891b2f9c91b2f6c8625184c23a10b8e55875dc0 NOTE: This is a candidate for the stable branches. --- src/gallium/drivers/radeonsi/r600_blit.c | 12 1 files changed, 12 insertions(+), 0 deletions(-) diff --git a/src/gallium/drivers/radeonsi

[Mesa-dev] [PATCH 4/4] radeonsi: Handle new format for configuration values emitted by the LLVM backend

2013-04-05 Thread Tom Stellard
From: Tom Stellard Instead of emitting configuration values (e.g. number of gprs used) in a predefined order, the LLVM backend now emits these values in register/value pairs. The first dword contains the register address and the second dword contians the value to write. --- src/gallium/drivers

[Mesa-dev] [PATCH 1/4] radeon/llvm: Use a struct for storing compiled code

2013-04-05 Thread Tom Stellard
From: Tom Stellard --- src/gallium/drivers/r600/r600_llvm.c| 8 +-- src/gallium/drivers/radeon/radeon_llvm_emit.cpp | 12 +- src/gallium/drivers/radeon/radeon_llvm_emit.h | 11 +++-- src/gallium/drivers/radeonsi/radeonsi_shader.c | 31 + 4

[Mesa-dev] [PATCH 2/4] radeon/llvm: Handle ELF formatted binary output from the LLVM backend

2013-04-05 Thread Tom Stellard
From: Tom Stellard --- configure.ac| 2 ++ src/gallium/drivers/radeon/Makefile.am | 3 +- src/gallium/drivers/radeon/radeon_llvm_emit.cpp | 38 ++--- 3 files changed, 38 insertions(+), 5 deletions(-) diff --git a/configure.ac b

[Mesa-dev] [PATCH 3/4] radeonsi: Read config values from the .AMDGPU.config ELF section

2013-04-05 Thread Tom Stellard
From: Tom Stellard --- src/gallium/drivers/radeonsi/radeonsi_shader.c | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/gallium/drivers/radeonsi/radeonsi_shader.c b/src/gallium/drivers/radeonsi/radeonsi_shader.c index 218997f..0aeecc2 100644 --- a/src

[Mesa-dev] [PATCH 2/3] R600/SI: Emit configuration value in the .AMDGPU.config ELF section

2013-04-05 Thread Tom Stellard
From: Tom Stellard --- lib/Target/R600/AMDGPUAsmPrinter.cpp | 10 +- test/CodeGen/R600/elf.ll | 1 + 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/Target/R600/AMDGPUAsmPrinter.cpp b/lib/Target/R600/AMDGPUAsmPrinter.cpp index f600144..011c602 100644

[Mesa-dev] [PATCH 3/3] R600/SI: Emit config values in register value pairs.

2013-04-05 Thread Tom Stellard
From: Tom Stellard Instead of emitting config values in a predefined order, the code emitter will now emit a 32-bit register index followed by the 32-bit config value. --- lib/Target/R600/AMDGPUAsmPrinter.cpp | 19 --- lib/Target/R600/SIDefines.h | 22

<    1   2   3   4   5   6   7   8   9   10   >