On Mon, Jan 14, 2013 at 8:01 PM, Andi Kleen <a...@firstfloor.org> wrote:
> Well the C++ test cases I wrote didn't work. It may be related to > how complex the program is. Simple calls as in the original > test suite seem to work. > > e.g. instead of xacquire lock and ... it ended up with a cmpxchg loop > (which I think is a fallback path). The cmpxchg loop didn't include > a HLE prefix (and simply adding one is not enoigh, would need more > changes for successfull elision) > > Before HLE the cmpxchg code was correct, just somewhat inefficient. > Even with HLE it is technically correct, just it'll never elide. > > I think I would like to fix and,or,xor and disallow HLE for nand. > > Here's a test case. Needs the libstdc++ HLE patch posted. Can you please attach _preprocessed_ (i.e. add -save-temps to compile flags) source to a PR? Uros.