| Summary: | Power 8 code to implement Transactional support | ||
|---|---|---|---|
| Product: | [Developer tools] valgrind | Reporter: | Carl Love <cel> |
| Component: | vex | Assignee: | Julian Seward <jseward> |
| Status: | CLOSED FIXED | ||
| Severity: | normal | CC: | will_schmidt |
| Priority: | NOR | ||
| Version First Reported In: | 3.9.0.SVN | ||
| Target Milestone: | --- | ||
| Platform: | Other | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: | A path to imlement the second proposal by Julian for transactional Memory support on Power. | ||
|
Description
Carl Love
2013-07-19 21:50:47 UTC
Created attachment 81208 [details]
A path to imlement the second proposal by Julian for transactional Memory support on Power.
The patch is a preliminary attempt at supporting the transactional memory support in Valgrind based on Julian's second proposal where the TM instructions are executed by the underlying hardware.
This patch is for discussion purposes and shouldn't be committed to Valgrind. The issue with this approach on Power is that executing the guest tbegin and tend on the real hardware fails because the HW can track all the loads/stores for the guest program and the Valgrind loads/store. We get a footprint overflow which results in the guest tbegin TM instruction failing when tested on a small test program. There is just too many loads/stores from Valgrind in between the guest instructions.
This bugzilla was a place holder for the transactional memory support discussion. Bugzilla 346474 contains the patch for the PPC64 transacational memory support. The patch from Bugzilla 346474 was committed on April 22, 2015, VEX commit 3143, Valgrind commit 15134. |