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

Issue 1645683003: Add vmov between floating point registers to ARM assembler. (Closed)

Created:
4 years, 10 months ago by Karl
Modified:
4 years, 10 months ago
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

Add vmov between floating point registers to ARM assembler. Adds generating binary versions of vmov for moves between floating point registers, in the integrated ARM assembler. Also adds simple lit test. Also simplifies the lit test for push/pop (which had to be changed anyway since it included vmov instructions as well). BUG= https://bugs.chromium.org/p/nativeclient/issues/detail?id=4334 R=eholk@chromium.org, jpp@chromium.org Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=9aedc2e90f2220f7811ef8690a8b0fd59a4d7784

Patch Set 1 #

Patch Set 2 : Fix nits. #

Total comments: 6
Unified diffs Side-by-side diffs Delta from patch set Stats (+88 lines, -116 lines) Patch
M src/DartARM32/assembler_arm.h View 1 chunk +4 lines, -0 lines 0 comments Download
M src/DartARM32/assembler_arm.cc View 1 chunk +3 lines, -2 lines 2 comments Download
M src/IceAssemblerARM32.h View 1 chunk +4 lines, -0 lines 0 comments Download
M src/IceAssemblerARM32.cpp View 1 2 chunks +28 lines, -0 lines 0 comments Download
M src/IceInstARM32.cpp View 1 chunk +15 lines, -5 lines 4 comments Download
A + tests_lit/assembler/arm32/vmov-fp.ll View 2 chunks +22 lines, -23 lines 0 comments Download
M tests_lit/assembler/arm32/vpush.ll View 1 chunk +12 lines, -86 lines 0 comments Download

Messages

Total messages: 9 (3 generated)
Karl
4 years, 10 months ago (2016-01-27 20:29:34 UTC) #3
Eric Holk
lgtm
4 years, 10 months ago (2016-01-27 20:50:27 UTC) #4
John
lgtm
4 years, 10 months ago (2016-01-27 21:12:20 UTC) #5
Karl
Committed patchset #2 (id:20001) manually as 9aedc2e90f2220f7811ef8690a8b0fd59a4d7784 (presubmit successful).
4 years, 10 months ago (2016-01-27 21:36:13 UTC) #7
Jim Stichnoth
https://codereview.chromium.org/1645683003/diff/20001/src/DartARM32/assembler_arm.cc File src/DartARM32/assembler_arm.cc (right): https://codereview.chromium.org/1645683003/diff/20001/src/DartARM32/assembler_arm.cc#newcode930 src/DartARM32/assembler_arm.cc:930: #endif Remove this and the following "#if 0". Woohoo! ...
4 years, 10 months ago (2016-01-27 22:10:50 UTC) #8
Karl
4 years, 10 months ago (2016-01-27 22:58:09 UTC) #9
Message was sent while issue was closed.
See CL https://codereview.chromium.org/1641753003 for changes.

https://codereview.chromium.org/1645683003/diff/20001/src/DartARM32/assembler...
File src/DartARM32/assembler_arm.cc (right):

https://codereview.chromium.org/1645683003/diff/20001/src/DartARM32/assembler...
src/DartARM32/assembler_arm.cc:930: #endif
On 2016/01/27 22:10:49, stichnot wrote:
> Remove this and the following "#if 0".  Woohoo!

Done.

https://codereview.chromium.org/1645683003/diff/20001/src/IceInstARM32.cpp
File src/IceInstARM32.cpp (right):

https://codereview.chromium.org/1645683003/diff/20001/src/IceInstARM32.cpp#ne...
src/IceInstARM32.cpp:1063: assert(llvm::isa<Variable>(Src) && Src->hasReg());
On 2016/01/27 22:10:49, stichnot wrote:
> llvm::isa<Variable>(Src) is redundant with the llvm::cast<Variable> above and
> can be removed.

Done.

https://codereview.chromium.org/1645683003/diff/20001/src/IceInstARM32.cpp#ne...
src/IceInstARM32.cpp:1163: if (llvm::isa<Variable>(Src0)) {
On 2016/01/27 22:10:49, stichnot wrote:
> Are vmovss and vmovdd always going to have a Variable as their second
argument? 
> If so, I would change their declarations from Operand to Variable in that
> parameter.

Done.

Powered by Google App Engine
This is Rietveld 408576698