Thread (5 messages) 5 messages, 2 authors, 2012-11-29

Re: [PATCH] lib/raid6: Add AVX2 optimized recovery functions

flat view

From: Andi Kleen <hidden>
Date: 2012-11-29 21:18:34
Also in: lkml

The code is compiled so that the xmm/ymm registers are not available to
the compiler.  Do you have any known examples of asm volatiles being
reordered *with respect to each other*?  My understandings of gcc is
that volatile operations are ordered with respect to each other (not
necessarily with respect to non-volatile operations, though.)
Can you quote it from the manual? As I understand volatile as usual
is not clearly defined. 

gcc has a lot of optimization passes and volatile bugs are common.

Either way, this implementatin technique was used for the MMX/SSE
implementations without any problems for 9 years now.
It's still wrong.

Lying to the compiler usually bites you at some point.

-Andi
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help