Hi Tim, hi all, i was just looking at your lock-free fifo code in devel_0_38, to adapt it for a more general C++ container in flext. It seems that the x86 CAS/CAS2 fragment are ok, but not the PPC CAS2 code. http://www.go-ecs.com/ppc/ppctek1.htm#semsupp says that lwarx/stwcx instruction can not be nested, because there is only one memory watcher per cpu available. On the other hand, maybe there's a way to exploit that the memory watching unit always looks at an entire cache line (64 bytes)?! I don't know.....
best greetings, Thomas