Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(6939)

Issue 314250043: TBR: i#1795 drreg: 1-step slowpath transition with separated TLS slots

Can't Edit
Can't Publish+Mail
Start Review
Created:
7 years, 3 months ago by bruening
Modified:
7 years, 3 months ago
Reviewers:
zhaoqin
CC:
drmemory-devs_googlegroups.com
Visibility:
Public.

Description

Commit log for first patchset: --------------- i#1795 drreg: 1-step slowpath transition with separated TLS slots Switches the TLS slots used to send parameters through the shared_slowpath gencode to the slowpath C code to be separate from the scratch register TLS slots. This will make it much easier to use drreg and to move toward local, asynchronous scratch register usage. Switches from a 2-step transition out of the slowpath that relies on the low-performance OP_xchg instruction to a 1-step transition, made possible by no longer clobbering the scratch TLS slots. Updates DR to abcd9b0 for the i#2136 cpuid fix, which is exposed by this change as ecx is not (overly) restored by the 1-step transition like it was for the 2-step. ---------------

Patch Set 1 #

Patch Set 2 : Committed #

Unified diffs Side-by-side diffs Delta from patch set Stats (+56 lines, -84 lines) Patch
M drmemory/slowpath.c View 7 chunks +49 lines, -83 lines 0 comments Download
M drmemory/spill.h View 2 chunks +7 lines, -1 line 0 comments Download

Messages

Total messages: 2
bruening
7 years, 3 months ago (2017-01-13 05:23:54 UTC) #1
bruening
7 years, 3 months ago (2017-01-13 05:23:55 UTC) #2
Committed as
https://github.com/DynamoRIO/drmemory/commit/33e1c26b5b4866f6ec56c34e0b3a84f6...

Final commit log: 
---------------
i#1795 drreg: 1-step slowpath transition with separated TLS slots

Switches the TLS slots used to send parameters through the shared_slowpath
gencode to the slowpath C code to be separate from the scratch register TLS
slots.  This will make it much easier to use drreg and to move toward
local, asynchronous scratch register usage.

Switches from a 2-step transition out of the slowpath that relies on the
low-performance OP_xchg instruction to a 1-step transition, made possible
by no longer clobbering the scratch TLS slots.

Updates DR to abcd9b0 for the i#2136 cpuid fix, which is exposed by this
change as ecx is not (overly) restored by the 1-step transition like it was
for the 2-step.

Review-URL: https://codereview.appspot.com/314250043
---------------
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b