> next time please reply to the points raised in a review if you disagree > with them, and don't just ignore them. That speeds up the review.
It was all in the previous email on the topic. > > // See gtm_thread::begin_transaction. > > -uint32_t GTM::htm_fastpath = 0; > > +uint32_t GTM::htm_fastpath asm("__gtm_htm_fastpath") = 0; > > + > > +uint32_t *GTM::global_lock asm("__gtm_global_lock"); > > Rearrange the serial lock's fields (see below). To my knowledge C++ classes have no guaranteed layout, so that's not safe because there is no guarantee where the vtable pointers are. it would be only with plain old structs. + // pr_tryHTM can be set by an assembler fast path when it already tried + // a hardware transaction once. In this case we do one retry less. pr_tryHTM is already documented. -Andi