Re: [Mesa-dev] [PATCH] nir: Add a value range propagation pass

2015-08-17 Thread Thomas Helland
To ease review I'll try to write up a small introduction and review-guide for the pass. The special thing about the pass, and what makes it hard to grasp, is that it is an "optimistic" pass. This means that it assumes that all variables are undefined until proven otherwise. A pessimistic pass woul

[Mesa-dev] [PATCH] nir: Add a value range propagation pass

2015-08-10 Thread Thomas Helland
Add section to pessimize on branching on undef Incorporate some of Connors feedback Incorporate some of Matt's feedback Rework set_float_range API Reworked to not have a separate initialization run Handle loops better Squash a bug where we where adding ourself as user instead of the user Special c

Re: [Mesa-dev] [PATCH] nir: Add a value range propagation pass

2015-07-23 Thread Connor Abbott
(I'm replying to this version, since I can't find an email corresponding to the version you have on Github. Did you ever get git-send-email working again?) On Tue, Jul 14, 2015 at 4:29 PM, Thomas Helland wrote: > Signed-off-by: Thomas Helland > --- > src/glsl/Makefile.sources |1 +

[Mesa-dev] [PATCH] nir: Add a value range propagation pass

2015-07-15 Thread Thomas Helland
Hi Matt, I've commented on some of your feedback down below. The rest is taken note of and I'll be fixing it up later. 2015-07-15 19:18 GMT+02:00 Matt Turner : > On Tue, Jul 14, 2015 at 4:29 PM, Thomas Helland > wrote: >> Signed-off-by: Thomas Helland >> --- >> src/glsl/Makefile.sources

Re: [Mesa-dev] [PATCH] nir: Add a value range propagation pass

2015-07-15 Thread Matt Turner
On Tue, Jul 14, 2015 at 4:29 PM, Thomas Helland wrote: > Signed-off-by: Thomas Helland > --- > src/glsl/Makefile.sources |1 + > src/glsl/nir/nir.h |2 + > src/glsl/nir/nir_opt_value_range.c | 1330 > > 3 files changed, 1333

[Mesa-dev] [PATCH] nir: Add a value range propagation pass

2015-07-14 Thread Thomas Helland
Signed-off-by: Thomas Helland --- src/glsl/Makefile.sources |1 + src/glsl/nir/nir.h |2 + src/glsl/nir/nir_opt_value_range.c | 1330 3 files changed, 1333 insertions(+) create mode 100644 src/glsl/nir/nir_opt_value_range.c d