[v8-dev] Fix the V8_GNUC_PREREQ macro. (issue 1003383004 by alexandre.ra...@arm.com)

2015-03-25 Thread alexandre . rames
Reviewers: danno, Description: Fix the V8_GNUC_PREREQ macro. BUG= Please review this at https://codereview.chromium.org/1003383004/ Base URL: https://chromium.googlesource.com/v8/v8.git@master Affected files (+3, -3 lines): M include/v8config.h Index: include/v8config.h diff --git

[v8-dev] Re: Fix the V8_GNUC_PREREQ macro. (issue 1003383004 by alexandre.ra...@arm.com)

2015-03-25 Thread alexandre . rames
https://codereview.chromium.org/1003383004/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To unsubscribe from this group and stop receiving emails from it, send

[v8-dev] Re: Revert ARM: Use the shifter operand to merge in previous shift instructions. (issue 359713004 by ma...@chromium.org)

2014-06-27 Thread alexandre . rames
On 2014/06/27 09:13:48, Michael Achenbach wrote: FYI I saw that. Looking at it. https://codereview.chromium.org/359713004/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups

[v8-dev] Re: ARM: Use the shifter operand to merge in previous shift instructions. (issue 312173002 by alexandre.ra...@arm.com)

2014-06-25 Thread alexandre . rames
Committed patchset #2 manually as r22017 (presubmit successful). https://codereview.chromium.org/312173002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: ARM/ARM64: Optimise HLoadNamedField and HStoreNamedField. (issue 324093002 by alexandre.ra...@arm.com)

2014-06-13 Thread alexandre . rames
We tried to go down this route before, but by simplifying all object accesses into a either two loads or a load and a store. That had the disadvantage of reducing the accuracy of GVN and load/store elimination. This approach doesn't that have the disadvantage of reducing the accuracy of

[v8-dev] Re: ARM64: Avoid regeneration of constants. (issue 308313002)

2014-06-12 Thread alexandre . rames
Any progress on this topic? https://codereview.chromium.org/308313002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To unsubscribe from this group and stop

[v8-dev] Re: ARM: Use the shifter operand to merge in previous shift instructions. (issue 312173002)

2014-06-11 Thread alexandre . rames
https://codereview.chromium.org/312173002/diff/1/src/arm/lithium-arm.cc File src/arm/lithium-arm.cc (right): https://codereview.chromium.org/312173002/diff/1/src/arm/lithium-arm.cc#newcode809 src/arm/lithium-arm.cc:809: constant_value = constant-Integer32Value() 0x1f; On 2014/06/10 11:53:37,

[v8-dev] Re: ARM: Use the shifter operand to merge in previous shift instructions. (issue 312173002)

2014-06-11 Thread alexandre . rames
Uploaded the patch with your comments addressed. Could you confirm it is still ok to go in? Thanks https://codereview.chromium.org/312173002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to

[v8-dev] ARM/ARM64: Optimise HLoadNamedField and HStoreNamedField. (issue 324093002)

2014-06-10 Thread alexandre . rames
Reviewers: ulan, jochen traveling until Jun 23, Message: This does not show a noticeable impact on benchmarks, but the code generated is cleaner. Description: ARM/ARM64: Optimise HLoadNamedField and HStoreNamedField. The access to the object properties is abstracted in via a separate

[v8-dev] ARM: Use the shifter operand to merge in previous shift instructions. (issue 312173002)

2014-06-04 Thread alexandre . rames
Reviewers: ulan, jochen, Message: This is a port of the arm64 similar commit. Description: ARM: Use the shifter operand to merge in previous shift instructions. When possible, we transform sequences of code of the form lsl r1, r2, #imm add r0, r5, r1 into add r0, r5, r2 LSL #imm

[v8-dev] Re: ARM64: Avoid regeneration of constants. (issue 308313002)

2014-06-03 Thread alexandre . rames
On 2014/06/03 08:01:16, danno wrote: Actually, the right thing to do is to treat constants as normal values and teach the register allocator how to split constant ranges and rematerialize on demand without spilling. This is something that Jaro and Benedikt have thought about recently, and I

[v8-dev] ARM64: Regenerate instead of spilling and restoring cheap lithium instructions. (issue 309373002)

2014-06-03 Thread alexandre . rames
Reviewers: , Message: Following the discussion at https://codereview.chromium.org/308313002/ , here is a patch (applicable on top of the patch for the previously mentioned issue) with some work on avoiding spilling/restoring. To make things clear again, this is *not* a review request.

