- 20 Jun, 2014 1 commit
-
-
mstarzinger@chromium.org authored
R=rossberg@chromium.org Review URL: https://codereview.chromium.org/333013002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jun, 2014 1 commit
-
-
jochen@chromium.org authored
- this avoids using relative include paths which are forbidden by the style guide - makes the code more readable since it's clear which header is meant - allows for starting to use checkdeps BUG=none R=jkummerow@chromium.org, danno@chromium.org LOG=n Review URL: https://codereview.chromium.org/304153016 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21625 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 May, 2014 1 commit
-
-
rodolph.perfetta@arm.com authored
Fixes extract when imms = 0 because a left shift of 64 is not valid. R=rodolph.perfetta@arm.com, svenpanne@chromium.org Review URL: https://codereview.chromium.org/286193004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21459 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 May, 2014 1 commit
-
-
m.m.capewell@googlemail.com authored
CPUFeatures::Probe has been modified such that it can be called only once, but the cctests make two calls in native builds: once in VM init, and once in each test setup. This patch removes the call in the test setup. BUG= R=ulan@chromium.org Review URL: https://codereview.chromium.org/285273003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21337 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 May, 2014 1 commit
-
-
Jacob.Bramley@arm.com authored
- W-sized values passed to Printf are now handled correctly by the simulator. In AAPCS64, int32_t and int64_t are passed in the same way, so this didn't affect non-simulator builds. - Since Printf now records the type and size of each argument, it is possible to mix argument types. - It is now possible to print the stack pointer. There is only one remaining restriction: The `csp` register cannot be printed unless it is the current stack pointer. This is because it is modified by BumpSystemStackPointer when the caller-saved registers are preserved. BUG= R=rmcilroy@chromium.org Review URL: https://codereview.chromium.org/268353005 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21272 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 May, 2014 1 commit
-
-
rmcilroy@chromium.org authored
Even although the Arm64 specification specifies that csp only needs to be aligned to 16 bytes if it is dereferenced, some implementations show poor performance. Also makes the following change: - Enable CPU support for arm64 to enable probing of cpu implementer and cpu part. - Add ALWAYS_ALIGN_CSP CpuFeature for Arm64 and set it based on runtime probing of the cpu imp - Rename PrepareForPush and PrepareForPop to PushPreamble and PopPostamble and move PopPostabl Original Review URL: https://codereview.chromium.org/264773004 R=ulan@chromium.org Review URL: https://codereview.chromium.org/271543004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21221 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 May, 2014 1 commit
-
-
Jacob.Bramley@arm.com authored
BUG= R=ulan@chromium.org Review URL: https://codereview.chromium.org/255343004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21156 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Apr, 2014 1 commit
-
-
ulan@chromium.org authored
BUG= R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/253873010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Apr, 2014 1 commit
-
-
yangguo@chromium.org authored
R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/235153003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20795 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Apr, 2014 1 commit
-
-
alexandre.rames@arm.com authored
This fixes an out-of-range label error for an ADR instruction in the mozilla/data/js1_5/Regress/regress-280769-2.js test. R=ulan@chromium.org Review URL: https://codereview.chromium.org/222433002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20545 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Apr, 2014 1 commit
-
-
alexandre.rames@arm.com authored
Fix simulation and tests for the [-0.5, -0.0[ range for FRINTA and FRINTN, and add support for FRINTM. R=ulan@chromium.org Review URL: https://codereview.chromium.org/223843002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20487 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Mar, 2014 2 commits
-
-
baptiste.afsa@arm.com authored
BUG=v8:3226 R=ulan@chromium.org, jochen@chromium.org LOG=N Review URL: https://codereview.chromium.org/196173021 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20213 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
R=yangguo@chromium.org BUG= Review URL: https://codereview.chromium.org/207543003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20176 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Mar, 2014 1 commit
-
-
jochen@chromium.org authored
BUG=354405 R=ulan@chromium.org, rodolph.perfetta@arm.com LOG=y Review URL: https://codereview.chromium.org/207823003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 14 Mar, 2014 1 commit
-
-
jacob.bramley@arm.com authored
- Return the correct NaN when an invalid operation generates a NaN. - When one or more operands are NaN, handle them as the processor would, prioritising signalling NaNs and making them quiet. - Fix fmadd and related instructions: - Fnmadd is fma(-n, m, -a), not -fma(n, m, a). - Some common libc implementations incorrectly implement fma for zero results, so work around these cases. - Replace some unreliable tests. This patch also adds support for Default-NaN mode, since once all the other work was done, it only required a couple of lines of code. Default-NaN mode was used for an optimisation in ARM, and it should now be possible to apply the same optimisation to A64. BUG= R=jochen@chromium.org Review URL: https://codereview.chromium.org/199083005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19927 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Mar, 2014 1 commit
-
-
jacob.bramley@arm.com authored
BUG= R=ulan@chromium.org Review URL: https://codereview.chromium.org/194753002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19885 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Mar, 2014 2 commits
-
-
alexandre.rames@arm.com authored
Mapping the code offsets between code with and without debug break slots requires information about the size of the veneer pools and constant pools. BUG=v8:3173 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/188253005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19857 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
alexandre.rames@arm.com authored
R=ulan@chromium.org Review URL: https://codereview.chromium.org/194473005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19855 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Mar, 2014 1 commit
-
-
jacob.bramley@arm.com authored
This replaces Tmp0() and Tmp1() with a more flexible scratch register pool. A scope-based utility can temporarily acquire registers from this pool as needed. We no longer have to worry about whether to use Tmp0(), Tmp1() or something else; the scope can just get the next available scratch register. BUG= R=jochen@chromium.org, rmcilroy@chromium.org Review URL: https://codereview.chromium.org/164793003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19768 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Feb, 2014 1 commit
-
-
jochen@chromium.org authored
The simulator now deletes its decoder in its dtor. Therefore, we must always allocate the decoder on the heap. BUG=none R=ulan@chromium.org, jacob.bramley@arm.com LOG=n Review URL: https://codereview.chromium.org/183893005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19596 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 Feb, 2014 1 commit
-
-
jochen@chromium.org authored
This will allow for replacing the dispatcher with a concrete decoder visitor. BUG=none R=ulan@chromium.org, rodolph.perfetta@arm.com LOG=n Review URL: https://codereview.chromium.org/181253002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19562 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Feb, 2014 2 commits
-
-
alexandre.rames@arm.com authored
The branch types include 'always' and 'never', and types like reg_zero (CBZ) and reg_bit_clear (TBZ). This will be used by incoming improvements to the code generated for deoptimization exit points. R=ulan@chromium.org Review URL: https://codereview.chromium.org/170783002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19497 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jacob.bramley@arm.com authored
This addresses several TODOs: - Push and Pop requests can be queued up so that arrays of Registers can be pushed efficiently, with just one PrepareForPush/Pop. - PushMultipleTimes now takes an Operand. This allows variable-length arguments arrays to be initialized, for example. - A NoUseRealAbortsScope has been added to Abort so that AssertStackConsistency can be called from PrepareForPush without introducing infinite recursion. BUG= R=rmcilroy@chromium.org, ulan@chromium.org Review URL: https://codereview.chromium.org/170623002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19474 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Feb, 2014 1 commit
-
-
alexandre.rames@arm.com authored
Code generation would fail when assembling a branch to a label that is bound outside the immediate range of the instruction. A64 is sensitive to this, as the various branching instructions have different ranges, going down to +-32KB for TBZ/TBNZ. The MacroAssembler is augmented to handle branches to targets that may exceed the immediate range of instructions. When branching backward to a label exceeding the instruction range, the MacroAssembler can simply tweak the generated code to use an unconditional branch with a longer range. For example instead of B(cond, &label); the MacroAssembler can generate: b(InvertCondition(cond), &done); b(&label); bind(&done); Since the target is not known when the branch is emitted, forward branches uses a different mechanism. The MacroAssembler keeps track of forward branches to unbound labels. When the code generation approaches the end of the range of a branch, a veneer is generated for the branch. BUG=v8:3148 LOG=Y R=ulan@chromium.org Review URL: https://codereview.chromium.org/169893002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19444 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Feb, 2014 4 commits
-
-
danno@chromium.org authored
Causes a64 debug asserts TBR=jacob.bramley@arm.com,ulan@chromium.org Review URL: https://codereview.chromium.org/169303007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19419 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
R=jochen@chromium.org BUG= Review URL: https://codereview.chromium.org/169523005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19415 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rmcilroy@chromium.org authored
Added support for truncating DoubleToIStub and reorganize the macro-assembler dToI operations to do the fast-path inline and the slow path by calling the stub. This a port essentially a port of https://codereview.chromium.org/23129003/. R=jacob.bramley@arm.com, ulan@chromium.org Review URL: https://codereview.chromium.org/160423002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19414 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jacob.bramley@arm.com authored
This addresses several TODOs: - Push and Pop requests can be queued up so that arrays of Registers can be pushed efficiently, with just one PrepareForPush/Pop. - PushMultipleTimes now takes an Operand. This allows variable-length arguments arrays to be initialized, for example. - A NoUseRealAbortsScope has been added to Abort so that AssertStackConsistency can be called from PrepareForPush without introducing infinite recursion. BUG= R=ulan@chromium.org Review URL: https://codereview.chromium.org/169533002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19403 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Feb, 2014 1 commit
-
-
ulan@chromium.org authored
BUG=v8:3113 LOG=Y R=jochen@chromium.org, rmcilroy@chromium.org, rodolph.perfetta@arm.com Review URL: https://codereview.chromium.org/148293020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19311 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-