Re: [Mesa-dev] [PATCH] r600/sb: Force ELSE path if the byte code started off with it

2018-01-29 Thread Dave Airlie
On 30 Jan. 2018 3:35 pm, "Dave Airlie" wrote: On 30 January 2018 at 06:33, Dave Airlie wrote: > On 30 January 2018 at 06:25, Gert Wollny wrote: >> Am Montag, den 29.01.2018, 20:32 +0100 schrieb Roland Scheidegger: >>> >>> Am I correct

Re: [Mesa-dev] [PATCH] r600/sb: Force ELSE path if the byte code started off with it

2018-01-29 Thread Dave Airlie
On 30 January 2018 at 06:33, Dave Airlie wrote: > On 30 January 2018 at 06:25, Gert Wollny wrote: >> Am Montag, den 29.01.2018, 20:32 +0100 schrieb Roland Scheidegger: >>> >>> Am I correct assuming that for something like >>>while (foo) { >>> if

Re: [Mesa-dev] [PATCH] r600/sb: Force ELSE path if the byte code started off with it

2018-01-29 Thread Dave Airlie
On 30 January 2018 at 06:25, Gert Wollny wrote: > Am Montag, den 29.01.2018, 20:32 +0100 schrieb Roland Scheidegger: >> >> Am I correct assuming that for something like >>while (foo) { >> if (bar) { >> do something; >> } else { >> /* nothing

Re: [Mesa-dev] [PATCH] r600/sb: Force ELSE path if the byte code started off with it

2018-01-29 Thread Gert Wollny
Am Montag, den 29.01.2018, 20:32 +0100 schrieb Roland Scheidegger: > > Am I correct assuming that for something like >while (foo) { > if (bar) { > do something; > } else { > /* nothing */ > } >} > The else clause wouldn't get optimized away neither? >

Re: [Mesa-dev] [PATCH] r600/sb: Force ELSE path if the byte code started off with it

2018-01-29 Thread Roland Scheidegger
Am 29.01.2018 um 13:15 schrieb Gert Wollny: > sb optimized away the ELSE in a construct like > >while (foo) { > if (bar ) { > do something; > } else { > break; > } >} > > resulting in > >while (foo) { > if (bar ) { > do something; >

[Mesa-dev] [PATCH] r600/sb: Force ELSE path if the byte code started off with it

2018-01-29 Thread Gert Wollny
sb optimized away the ELSE in a construct like while (foo) { if (bar ) { do something; } else { break; } } resulting in while (foo) { if (bar ) { do something; break; } } which is obviously wrong. With this patch an