[v8-dev] ARM64: Avoid regeneration of constants. (issue 308313002)

2014-06-02 Thread alexandre . rames
Reviewers: jochen, ulan, Message: This shows some improvement (up to ~5%) for some of the Octane benchmarks (up to ~5% for Raytrace and Richards). The impact depends on the CPU benchmarked. Ideally the same result should be achieved by modifying HConstant::EmitAtUses(), but an attempt to

[v8-dev] Re: ARM64: Avoid regeneration of constants. (issue 308313002)

2014-06-02 Thread alexandre . rames
On 2014/06/02 09:28:25, danno wrote: DBC: Changes EmitAtUses to allocate Tagged constants in registers is generally a very bad thing for i32, so you will need more platform-specific machinery to abstract the decision. Of course! This is just to highlight the bug met. Could you provide

[v8-dev] Re: Allow HPushArgument to handle more than one argument. (issue 296113008)

2014-05-23 Thread alexandre . rames
On 2014/05/23 10:31:58, ulan wrote: LGTM with one nit: please use int instead of unsigned where possible to avoid mixing them. Uploaded the fixed patch. Can you confirm it's still ok? https://codereview.chromium.org/296113008/ -- -- v8-dev mailing list v8-dev@googlegroups.com

[v8-dev] Re: Provide a helper to generate multiple Lithium instructions for one Hydrogen instruction. (issue 296993002)

2014-05-23 Thread alexandre . rames
Committed patchset #2 manually as r21465 (presubmit successful). https://codereview.chromium.org/296993002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: Allow HPushArgument to handle more than one argument. (issue 296113008)

2014-05-23 Thread alexandre . rames
Committed patchset #3 manually as r21468 (presubmit successful). https://codereview.chromium.org/296113008/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Provide a helper to generate multiple Lithium instructions for one Hydrogen instruction. (issue 296993002)

2014-05-22 Thread alexandre . rames
Reviewers: ulan, Jakob, Message: This is a pre-requisite commit for issue 296113008. Description: Provide a helper to generate multiple Lithium instructions for one Hydrogen instruction. Please review this at https://codereview.chromium.org/296993002/ SVN Base:

[v8-dev] Allow HPushArgument to handle more than one argument. (issue 296113008)

2014-05-22 Thread alexandre . rames
Reviewers: , Message: The diff includes the diff for issue 296993002 since git cl uploaded everything, but that can be committed separately. Description: Allow HPushArgument to handle more than one argument. Please review this at https://codereview.chromium.org/296113008/ SVN Base:

[v8-dev] Re: Allow HPushArgument to handle more than one argument. (issue 296113008)

2014-05-22 Thread alexandre . rames
https://codereview.chromium.org/296113008/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To unsubscribe from this group and stop receiving emails from it, send

[v8-dev] Re: Allow HPushArgument to handle more than one argument. (issue 296113008)

