r192560 - in /trunk/gcc: ChangeLog config/arm/a...

ramana@gcc.gnu.org ramana@gcc.gnu.org
Thu Oct 18 12:02:00 GMT 2012


Author: ramana
Date: Thu Oct 18 12:02:01 2012
New Revision: 192560

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=192560
Log:
Add support for fma intrinsics for ARM.

Correct dates in changelog from earlier commit.


2012-10-18  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
	    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

        * config/arm/arm.c (neon_builtin_data): Add vfma and vfms
      	builtins.
        * config/arm/neon-docgen.ml (intrinsic_groups): Add
        fused-multiply-* groups.
        * config/neon-gen.ml (print_feature_test_start): New function.
        (print_feature_test_end): Likewise.
        (print_variant): Print feature test macros.
        * config/arm/neon-testgen.ml (emit_prologue): Allow different
        tests to require different effective targets.
        (effective_target): New function.
        (test_intrinsic): Specify correct effective targets.
        * gcc/config/arm/neon.md (fma<VCVTF:mode>4_intrinsic): New pattern.
        (fmsub<VCVTF:mode>4_intrinsic): Likewise.
        (neon_vfma<VCVFT:mode>): New expand.
        (neon_vfms<VCVFT:mode>): Likewise.
        * config/neon.ml (opcode): Add Vfma and Vfms.
        (features): Add Requires_feature.
        (ops): Add VFMA and VFMS intrinsics.
        * config/arm/arm_neon.h: Regenerate.
        * doc/arm-neon-intrinsics.texi: Likewise.





2012-10-18  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>

        * gcc.target/arm/neon/vfmaQf32.c: New testcase.
        * gcc.target/arm/neon/vfmaf32.c: Likewise.
        * gcc.target/arm/neon/vfmsQf32.c: Likewise.
        * gcc.target/arm/neon/vfmsf32.c: Likewise.



Added:
    trunk/gcc/testsuite/gcc.target/arm/neon/vfmaQf32.c
    trunk/gcc/testsuite/gcc.target/arm/neon/vfmaf32.c
    trunk/gcc/testsuite/gcc.target/arm/neon/vfmsQf32.c
    trunk/gcc/testsuite/gcc.target/arm/neon/vfmsf32.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/arm/arm.c
    trunk/gcc/config/arm/arm_neon.h
    trunk/gcc/config/arm/neon-docgen.ml
    trunk/gcc/config/arm/neon-gen.ml
    trunk/gcc/config/arm/neon-testgen.ml
    trunk/gcc/config/arm/neon.md
    trunk/gcc/config/arm/neon.ml
    trunk/gcc/testsuite/ChangeLog



More information about the Gcc-cvs mailing list