Backport following mainline revs to ARM/embedded-4_6-branch:
r174187, r176036, r177015, r177017, r177018, r177019, 177022, 177025

Committed.

2011-09-20  Jiangning Liu  <jiangning....@arm.com>

        Backport r177025 from mainline
        2011-08-01  Julian Brown  <jul...@codesourcery.com>
 
        * configure.ac (fixed-point): Add ARM support.
        * configure: Regenerate.
        * config/arm/arm.c (arm_fixed_mode_set): New struct.
        (arm_set_fixed_optab_libfunc): New.
        (arm_set_fixed_conv_libfunc): New.
        (arm_init_libfuncs): Initialise fixed-point helper libfuncs with
        ARM-specific names.
        (aapcs_libcall_value): Return sub-word-size fixed-point libcall
        return values in SImode.
        (arm_return_in_msb): Return fixed-point types in the msb.
        (arm_pad_reg_upwards, arm_pad_arg_upwards): Pad fixed-point types
        upwards.
        (arm_scalar_mode_supported_p): Support fixed-point modes.
        (arm_vector_mode_supported_p): Support vector fixed-point modes.
        * config/arm/arm.h (SHORT_FRACT_TYPE_SIZE, FRACT_TYPE_SIZE)
        (LONG_FRACT_TYPE_SIZE, LONG_LONG_FRACT_TYPE_SIZE)
        (SHORT_ACCUM_TYPE_SIZE, ACCUM_TYPE_SIZE, LONG_ACCUM_TYPE_SIZE)
        (LONG_LONG_ACCUM_TYPE_SIZE, MAX_FIXED_MODE_SIZE): Define.
        * config/arm/iterators.md (FIXED, ADDSUB, UQADDSUB, QADDSUB, QMUL):
        New mode iterators.
        (qaddsub_suf): New mode attribute.
        * config/arm/arm-modes.def (FRACT, UFRACT, ACCUM, UACCUM): Declare
        vector modes.
        * config/arm/predicates.md (sat_shift_operator): New predicate.
        * config/arm/arm-fixed.md: New.
        * config/arm/arm.md: Include arm-fixed.md.
        * config/arm/t-arm (MD_INCLUDES): Add arm-fixed.md.

2011-09-20  Jiangning Liu  <jiangning....@arm.com>

        Backport r177022 from mainline
        2011-08-01  Julian Brown  <jul...@codesourcery.com>

        * calls.c (emit_library_call_value_1): Support padding for libcall
        arguments and return values.
        * config/arm/arm.c (arm_pad_arg_upward): Pad half-float values
        downwards in big-endian mode.

2011-09-20  Jiangning Liu  <jiangning....@arm.com>

        Backport r177018 from mainline
        2011-08-01  Julian Brown  <jul...@codesourcery.com>
 
        * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Support FIXED_CST.

2011-09-20  Jiangning Liu  <jiangning....@arm.com>

        Backport r177017 from mainline
        2011-08-01  Julian Brown  <jul...@codesourcery.com>

        * final.c (output_addr_const): Print fixed-point constants as
        decimal not hex.

2011-09-20  Jiangning Liu  <jiangning....@arm.com>

        Backport r177015 from mainline
        2011-08-01  Julian Brown  <jul...@codesourcery.com>

        * optabs.c (prepare_cmp_insn): Use correct biasing for fixed-point
        comparison helpers.

2011-09-20  Jiangning Liu  <jiangning....@arm.com>

        Backport r176036 from mainline
        2011-07-08  Rainer Orth  <r...@cebitec.uni-bielefeld.de>

        * config/fixed-bit.c, config/fixed-bit.h: Move to ../libgcc.

testsuite:
2011-09-20  Jiangning Liu  <jiangning....@arm.com>

        Backport r177025 from mainline
        2011-08-01  Julian Brown  <jul...@codesourcery.com>

        * gcc.target/arm/fixed-point-exec.c: New test.

libgcc:
2011-09-20  Jiangning Liu  <jiangning....@arm.com>

        Backport r177025 from mainline
        2011-08-01  Julian Brown  <jul...@codesourcery.com>
 
        * config.host (arm*-*-linux*, arm*-*-uclinux*, arm*-*-eabi*)
        (arm*-*-symbianelf*): Add t-fixedpoint-gnu-prefix makefile fragment.
        * config/arm/bpabi-lib.h (LIBGCC2_FIXEDBIT_GNU_PREFIX): Define.

2011-09-20  Jiangning Liu  <jiangning....@arm.com>

        Backport r177019 from mainline
        2011-08-01  Julian Brown  <jul...@codesourcery.com>

        * Makefile.in (LIBGCC_VER_FIXEDPOINT_GNU_PREFIX): New.
        (libgcc-std.ver.in): Use above.
        * fixed-bit.h (LIBGCC2_FIXEDBIT_GNU_PREFIX): Define, if
        LIBGCC2_GNU_PREFIX is defined.  Use instead of LIBGCC2_GNU_PREFIX
        throughout file.
        * config/t-fixedpoint-gnu-prefix: New file.
        * config/t-gnu-prefix (LIBGCC_VER_FIXEDPOINT_GNU_PREFIX): Set.
        * libgcc-std.ver.in (fixed-point routines): Use __FIXPTPFX__
        instead of __PFX__.

2011-09-20  Jiangning Liu  <jiangning....@arm.com>

        Backport r176036 from mainline
        2011-07-08  Rainer Orth  <r...@cebitec.uni-bielefeld.de>

        * fixed-bit.c, fixed-bit.h: New files.
        * fixed-obj.mk ($o$(objext), $(o)_s$(objext)): Use $(srcdir) to
        refer to fixed-bit.c.

2011-09-20  Jiangning Liu  <jiangning....@arm.com>

        Partially backport r174187 from mainline
        2011-05-25  Bernd Schmidt  <ber...@codesourcery.com>

        * libgcc-std.ver.in: New file.
        * Makefile.in (LIBGCC_VER_GNU_PREFIX, LIBGCC_VER_SYMBOLS_PREFIX):
New
        variables.
        (libgcc-std.ver): New rule.
        * config/t-gnu-prefix: New file.



Reply via email to