2014-05-22 Thread alexandre . rames
On 2014/05/22 13:01:09, Jakob wrote: On 2014/05/22 12:57:03, Alexandre Rames wrote: The diff includes the diff for issue 296993002 since git cl uploaded everything, DBC: You can use git cl upload my_other_branch to upload the diff to my_other_branch (which can be any commit descriptor git

[v8-dev] Re: Provide a helper to generate multiple Lithium instructions for one Hydrogen instruction. (issue 296993002)

2014-05-22 Thread alexandre . rames
Yes, all platforms have the same changes. https://codereview.chromium.org/296993002/diff/1/src/arm/lithium-arm.cc File src/arm/lithium-arm.cc (right): https://codereview.chromium.org/296993002/diff/1/src/arm/lithium-arm.cc#newcode843 src/arm/lithium-arm.cc:843: void

[v8-dev] Re: Provide a helper to generate multiple Lithium instructions for one Hydrogen instruction. (issue 296993002)

2014-05-22 Thread alexandre . rames
On 2014/05/22 14:56:20, Jakob wrote: Please don't forget to upload the updated patch set for future reference. Just did. I was waiting for our internal green flag. https://codereview.chromium.org/296993002/ -- -- v8-dev mailing list v8-dev@googlegroups.com

[v8-dev] Re: ARM64: Use the shifter operand to merge in previous shift instructions. (issue 257203002)

2014-05-19 Thread alexandre . rames
On 2014/05/05 07:30:45, ulan wrote: lgtm Was landed by Martyn in r21161. https://codereview.chromium.org/257203002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev

[v8-dev] Re: ARM64: Use the shifter operand to merge in previous shift instructions. (issue 257203002)

2014-05-02 Thread alexandre . rames
https://codereview.chromium.org/257203002/diff/1/src/arm64/lithium-arm64.cc File src/arm64/lithium-arm64.cc (right): https://codereview.chromium.org/257203002/diff/1/src/arm64/lithium-arm64.cc#newcode2047 src/arm64/lithium-arm64.cc:2047: if (!val-IsBitwise() !(val-IsAdd() || val-IsSub()))

[v8-dev] Re: ARM64: Use the shifter operand to merge in previous shift instructions. (issue 257203002)

2014-05-02 Thread alexandre . rames
Uploaded the updated patch. https://codereview.chromium.org/257203002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To unsubscribe from this group and stop

[v8-dev] Re: ARM64: Generate optimized code for Math.floor and Math.round with double outputs. (issue 258793002)

2014-04-30 Thread alexandre . rames
https://codereview.chromium.org/258793002/diff/50001/src/arm64/lithium-arm64.h File src/arm64/lithium-arm64.h (right): https://codereview.chromium.org/258793002/diff/50001/src/arm64/lithium-arm64.h#newcode1912 src/arm64/lithium-arm64.h:1912: /* Math.floor with a double result. */ On 2014/04/30

[v8-dev] Re: ARM64: Generate optimized code for Math.floor and Math.round with double outputs. (issue 258793002)

2014-04-30 Thread alexandre . rames
Committed patchset #5 manually as r21091 (presubmit successful). https://codereview.chromium.org/258793002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] ARM64: Use the shifter operand to merge in previous shift instructions. (issue 257203002)

2014-04-29 Thread alexandre . rames
Reviewers: ulan, jochen, Description: ARM64: Use the shifter operand to merge in previous shift instructions. When possible, we transform sequences of code of the form lsl x8, x9, #imm add x0, x1, x8 into add x0, x1, x9 LSL #imm Please review this at

[v8-dev] Re: ARM64: Generate optimized code for Math.floor and Math.round with double outputs. (issue 258793002)

2014-04-29 Thread alexandre . rames
Reworked the type inference. https://codereview.chromium.org/258793002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To unsubscribe from this group and stop

[v8-dev] Re: ARM64: Use the shifter operand to merge in previous shift instructions. (issue 257203002)

2014-04-29 Thread alexandre . rames
On 2014/04/29 15:01:44, ulan wrote: Alexandre, first question before reviewing: does this optimization trigger in benchmarks? If so how does it affect performance? The patch gives a ~15% performance boost on v8/Crypto. https://codereview.chromium.org/257203002/ -- -- v8-dev mailing list

[v8-dev] Re: ARM64: Generate optimized code for Math.floor and Math.round with double outputs. (issue 258793002)

2014-04-28 Thread alexandre . rames
Just uploaded an updated patch. I have extended the existing testing to also test the 'double output' path. https://codereview.chromium.org/258793002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are

[v8-dev] Re: ARM64: Generate optimized code for Math.floor and Math.round with double outputs. (issue 258793002)

2014-04-28 Thread alexandre . rames
On 2014/04/28 13:53:31, Jakob wrote: Any reason you're not looking at both required and observed representations as I suggested? If the only use is e.g. another unary math function (which requires double inputs and, being a call, doesn't have any observed representation), it would be

[v8-dev] Re: ARM64: Generate optimized code for Math.floor and Math.round with double outputs. (issue 258793002)

2014-04-28 Thread alexandre . rames
I was confused. I understood the double representation part, but somehow just messed up the code. While looking at the first example I confused 'input' and 'use' representations... I'll get some rest and update the patch tomorrow! https://codereview.chromium.org/258793002/ -- -- v8-dev

[v8-dev] ARM64: Generate optimized code for Math.floor and Math.round with double outputs. (issue 258793002)

2014-04-25 Thread alexandre . rames
Reviewers: ulan, jochen, Description: ARM64: Generate optimized code for Math.floor and Math.round with double outputs. Please review this at https://codereview.chromium.org/258793002/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge Affected files (+154, -27 lines): M

[v8-dev] Re: ARM64: Generate optimized code for Math.floor and Math.round with double outputs. (issue 258793002)

2014-04-25 Thread alexandre . rames
I will update the patch to address your comments, and update the round and floor testing for the new paths. https://codereview.chromium.org/258793002/diff/1/src/hydrogen-instructions.cc File src/hydrogen-instructions.cc (right):

