Relaxing requirements from VFPv3 to VFPv2 would allow devices such as
the Raspberry Pi to run Full-Codegen with VFP enabled, but for
Crankshaft it is not as straightforward.

Crankshaft assumes ARMv7 and VFPv2 devices are usually ARMv6. The
macro assembler usually abstracts the differences between the ARM
architecture variants but for Crankshaft it was assumed that pre-ARMv7
devices would not provide satisfying performances so there was no need
to support them. As a result Crankshaft code directly uses ARMv7
instructions (ubfx, ...) and this patch will not work on ARMv6
devices.

In theory Crankshaft could run on ARMv6 devices, it was more a
pragmatic choice. Allowing support for VFPv2 in fullcodegen does
enable support for ARMv6 devices with hardfp ABI which may be worth
the effort.

Enabling Crankshaft will require a bit more work.

Cheers,
Rodolph.

On 24 July 2012 14:52,  <[email protected]> wrote:
> Reviewers: Rodolph Perfetta, Sven Panne,
>
> Message:
> This change is mostly mechanical. I'm mostly concerned with the change I did
> to
> Vmov in macro-assembler-arm.cc and the way I try to detect VFP2 by matching
> to
> "vfp" in /proc/cpuinfo
>
> Also, it would be great if we could test this patch on a few pieces
> different
> real ARM hardware :)
>
> Please take a look.
>
> Description:
> Relax Crankshaft's requirement from VFP3 to VFP2.
>
> BUG=
> TEST=
>
>
> Please review this at http://codereview.chromium.org/10818026/
>
> SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
>
> Affected files:
>   M build/common.gypi
>   M src/arm/assembler-arm.h
>   M src/arm/assembler-arm.cc
>   M src/arm/builtins-arm.cc
>   M src/arm/code-stubs-arm.h
>   M src/arm/code-stubs-arm.cc
>   M src/arm/codegen-arm.cc
>   M src/arm/cpu-arm.cc
>   M src/arm/deoptimizer-arm.cc
>   M src/arm/full-codegen-arm.cc
>   M src/arm/lithium-codegen-arm.cc
>   M src/arm/macro-assembler-arm.cc
>   M src/arm/stub-cache-arm.cc
>   M src/flag-definitions.h
>   M src/platform-linux.cc
>   M src/v8globals.h
>   M test/cctest/test-assembler-arm.cc
>
>

-- 
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to