On 08/12/16 12:02 AM, Roland Scheidegger wrote:
> The bug in llvm has been fixed, can you confirm lp_test_format passes again?
Yep, it does, thanks!
--
Earthling Michel Dänzer | http://www.amd.com
Libre software enthusiast | Mesa and X develop
The bug in llvm has been fixed, can you confirm lp_test_format passes again?
Roland
Am 06.12.2016 um 19:00 schrieb Roland Scheidegger:
> Ok, here is the bug:
> https://llvm.org/bugs/show_bug.cgi?id=31296
>
> Roland
>
> Am 06.12.2016 um 18:47 schrieb Roland Scheidegger:
>> Actually I've verified
Ok, here is the bug:
https://llvm.org/bugs/show_bug.cgi?id=31296
Roland
Am 06.12.2016 um 18:47 schrieb Roland Scheidegger:
> Actually I've verified this quickly with llc.
> With -mattr=xop, it produces
>
> fetch_r32_float_float: # @fetch_r32_float_float
> .cfi_startproc
Actually I've verified this quickly with llc.
With -mattr=xop, it produces
fetch_r32_float_float: # @fetch_r32_float_float
.cfi_startproc
# BB#0: # %entry
vpermilps $65, .LCPI0_0(%rip), %xmm0 # xmm0 = mem[1,0,0,1]
vmova
Interesting. Can you show the IR / assembly? I don't get any failures here.
I'm wondering if it's trying to use XOP and there's some bug there (or
we're relying on undefined behavior which doesn't happen to work with
it). Albeit since there's not actually any conversion involved in this
case (float
Interesting. My testing was done using piglit on an avx512 capable processor,
where I didn’t see any regressions.
llvmpipe’s “make check” also passes for me with this change on avx2 and avx512
machines.
Was this the only regression you saw?
-Tim
> On Dec 6, 2016, at 12:27 AM, Michel Dänzer
On 06/12/16 02:39 AM, Tim Rowley wrote:
> Use llvm provided API based on cpuid rather than our own
> manually mantained list of mattr enabling/disabling.
This change broke the llvmpipe unit test lp_test_format for me:
Testing PIPE_FORMAT_R32_FLOAT (float) ...
FAILED
Packed: 00 00 00 00
Unpack
Am 05.12.2016 um 18:39 schrieb Tim Rowley:
> Use llvm provided API based on cpuid rather than our own
> manually mantained list of mattr enabling/disabling.
> ---
> src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 15 +++
> 1 file changed, 15 insertions(+)
>
> diff --git a/src/gallium/
Use llvm provided API based on cpuid rather than our own
manually mantained list of mattr enabling/disabling.
---
src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 15 +++
1 file changed, 15 insertions(+)
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
b/src/gallium/auxiliar