[v8-dev] Re: ARM64: Fix the atomic type width in the 64bit Acquire_Load(). (issue 220203012)

2014-04-17 Thread alexandre . rames
On 2014/04/17 12:33:56, rmcilroy wrote: On 2014/04/03 14:28:47, Alexandre Rames wrote: Committed patchset #1 manually as r20486 (presubmit successful). Could you let me know if you fix any bugs in atomicops_internals_arm64_gcc.h in the future so that I can include the fix in Chrome's base

[v8-dev] Re: ARM64: Fix EnsureSpace to not emit pools. (issue 230223005)

2014-04-14 Thread alexandre . rames
Committed patchset #1 manually as r20714 (presubmit successful). https://codereview.chromium.org/230223005/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: ARM64: Avoid iterating through all unresolved branch infos when many are pending. (issue 227043010)

2014-04-14 Thread alexandre . rames
Committed patchset #2 manually as r20715 (presubmit successful). https://codereview.chromium.org/227043010/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Reland A64: Now that we have veneers, fix a couple of branches to directly jump to their target. (issue 236163006)

2014-04-14 Thread alexandre . rames
Reviewers: ulan, jochen, Description: Reland A64: Now that we have veneers, fix a couple of branches to directly jump to their target. This was reverted by revision 20187. make -j45 arm64.release.check TESTFLAGS=--time TESTJOBS=mozilla/js1_5/Regress/regress-280769-2 Without the patch: ---

[v8-dev] Re: Reland A64: Now that we have veneers, fix a couple of branches to directly jump to their target. (issue 236163006)

2014-04-14 Thread alexandre . rames
On 2014/04/14 12:15:20, ulan wrote: On 2014/04/14 12:09:42, Alexandre Rames wrote: Do you know how this affects octane/regexp benchmark? Good point. This shows a ~8% performance penalty, so maybe it is better not to push it. I note that I should profile the regexp benchmark once we have

[v8-dev] ARM64: Fix EnsureSpace to not emit pools. (issue 230223005)

2014-04-09 Thread alexandre . rames
Reviewers: ulan, jochen, Description: ARM64: Fix EnsureSpace to not emit pools. The EnsureSpace scope must not trigger any code emission, so it should only grow the buffer, and not check for pools. Please review this at https://codereview.chromium.org/230223005/ SVN Base:

[v8-dev] Re: ARM64: Avoid iterating through all unresolved branch infos when many are pending. (issue 227043010)

2014-04-09 Thread alexandre . rames
https://codereview.chromium.org/227043010/diff/1/src/arm64/assembler-arm64.cc File src/arm64/assembler-arm64.cc (right): https://codereview.chromium.org/227043010/diff/1/src/arm64/assembler-arm64.cc#newcode612 src/arm64/assembler-arm64.cc:612: DeleteUnresolvedBranchInfoForLabelTraverse(label);

[v8-dev] Re: ARM64: Fix disassembly of branch targets. (issue 225743004)

2014-04-07 Thread alexandre . rames
Committed patchset #1 manually as r20543 (presubmit successful). https://codereview.chromium.org/225743004/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: ARM64: Introduce a version of ADR handling distant targets. (issue 222433002)

2014-04-07 Thread alexandre . rames
Committed patchset #2 manually as r20545 (presubmit successful). https://codereview.chromium.org/222433002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] ARM64: Avoid iterating through all unresolved branch infos when many are pending. (issue 227043010)

2014-04-07 Thread alexandre . rames
Reviewers: ulan, jochen, Message: This patch diminishes the regression observed at https://codereview.chromium.org/209333004 . With this patch applied, the timings for make -j32 arm64.release.check TESTFLAGS=--time TESTJOBS=mozilla/js1_5/Regress/regress-280769-2 become: Without the regexp

[v8-dev] ARM64: Use direct deoptimization exits. (issue 225703002)

2014-04-04 Thread alexandre . rames
Reviewers: ulan, jochen, Message: This gives about 5% performance improvement on the v8 and kraken benchmarks. Description: ARM64: Use direct deoptimization exits. Please review this at https://codereview.chromium.org/225703002/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

[v8-dev] Re: ARM64: Use direct deoptimization exits. (issue 225703002)

2014-04-04 Thread alexandre . rames
https://codereview.chromium.org/225703002/diff/1/src/arm64/lithium-codegen-arm64.cc File src/arm64/lithium-codegen-arm64.cc (right): https://codereview.chromium.org/225703002/diff/1/src/arm64/lithium-codegen-arm64.cc#newcode2153 src/arm64/lithium-codegen-arm64.cc:2153: } On 2014/04/04 12:04:13,

