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

Issue 1624383004: Add VMOV(immediate) instructions to the ARM assembler. (Closed)

Created:
4 years, 11 months ago by Karl
Modified:
4 years, 11 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(immediate) instructions to the ARM assembler. Adds the vmovs/vmovd instructions to the integerated ARM assembler. BUG= https://bugs.chromium.org/p/nativeclient/issues/detail?id=4334 R=stichnot@chromium.org Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=c64448fbaf1dca1495a55e6c085555ca637e3e74

Patch Set 1 #

Patch Set 2 : Fix nits. #

Total comments: 6

Patch Set 3 : Fix issues in previous patch. #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+129 lines, -7 lines) Patch
M src/DartARM32/assembler_arm.h View 1 chunk +3 lines, -1 line 0 comments Download
M src/DartARM32/assembler_arm.cc View 3 chunks +3 lines, -3 lines 0 comments Download
M src/IceAssemblerARM32.h View 1 chunk +6 lines, -0 lines 0 comments Download
M src/IceAssemblerARM32.cpp View 1 2 1 chunk +34 lines, -0 lines 0 comments Download
M src/IceInstARM32.h View 1 2 2 chunks +4 lines, -1 line 0 comments Download
M src/IceInstARM32.cpp View 1 2 3 chunks +28 lines, -2 lines 0 comments Download
A tests_lit/assembler/arm32/vmov-imm.ll View 1 2 1 chunk +51 lines, -0 lines 2 comments Download

Messages

Total messages: 9 (3 generated)
Karl
4 years, 11 months ago (2016-01-25 23:29:57 UTC) #3
Jim Stichnoth
https://codereview.chromium.org/1624383004/diff/20001/src/IceAssemblerARM32.cpp File src/IceAssemblerARM32.cpp (right): https://codereview.chromium.org/1624383004/diff/20001/src/IceAssemblerARM32.cpp#newcode2369 src/IceAssemblerARM32.cpp:2369: IValueT OpcodePlusImm8 = VmovsOpcode | ((Imm8 >> 4) << ...
4 years, 11 months ago (2016-01-26 13:44:41 UTC) #4
Karl
https://codereview.chromium.org/1624383004/diff/20001/src/IceAssemblerARM32.cpp File src/IceAssemblerARM32.cpp (right): https://codereview.chromium.org/1624383004/diff/20001/src/IceAssemblerARM32.cpp#newcode2369 src/IceAssemblerARM32.cpp:2369: IValueT OpcodePlusImm8 = VmovsOpcode | ((Imm8 >> 4) << ...
4 years, 11 months ago (2016-01-26 16:42:05 UTC) #5
Jim Stichnoth
lgtm https://codereview.chromium.org/1624383004/diff/40001/tests_lit/assembler/arm32/vmov-imm.ll File tests_lit/assembler/arm32/vmov-imm.ll (right): https://codereview.chromium.org/1624383004/diff/40001/tests_lit/assembler/arm32/vmov-imm.ll#newcode29 tests_lit/assembler/arm32/vmov-imm.ll:29: store double 1.5, double* %addr, align 8 BTW, ...
4 years, 11 months ago (2016-01-26 17:37:36 UTC) #6
Karl
Committed patchset #3 (id:40001) manually as c64448fbaf1dca1495a55e6c085555ca637e3e74 (presubmit successful).
4 years, 11 months ago (2016-01-26 19:12:34 UTC) #8
Karl
4 years, 11 months ago (2016-01-26 19:12:48 UTC) #9
Message was sent while issue was closed.
https://codereview.chromium.org/1624383004/diff/40001/tests_lit/assembler/arm...
File tests_lit/assembler/arm32/vmov-imm.ll (right):

https://codereview.chromium.org/1624383004/diff/40001/tests_lit/assembler/arm...
tests_lit/assembler/arm32/vmov-imm.ll:29: store double 1.5, double* %addr, align
8
On 2016/01/26 17:37:36, stichnot wrote:
> BTW, you can make this test even simpler by dropping the inttoptr instruction
> and using:
> 
>   store double 1.5, double* undef, align 8

Surprisingly, this causes a pnacl-freeze error for the float case. For now,
leaving as is. Will look into why pnacl-freeze is failing.

Powered by Google App Engine
This is Rietveld 408576698