Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(609)

Issue 1428443002: Enhance address mode recovery (Closed)

Created:
5 years, 1 month ago by sehr
Modified:
5 years, 1 month ago
Reviewers:
Karl, Jim Stichnoth, John
CC:
native-client-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Enhance address mode recovery This adds some more patterns to address mode recovery to recover ConstantRelocatables as displacements, and a few more generalizations that catch indexed addressing. BUG= R=stichnot@chromium.org Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=aa0b1a176f6c3306be3e95374d72e735bab2bbab

Patch Set 1 #

Patch Set 2 : Fixed relocation being attached to the wrong location. #

Total comments: 44

Patch Set 3 : Code review fixes, assertions for fixup position, etc. #

Patch Set 4 : Remove commented line #

Patch Set 5 : Streamline absolute addressing support (rip-relative on x64) #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+495 lines, -304 lines) Patch
M src/IceAssembler.cpp View 1 2 3 1 chunk +0 lines, -1 line 0 comments Download
M src/IceAssemblerX86BaseImpl.h View 1 2 1 chunk +11 lines, -2 lines 0 comments Download
M src/IceFixups.h View 1 2 2 chunks +9 lines, -2 lines 0 comments Download
M src/IceInstX8632.cpp View 1 2 3 4 4 chunks +11 lines, -11 lines 0 comments Download
M src/IceInstX8664.cpp View 1 2 3 4 4 chunks +11 lines, -11 lines 0 comments Download
M src/IceInstX86BaseImpl.h View 1 2 2 chunks +6 lines, -2 lines 0 comments Download
M src/IceTargetLoweringX8632Traits.h View 1 2 3 4 1 chunk +40 lines, -50 lines 0 comments Download
M src/IceTargetLoweringX8664Traits.h View 1 2 3 4 1 chunk +42 lines, -51 lines 0 comments Download
M src/IceTargetLoweringX86BaseImpl.h View 1 2 13 chunks +212 lines, -88 lines 2 comments Download
A tests_lit/llvm2ice_tests/address-mode-global.ll View 1 2 1 chunk +35 lines, -0 lines 0 comments Download
M unittest/AssemblerX8632/ControlFlow.cpp View 1 2 3 4 1 chunk +2 lines, -1 line 2 comments Download
M unittest/AssemblerX8632/GPRArith.cpp View 1 2 3 4 5 chunks +22 lines, -11 lines 0 comments Download
M unittest/AssemblerX8632/Locked.cpp View 1 2 3 4 10 chunks +23 lines, -20 lines 0 comments Download
M unittest/AssemblerX8632/LowLevel.cpp View 1 2 3 4 6 chunks +12 lines, -6 lines 0 comments Download
M unittest/AssemblerX8632/TestUtil.h View 1 2 1 chunk +1 line, -1 line 0 comments Download
M unittest/AssemblerX8632/X87.cpp View 1 2 3 4 4 chunks +10 lines, -6 lines 0 comments Download
M unittest/AssemblerX8664/ControlFlow.cpp View 1 2 3 4 2 chunks +2 lines, -1 line 0 comments Download
M unittest/AssemblerX8664/GPRArith.cpp View 1 2 3 4 5 chunks +14 lines, -11 lines 0 comments Download
M unittest/AssemblerX8664/Locked.cpp View 1 2 3 4 10 chunks +17 lines, -20 lines 0 comments Download
M unittest/AssemblerX8664/LowLevel.cpp View 1 2 3 4 6 chunks +14 lines, -8 lines 0 comments Download
M unittest/AssemblerX8664/TestUtil.h View 1 2 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 10 (3 generated)
sehr
I found the relocation issue with Jim's gracious assistance. Unfortunately, the fix is a little ...
5 years, 1 month ago (2015-10-27 00:33:05 UTC) #3
Jim Stichnoth
https://codereview.chromium.org/1428443002/diff/20001/src/IceTargetLoweringX8632Traits.h File src/IceTargetLoweringX8632Traits.h (right): https://codereview.chromium.org/1428443002/diff/20001/src/IceTargetLoweringX8632Traits.h#newcode185 src/IceTargetLoweringX8632Traits.h:185: Address(GPRRegister base, int32_t disp, AssemblerFixup *fixup = nullptr) { ...
5 years, 1 month ago (2015-10-27 05:52:34 UTC) #4
Jim Stichnoth
https://codereview.chromium.org/1428443002/diff/20001/src/IceTargetLoweringX8632Traits.h File src/IceTargetLoweringX8632Traits.h (right): https://codereview.chromium.org/1428443002/diff/20001/src/IceTargetLoweringX8632Traits.h#newcode195 src/IceTargetLoweringX8632Traits.h:195: // TODO(sehr): determine if there are 8-bit relocations. Here ...
5 years, 1 month ago (2015-10-27 13:57:10 UTC) #5
sehr
Delving into unittests turned up some cleanups I thought should be done while I was ...
5 years, 1 month ago (2015-10-27 21:48:01 UTC) #7
Jim Stichnoth
otherwise lgtm https://codereview.chromium.org/1428443002/diff/80001/src/IceTargetLoweringX86BaseImpl.h File src/IceTargetLoweringX86BaseImpl.h (right): https://codereview.chromium.org/1428443002/diff/80001/src/IceTargetLoweringX86BaseImpl.h#newcode4317 src/IceTargetLoweringX86BaseImpl.h:4317: else if (!IsAdd && Var1) Don't use ...
5 years, 1 month ago (2015-10-27 22:19:52 UTC) #8
sehr
Thanks. Running tests now. https://chromiumcodereview.appspot.com/1428443002/diff/80001/src/IceTargetLoweringX86BaseImpl.h File src/IceTargetLoweringX86BaseImpl.h (right): https://chromiumcodereview.appspot.com/1428443002/diff/80001/src/IceTargetLoweringX86BaseImpl.h#newcode4317 src/IceTargetLoweringX86BaseImpl.h:4317: else if (!IsAdd && Var1) ...
5 years, 1 month ago (2015-10-27 23:24:05 UTC) #9
sehr
5 years, 1 month ago (2015-10-27 23:55:45 UTC) #10
Message was sent while issue was closed.
Committed patchset #5 (id:80001) manually as
aa0b1a176f6c3306be3e95374d72e735bab2bbab (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698