[v8-dev] Re: ARM64: Use direct deoptimization exits. (issue 225703002)

2014-04-04 Thread alexandre . rames
On 2014/04/04 12:04:12, ulan wrote: This gives about 5% performance improvement on the v8 and kraken benchmarks. Does arm64 deopt more than arm? This patch spares the cpu from taking unconditional branches to jump over deopt sites. That's where the improvement comes from.

[v8-dev] ARM64: Fix disassembly of branch targets. (issue 225743004)

2014-04-04 Thread alexandre . rames
Reviewers: ulan, jochen, Description: ARM64: Fix disassembly of branch targets. Please review this at https://codereview.chromium.org/225743004/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge Affected files (+1, -2 lines): M src/arm64/disasm-arm64.cc Index:

[v8-dev] Re: ARM64: Use direct deoptimization exits. (issue 225703002)

2014-04-04 Thread alexandre . rames
Committed patchset #2 manually as r20515 (presubmit successful). https://codereview.chromium.org/225703002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] ARM64: Fix the atomic type width in the 64bit Acquire_Load(). (issue 220203012)

2014-04-03 Thread alexandre . rames
Reviewers: ulan, jochen, JF, Description: ARM64: Fix the atomic type width in the 64bit Acquire_Load(). Please review this at https://codereview.chromium.org/220203012/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge Affected files (+1, -1 lines): M

[v8-dev] ARM64: Fixes and more support for FRINTX instructions. (issue 223843002)

2014-04-03 Thread alexandre . rames
Reviewers: ulan, jochen, Description: ARM64: Fixes and more support for FRINTX instructions. Fix simulation and tests for the [-0.5, -0.0[ range for FRINTA and FRINTN, and add support for FRINTM. Please review this at https://codereview.chromium.org/223843002/ SVN Base:

[v8-dev] Re: ARM64: Fix the atomic type width in the 64bit Acquire_Load(). (issue 220203012)

2014-04-03 Thread alexandre . rames
Committed patchset #1 manually as r20486 (presubmit successful). https://codereview.chromium.org/220203012/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: ARM64: Fixes and more support for FRINTX instructions. (issue 223843002)

2014-04-03 Thread alexandre . rames
Committed patchset #1 manually as r20487 (presubmit successful). https://codereview.chromium.org/223843002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: ARM64: Fix and improve atomic operations. (issue 220793002)

2014-04-02 Thread alexandre . rames
Following JF's comment, I updated the clobber list of NoBarrier operations to include memory, and added a comment explaining why. Tests showed no difference in the code generated between integrating the barrier in the inline asm and using a function MemoryBarrier(), so I prefer not

[v8-dev] ARM64: Fix cctest/test-disasm-arm64/debug on real hardware. (issue 221903004)

2014-04-02 Thread alexandre . rames
Reviewers: ulan, jochen, Description: ARM64: Fix cctest/test-disasm-arm64/debug on real hardware. Without the 'BREAK' parameter, no instruction is generated when we are not running with the simulator. Please review this at https://codereview.chromium.org/221903004/ SVN Base:

[v8-dev] Re: ARM64: Fix cctest/test-disasm-arm64/debug on real hardware. (issue 221903004)

2014-04-02 Thread alexandre . rames
Committed patchset #1 manually as r20443 (presubmit successful). https://codereview.chromium.org/221903004/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] ARM64: Introduce a version of ADR handling distant targets. (issue 222433002)

2014-04-02 Thread alexandre . rames
Reviewers: ulan, jochen, Description: ARM64: Introduce a version of ADR handling distant targets. This fixes an out-of-range label error for an ADR instruction in the mozilla/data/js1_5/Regress/regress-280769-2.js test. Please review this at https://codereview.chromium.org/222433002/ SVN

[v8-dev] Re: ARM64: Fix and improve atomic operations. (issue 220793002)

2014-04-02 Thread alexandre . rames
On 2014/04/02 16:03:49, JF wrote: lgtm (Still need approval from an owner of the file (Ulan and Jochen for example) to allow committing.) https://codereview.chromium.org/220793002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received

[v8-dev] Re: ARM64: Avoid iterating through unresolved branches information when unnecessary. (issue 217343007)

2014-04-02 Thread alexandre . rames
Committed patchset #1 manually as r20444 (presubmit successful). https://codereview.chromium.org/217343007/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: ARM64: Fix and improve atomic operations. (issue 220793002)

2014-04-02 Thread alexandre . rames
Committed patchset #2 manually as r20446 (presubmit successful). https://codereview.chromium.org/220793002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] ARM64: Fix and improve atomic operations. (issue 220793002)

2014-04-01 Thread alexandre . rames
Reviewers: ulan, jochen, rmcilroy, Description: A64: Fix and improve atomic operations. * The 'compare and swap' operations should enforce memory ordering even when the exchange does not occur. * The exclusive monitor does not need to be cleared by CLREX if a LDRX was not followed by a

[v8-dev] Re: ARM64: Fix and improve atomic operations. (issue 220793002)

2014-04-01 Thread alexandre . rames
https://codereview.chromium.org/220793002/diff/1/src/atomicops_internals_arm64_gcc.h File src/atomicops_internals_arm64_gcc.h (right): https://codereview.chromium.org/220793002/diff/1/src/atomicops_internals_arm64_gcc.h#newcode57 src/atomicops_internals_arm64_gcc.h:57: : [old_value]IJr

[v8-dev] ARM64: Avoid iterating through unresolved branches information when unnecessary. (issue 217343007)

2014-04-01 Thread alexandre . rames
Reviewers: , Message: This is the first of a 2 patches that address the regression performance spotted in r20187. Description: ARM64: Avoid iterating through unresolved branches information when unnecessary. Please review this at https://codereview.chromium.org/217343007/ SVN Base:

[v8-dev] Re: ARM64: Avoid iterating through unresolved branches information when unnecessary. (issue 217343007)

2014-04-01 Thread alexandre . rames
https://codereview.chromium.org/217343007/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To unsubscribe from this group and stop receiving emails from it, send

[v8-dev] Re: ARM64: Fix and improve atomic operations. (issue 220793002)

2014-04-01 Thread alexandre . rames
On 2014/04/01 16:08:09, JF wrote: I'm not sure I understand why memory is kept in some places and removed in others. lgtm otherwise. From http://gcc.gnu.org/onlinedocs/gcc/Extended-Asm.html : If your assembler instructions access memory in an unpredictable fashion, add 'memory' to the

[v8-dev] Re: ARM64: Fix and improve atomic operations. (issue 220793002)

2014-04-01 Thread alexandre . rames
On 2014/04/01 16:40:25, JF wrote: On 2014/04/01 16:28:59, JF wrote: On 2014/04/01 16:19:36, Alexandre Rames wrote: On 2014/04/01 16:08:09, JF wrote: I'm not sure I understand why memory is kept in some places and removed in others. lgtm otherwise. From http://gcc.gnu.org

[v8-dev] Re: ARM64: Optimize AllocateHeapNumber to use STP. (issue 216933003)

2014-03-31 Thread alexandre . rames
Committed patchset #1 manually as r20356 (presubmit successful). https://codereview.chromium.org/216933003/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] ARM64: Optimize AllocateHeapNumber to use STP. (issue 216933003)

2014-03-28 Thread alexandre . rames
Reviewers: ulan (offline till April 1), jochen, Description: ARM64: Optimize AllocateHeapNumber to use STP. Please review this at https://codereview.chromium.org/216933003/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge Affected files (+101, -59 lines): M

[v8-dev] Reland ARM64: Add overflow checking support for multiplications by constant powers of 2. (issue 212573002)

2014-03-26 Thread alexandre . rames
Reviewers: ulan, jochen, Message: Created a new issue for the re-land. Description: Reland ARM64: Add overflow checking support for multiplications by constant powers of 2. This includes fixes for the overflow case spotted in mjsunit/mul-exhaustive-part4. Please review this at

[v8-dev] Re: Reland ARM64: Add overflow checking support for multiplications by constant powers of 2. (issue 212573002)

2014-03-26 Thread alexandre . rames
Committed patchset #1 manually as r20267 (presubmit successful). https://codereview.chromium.org/212573002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: A64: Add overflow checking support for multiplications by constant powers of 2. (issue 210253002)

2014-03-25 Thread alexandre . rames
https://codereview.chromium.org/210253002/diff/1/src/arm64/lithium-arm64.cc File src/arm64/lithium-arm64.cc (right): https://codereview.chromium.org/210253002/diff/1/src/arm64/lithium-arm64.cc#newcode1914 src/arm64/lithium-arm64.cc:1914: !((constant = -1) (constant = 2)); On 2014/03/25

[v8-dev] Re: ARM64: Optimize RegList::IsValid() to speed up simulation in (opt)debug mode. (issue 209353010)

2014-03-25 Thread alexandre . rames
Committed patchset #1 manually as r20232 (presubmit successful). https://codereview.chromium.org/209353010/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: ARM64: Add overflow checking support for multiplications by constant powers of 2. (issue 210253002)

2014-03-25 Thread alexandre . rames
Committed patchset #1 manually as r20246 (presubmit successful). https://codereview.chromium.org/210253002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: Revert A64: Now that we have veneers, fix a couple of branches to directly jump to their target. (issue 209333004)

2014-03-25 Thread alexandre . rames
I am looking at it more in details. On Monday, March 24, 2014 4:13:46 PM UTC, alexand...@arm.com wrote: From some quick profiling, it appears that the test generates so many unresolved branches (forward branches) that it puts a lot fo pressure on `std::multimapint, FarBranchInfo

[v8-dev] Re: ARM64: block veneer pool in InstructionAccurateScope. (issue 211323003)

2014-03-25 Thread alexandre . rames
On 2014/03/25 15:47:28, ulan wrote: PTAL. This fixes mozilla/ecma_3/RegExp/regress-169497 that started after r20248. LGTM https://codereview.chromium.org/211323003/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because

[v8-dev] Re: ARM64: Add overflow checking support for multiplications by constant powers of 2. (issue 210253002)

2014-03-25 Thread alexandre . rames
Updated the patch to fix the failure observed in mjsunit/mul-exhaustive-part4. Checked that optdebug tests pass both with and without snapshot. https://codereview.chromium.org/210253002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received

[v8-dev] A64: Fix Register and FPRegister copy constructors. (issue 207743003)

2014-03-24 Thread alexandre . rames
Reviewers: jochen, ulan, Description: A64: Fix Register and FPRegister copy constructors. This issue was introduced in commit 4e27429b1bc295631842cce7e8f6c404f7f77c50. Please review this at https://codereview.chromium.org/207743003/ SVN Base: git://github.com/v8/v8.git@master Affected

[v8-dev] Re: Revert A64: Now that we have veneers, fix a couple of branches to directly jump to their target. (issue 209333004)

2014-03-24 Thread alexandre . rames
From some quick profiling, it appears that the test generates so many unresolved branches (forward branches) that it puts a lot fo pressure on `std::multimapint, FarBranchInfo unresolved_branches_`. Without the patch the conditional branches are resolved locally and the unconditional branch

[v8-dev] A64: Optimize RegList::IsValid() to speed up simulation in (opt)debug mode. (issue 209353010)

2014-03-24 Thread alexandre . rames
Reviewers: ulan, jochen, Description: A64: Optimize RegList::IsValid() to speed up simulation in (opt)debug mode. On my machine this improves the simulation speed noticeably. | test | base | patched | ||---|-| | optdebug | 15:37 | 11:07

[v8-dev] Re: ARM64: Fix Register and FPRegister copy constructors. (issue 207743003)

2014-03-24 Thread alexandre . rames
Committed patchset #1 manually as r20212 (presubmit successful). https://codereview.chromium.org/207743003/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] A64: Add overflow checking support for multiplications by constant powers of 2. (issue 210253002)

2014-03-24 Thread alexandre . rames
Reviewers: ulan, jochen, Description: A64: Add overflow checking support for multiplications by constant powers of 2. Please review this at https://codereview.chromium.org/210253002/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge Affected files (+47, -23 lines): M

[v8-dev] A64: Now that we have veneers, fix a couple of branches to directly jump to their target. (issue 207883002)

2014-03-21 Thread alexandre . rames
Reviewers: ulan, jochen, Description: A64: Now that we have veneers, fix a couple of branches to directly jump to their target. Please review this at https://codereview.chromium.org/207883002/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge Affected files (+3, -12 lines): M

[v8-dev] Re: A64: Now that we have veneers, fix a couple of branches to directly jump to their target. (issue 207883002)

2014-03-21 Thread alexandre . rames
Committed patchset #1 manually as r20169 (presubmit successful). https://codereview.chromium.org/207883002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: A64: Abstract colour definitions for the Simulator tracing. (issue 203563002)

2014-03-20 Thread alexandre . rames
Committed patchset #1 manually as r20106 (presubmit successful). https://codereview.chromium.org/203563002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: A64: Abstract simulation of runtime calls in a separate function. (issue 203703002)

2014-03-20 Thread alexandre . rames
https://codereview.chromium.org/203703002/diff/1/src/a64/simulator-a64.cc File src/a64/simulator-a64.cc (right): https://codereview.chromium.org/203703002/diff/1/src/a64/simulator-a64.cc#newcode473 src/a64/simulator-a64.cc:473: T external_function() { return

[v8-dev] Re: A64: Abstract simulation of runtime calls in a separate function. (issue 203703002)

2014-03-20 Thread alexandre . rames
Committed patchset #1 manually as r20107 (presubmit successful). https://codereview.chromium.org/203703002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: A64: In the Simulator, corrupt caller-saved registers after runtime printf call. (issue 203603002)

2014-03-20 Thread alexandre . rames
Committed patchset #1 manually as r20108 (presubmit successful). https://codereview.chromium.org/203603002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] A64: Remove Operand constructors where an implicit constructor can be used. (issue 204293004)

2014-03-20 Thread alexandre . rames
Reviewers: ulan, jochen, Description: A64: Remove Operand constructors where an implicit constructor can be used. Please review this at https://codereview.chromium.org/204293004/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge Affected files (+176, -181 lines): M

[v8-dev] A64: Minor cleaning in StoreStubCompiler::GenerateStoreField. (issue 206183005)

2014-03-20 Thread alexandre . rames
Reviewers: ulan, jochen, Description: A64: Minor cleaning in StoreStubCompiler::GenerateStoreField. Abstract a register to simplify code generation. Please review this at https://codereview.chromium.org/206183005/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge Affected files

[v8-dev] Re: A64: Minor cleaning in StoreStubCompiler::GenerateStoreField. (issue 206183005)

2014-03-20 Thread alexandre . rames
On 2014/03/20 10:39:36, ulan wrote: https://codereview.chromium.org/206183005/diff/1/src/a64/stub-cache-a64.cc File src/a64/stub-cache-a64.cc (right): https://codereview.chromium.org/206183005/diff/1/src/a64/stub-cache-a64.cc#newcode465 src/a64/stub-cache-a64.cc:465:

[v8-dev] Re: A64: Minor cleaning in StoreStubCompiler::GenerateStoreField. (issue 206183005)

2014-03-20 Thread alexandre . rames
Updated... https://codereview.chromium.org/206183005/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To unsubscribe from this group and stop receiving emails

[v8-dev] Re: A64: Minor cleaning in StoreStubCompiler::GenerateStoreField. (issue 206183005)

2014-03-20 Thread alexandre . rames
Committed patchset #2 manually as r20116 (presubmit successful). https://codereview.chromium.org/206183005/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] A64: Restore the stack limit protection to 1KB. (issue 206393002)

2014-03-20 Thread alexandre . rames
Reviewers: ulan, jochen, Description: A64: Restore the stack limit protection to 1KB. Please review this at https://codereview.chromium.org/206393002/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge Affected files (+1, -7 lines): M src/a64/simulator-a64.h M

[v8-dev] Re: A64: Restore the stack limit protection to 1KB. (issue 206393002)

2014-03-20 Thread alexandre . rames
Committed patchset #1 manually as r20131 (presubmit successful). https://codereview.chromium.org/206393002/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] Re: A64: Handle a few TODOs. (issue 196473021)

2014-03-18 Thread alexandre . rames
I will split the next TODOs into separate patches. We did so to avoid the review cycle overhead as there are quite a few. https://codereview.chromium.org/196473021/diff/1/src/a64/macro-assembler-a64.cc File src/a64/macro-assembler-a64.cc (right):

[v8-dev] Re: A64: Handle a few TODOs. (issue 196473021)

2014-03-18 Thread alexandre . rames
https://codereview.chromium.org/196473021/diff/1/src/a64/macro-assembler-a64.cc#newcode2467 src/a64/macro-assembler-a64.cc:2467: Cbz(bulk_length, short_copy); On 2014/03/18 12:51:14, ulan wrote: You probably wanted to use flags set by Bics. Yes. Fixed that. Actually, following our

[v8-dev] Re: A64: Handle a few TODOs. (issue 196473021)

2014-03-18 Thread alexandre . rames
Committed patchset #1 manually as r20034 (presubmit successful). https://codereview.chromium.org/196473021/ -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups v8-dev group. To

[v8-dev] A64: Force emission of the veneer pool emission when required. (issue 203443003)

2014-03-18 Thread alexandre . rames
Reviewers: ulan, Description: A64: Force emission of the veneer pool emission when required. Please review this at https://codereview.chromium.org/203443003/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge Affected files (+20, -12 lines): M src/a64/assembler-a64-inl.h M

  1   2   3   >