Age | Commit message (Collapse) | Author | Files | Lines |
|
is already implemented in match.pd.
2015-07-31 Richard Biener <rguenther@suse.de>
* fold-const.c (fold_binary_loc): Remove X ^ C1 == C2
-> X == (C1 ^ C2) which is already implemented in match.pd.
Remove redundant dispatching to fold_relational_const.
Move unordered self and NaN compares ...
* match.pd: ... as patterns here. Remove some stray captures
and add a comment.
From-SVN: r226434
|
|
gcc/
* config/i386/i386.c
(bdesc_special_args): Convert mask type from signed to unsigned for
masked builtins.
(ix86_expand_args_builtin): Do not handle UINT_FTYPE_V2DF,
UINT64_FTYPE_V2DF, UINT64_FTYPE_V4SF, V16QI_FTYPE_V8DI,
V16HI_FTYPE_V16SI, V16SI_FTYPE_V16SI, V16SF_FTYPE_FLOAT,
V8HI_FTYPE_V8DI, V8UHI_FTYPE_V8UHI, V8SI_FTYPE_V8DI, V8SF_FTYPE_V8DF,
V8DI_FTYPE_INT64, V8DI_FTYPE_V4DI, V8DI_FTYPE_V8DI, V8DF_FTYPE_DOUBLE,
V8DF_FTYPE_V8SI, V16SI_FTYPE_V16SI_V16SI, V16SF_FTYPE_V16SF_V16SI,
V8DI_FTYPE_V8DI_V8DI, V8DF_FTYPE_V8DF_V8DI, V4SI_FTYPE_V4SF_V4SF,
V4SF_FTYPE_V4SF_UINT64, V2UDI_FTYPE_V4USI_V4USI, V2DI_FTYPE_V2DF_V2DF,
V2DF_FTYPE_V2DF_UINT64, V4UDI_FTYPE_V8USI_V8USI, QI_FTYPE_V8DI_V8DI,
HI_FTYPE_V16SI_V16SI, HI_FTYPE_HI_INT, V16SF_FTYPE_V16SF_V16SF_V16SF,
V16SF_FTYPE_V16SF_V16SI_V16SF, V16SF_FTYPE_V16SI_V16SF_HI,
V16SF_FTYPE_V16SI_V16SF_V16SF, V16SI_FTYPE_V16SF_V16SI_HI,
V8DI_FTYPE_V8SF_V8DI_QI, V8SF_FTYPE_V8DI_V8SF_QI, V8DI_FTYPE_PV4DI,
V8DF_FTYPE_V8DI_V8DF_QI, V16SI_FTYPE_V16SI_V16SI_V16SI,
V2DI_FTYPE_V2DI_V2DI_V2DI, V8DI_FTYPE_V8DF_V8DI_QI, V8DF_FTYPE_PV4DF,
V8SI_FTYPE_V8SI_V8SI_V8SI, V8DF_FTYPE_V8DF_V8DF_V8DF, UINT_FTYPE_V4SF,
V8DF_FTYPE_V8DF_V8DI_V8DF, V8DF_FTYPE_V8DI_V8DF_V8DF,
V8DF_FTYPE_V8SF_V8DF_QI, V8DI_FTYPE_V8DI_V8DI_V8DI, V16SF_FTYPE_PV4SF,
V8SF_FTYPE_V8DF_V8SF_QI, V8SI_FTYPE_V8DF_V8SI_QI, V16SI_FTYPE_PV4SI,
V2DF_FTYPE_V2DF_V4SF_V2DF_QI, V4SF_FTYPE_V4SF_V2DF_V4SF_QI,
V8DI_FTYPE_V8DI_SI_V8DI_V8DI, QI_FTYPE_V8DF_V8DF_INT_QI,
HI_FTYPE_V16SF_V16SF_INT_HI, V16SF_FTYPE_V16SF_V16SF_V16SI_INT_HI,
VOID_FTYPE_PDOUBLE_V2DF_QI, VOID_FTYPE_PFLOAT_V4SF_QI,
V2DF_FTYPE_PCDOUBLE_V2DF_QI, V4SF_FTYPE_PCFLOAT_V4SF_QI.
* config/i386/i386-builtin-types.def
(V16QI_FTYPE_V16SI): Remove.
(V8DF_FTYPE_V8SI): Ditto.
(V8HI_FTYPE_V8DI): Ditto.
(V8SI_FTYPE_V8DI): Ditto.
(V8SF_FTYPE_V8DF): Ditto.
(V8SF_FTYPE_V8DF_V8SF_QI): Ditto.
(V16HI_FTYPE_V16SI): Ditto.
(V16SF_FTYPE_V16HI): Ditto.
(V16SF_FTYPE_V16HI_V16SF_HI): Ditto.
(V16SF_FTYPE_V16SI): Ditto.
(V4DI_FTYPE_V4DI): Ditto.
(V16SI_FTYPE_V16SF): Ditto.
(V16SF_FTYPE_FLOAT): Ditto.
(V8DF_FTYPE_DOUBLE): Ditto.
(V8DI_FTYPE_INT64): Ditto.
(V8DI_FTYPE_V4DI): Ditto.
(V16QI_FTYPE_V8DI): Ditto.
(UINT_FTYPE_V4SF): Ditto.
(UINT64_FTYPE_V4SF): Ditto.
(UINT_FTYPE_V2DF): Ditto.
(UINT64_FTYPE_V2DF): Ditto.
(V16SI_FTYPE_V16SI): Ditto.
(V8DI_FTYPE_V8DI): Ditto.
(V16SI_FTYPE_PV4SI): Ditto.
(V16SF_FTYPE_PV4SF): Ditto.
(V8DI_FTYPE_PV2DI): Ditto.
(V8DF_FTYPE_PV2DF): Ditto.
(V4DI_FTYPE_PV2DI): Ditto.
(V4DF_FTYPE_PV2DF): Ditto.
(V16SI_FTYPE_PV2SI): Ditto.
(V16SF_FTYPE_PV2SF): Ditto.
(V8DI_FTYPE_PV4DI): Ditto.
(V8DF_FTYPE_PV4DF): Ditto.
(V8SF_FTYPE_FLOAT): Ditto.
(V4SF_FTYPE_FLOAT): Ditto.
(V4DF_FTYPE_DOUBLE): Ditto.
(V8SF_FTYPE_PV4SF): Ditto.
(V8SI_FTYPE_PV4SI): Ditto.
(V4SI_FTYPE_PV2SI): Ditto.
(V8SF_FTYPE_PV2SF): Ditto.
(V8SI_FTYPE_PV2SI): Ditto.
(V16SF_FTYPE_PV8SF): Ditto.
(V16SI_FTYPE_PV8SI): Ditto.
(V8DI_FTYPE_V8SF): Ditto.
(V4DI_FTYPE_V4SF): Ditto.
(V2DI_FTYPE_V4SF): Ditto.
(V64QI_FTYPE_QI): Ditto.
(V32HI_FTYPE_HI): Ditto.
(V8UHI_FTYPE_V8UHI): Ditto.
(V16UHI_FTYPE_V16UHI): Ditto.
(V32UHI_FTYPE_V32UHI): Ditto.
(V2UDI_FTYPE_V2UDI): Ditto.
(V4UDI_FTYPE_V4UDI): Ditto.
(V8UDI_FTYPE_V8UDI): Ditto.
(V4USI_FTYPE_V4USI): Ditto.
(V8USI_FTYPE_V8USI): Ditto.
(V16USI_FTYPE_V16USI): Ditto.
(V2DF_FTYPE_V2DF_UINT64): Ditto.
(V2DI_FTYPE_V2DF_V2DF): Ditto.
(V2UDI_FTYPE_V4USI_V4USI): Ditto.
(V8DF_FTYPE_V8DF_V8DI): Ditto.
(V4SF_FTYPE_V4SF_UINT64): Ditto.
(V4SI_FTYPE_V4SF_V4SF): Ditto.
(V16SF_FTYPE_V16SF_V16SI): Ditto.
(V64QI_FTYPE_V32HI_V32HI): Ditto.
(V32HI_FTYPE_V16SI_V16SI): Ditto.
(V8DF_FTYPE_V8DF_V8DF_V8DI_INT_QI): Ditto.
(V16SF_FTYPE_V16SF_V16SF_V16SI_INT_HI): Ditto.
(V32HI_FTYPE_V64QI_V64QI): Ditto.
(V32HI_FTYPE_V32HI_V32HI): Ditto.
(V16HI_FTYPE_V16HI_V16HI_INT_V16HI_HI): Ditto.
(V16SI_FTYPE_V16SI_V4SI): Ditto.
(V16SI_FTYPE_V16SI_V16SI): Ditto.
(V16SI_FTYPE_V32HI_V32HI): Ditto.
(V16SI_FTYPE_V16SI_SI): Ditto.
(V8DI_FTYPE_V8DI_V8DI): Ditto.
(V4UDI_FTYPE_V8USI_V8USI): Ditto.
(V8DI_FTYPE_V16SI_V16SI): Ditto.
(V8DI_FTYPE_V8DI_V2DI): Ditto.
(QI_FTYPE_QI): Ditto.
(SI_FTYPE_SI): Ditto.
(DI_FTYPE_DI): Ditto.
(QI_FTYPE_QI_QI): Ditto.
(QI_FTYPE_QI_INT): Ditto.
(HI_FTYPE_HI_INT): Ditto.
(SI_FTYPE_SI_INT): Ditto.
(DI_FTYPE_DI_INT): Ditto.
(HI_FTYPE_V16QI_V16QI): Ditto.
(SI_FTYPE_V32QI_V32QI): Ditto.
(DI_FTYPE_V64QI_V64QI): Ditto.
(QI_FTYPE_V8HI_V8HI): Ditto.
(HI_FTYPE_V16HI_V16HI): Ditto.
(SI_FTYPE_V32HI_V32HI): Ditto.
(QI_FTYPE_V4SI_V4SI): Ditto.
(QI_FTYPE_V8SI_V8SI): Ditto.
(QI_FTYPE_V2DI_V2DI): Ditto.
(QI_FTYPE_V4DI_V4DI): Ditto.
(QI_FTYPE_V8DI_V8DI): Ditto.
(HI_FTYPE_V16SI_V16SI): Ditto.
(HI_FTYPE_V16SI_V16SI_INT_HI): Ditto.
(QI_FTYPE_V8DF_V8DF_INT_QI): Ditto.
(HI_FTYPE_V16SF_V16SF_INT_HI): Ditto.
(V32HI_FTYPE_V32HI_V32HI_V32HI): Ditto.
(V4SF_FTYPE_V4SF_V2DF_V4SF_QI): Ditto.
(V8DF_FTYPE_V8DF_V8DF_V8DF): Ditto.
(V16SF_FTYPE_V16SF_V16SF_V16SF): Ditto.
(V8DF_FTYPE_V8SF_V8DF_QI): Ditto.
(V8DI_FTYPE_V8DF_V8DI_QI): Ditto.
(V8DF_FTYPE_V8DI_V8DF_V8DF): Ditto.
(V2DF_FTYPE_V2DF_V4SF_V2DF_QI): Ditto.
(V16SF_FTYPE_V16SI_V16SF_HI): Ditto.
(V16SF_FTYPE_V16SI_V16SF_V16SF): Ditto.
(V8SI_FTYPE_V8DF_V8SI_QI): Ditto.
(V8DI_FTYPE_PCCHAR_V8DI_QI): Ditto.
(V8SF_FTYPE_PCFLOAT_V8SF_QI): Ditto.
(V4SF_FTYPE_PCFLOAT_V4SF_QI): Ditto.
(V4DF_FTYPE_PCDOUBLE_V4DF_QI): Ditto.
(V2DF_FTYPE_PCDOUBLE_V2DF_QI): Ditto.
(V8SI_FTYPE_PCCHAR_V8SI_QI): Ditto.
(V4SI_FTYPE_PCCHAR_V4SI_QI): Ditto.
(V4DI_FTYPE_PCCHAR_V4DI_QI): Ditto.
(V2DI_FTYPE_PCCHAR_V2DI_QI): Ditto.
(V16SF_FTYPE_PCV8SF_V16SF_HI): Ditto.
(V16SI_FTYPE_PCV8SI_V16SI_HI): Ditto.
(V8DF_FTYPE_PCV2DF_V8DF_QI): Ditto.
(V8SF_FTYPE_PCV4SF_V8SF_QI): Ditto.
(V8DI_FTYPE_PCV2DI_V8DI_QI): Ditto.
(V8SI_FTYPE_PCV4SI_V8SI_QI): Ditto.
(V4DF_FTYPE_PCV2DF_V4DF_QI): Ditto.
(V4DI_FTYPE_PCV2DI_V4DI_QI): Ditto.
(VOID_FTYPE_PDOUBLE_V2DF_QI): Ditto.
(VOID_FTYPE_PFLOAT_V4SF_QI): Ditto.
(V16SI_FTYPE_V16SF_V16SI_HI): Ditto.
(V8DI_FTYPE_V8SF_V8DI_QI): Ditto.
(V8SF_FTYPE_V8DI_V8SF_QI): Ditto.
(V8DF_FTYPE_V8DI_V8DF_QI): Ditto.
(V2DF_FTYPE_V2DF_V2DF_V2DI): Ditto.
(V4SF_FTYPE_V4SF_V4SF_V4SI): Ditto.
(V2UDI_FTYPE_V2UDI_V2UDI_V2UDI): Ditto.
(V4USI_FTYPE_V4USI_V4USI_V4USI): Ditto.
(V8UHI_FTYPE_V8UHI_V8UHI_V8UHI): Ditto.
(V16UQI_FTYPE_V16UQI_V16UQI_V16UQI): Ditto.
(V4DF_FTYPE_V4DF_V4DF_V4DI): Ditto.
(V8SF_FTYPE_V8SF_V8SF_V8SI): Ditto.
(V8DI_FTYPE_V8DI_V8DI_V8DI): Ditto.
(V16SI_FTYPE_V16SI_V16SI_V16SI): Ditto.
(V2DF_FTYPE_V2DF_V2DI_V2DF): Ditto.
(V4DF_FTYPE_V4DF_V4DI_V4DF): Ditto.
(V8DF_FTYPE_V8DF_V8DI_V8DF): Ditto.
(V4SF_FTYPE_V4SF_V4SI_V4SF): Ditto.
(V8SF_FTYPE_V8SF_V8SI_V8SF): Ditto.
(V16SF_FTYPE_V16SF_V16SI_V16SF): Ditto.
(V8DI_FTYPE_V8DI_SI_V8DI_V8DI): Ditto.
(PVOID_FTYPE_PVOID_PVOID_ULONG): Ditto.
(V4SF_FTYPE_V2DF_V4SF_QI): Convert mask type from signed to unsigned.
(V4SF_FTYPE_V4DF_V4SF_QI): Ditto.
(V4SF_FTYPE_V8HI_V4SF_QI): Ditto.
(V8SF_FTYPE_V8HI_V8SF_QI): Ditto.
(V16SI_FTYPE_V16SI_V16SI_HI): Ditto.
(V8DI_FTYPE_V8DI_V8DI_QI): Ditto.
(V2DF_FTYPE_V4DF_INT_V2DF_QI): Ditto.
(V2DF_FTYPE_V8DF_INT_V2DF_QI): Ditto.
(V2DI_FTYPE_V2DI_INT_V2DI_QI): Ditto.
(V4DF_FTYPE_V8DF_INT_V4DF_QI): Ditto.
(V4SF_FTYPE_V8SF_INT_V4SF_QI): Ditto.
(V4SI_FTYPE_V2DF_V4SI_QI): Ditto.
(V4SI_FTYPE_V4SI_INT_V4SI_QI): Ditto.
(V4SI_FTYPE_V8HI_V8HI_V4SI_QI): Ditto.
(V4SI_FTYPE_V8SI_INT_V4SI_QI): Ditto.
(V8HI_FTYPE_V16QI_V16QI_V8HI_QI): Ditto.
(V8HI_FTYPE_V8SF_INT_V8HI_QI): Ditto.
(V8HI_FTYPE_V4SF_INT_V8HI_QI): Ditto.
(V8SF_FTYPE_V16SF_INT_V8SF_QI): Ditto.
(V4SF_FTYPE_V16SF_INT_V4SF_QI): Ditto.
(V8DF_FTYPE_V8DF_V2DF_INT_V8DF_QI): Ditto.
(V8DF_FTYPE_V8DF_V4DF_INT_V8DF_QI): Ditto.
(V8DF_FTYPE_V8DF_V8DF_INT_V8DF_QI): Ditto.
(V8DF_FTYPE_V8DF_INT_V8DF_QI): Ditto.
(V4DF_FTYPE_V4DF_V4DF_V4DI_INT_QI): Ditto.
(V2DF_FTYPE_V2DF_V2DF_V2DI_INT_QI): Ditto.
(V16SF_FTYPE_V16SF_V16SF_INT_V16SF_HI): Ditto.
(V16SF_FTYPE_V16SF_INT_V16SF_HI): Ditto.
(V16SI_FTYPE_V16SI_V4SI_INT_V16SI_HI): Ditto.
(V8SF_FTYPE_V8SF_V8SF_V8SI_INT_QI): Ditto.
(V4SF_FTYPE_V4SF_V4SF_V4SI_INT_QI): Ditto.
(V16SF_FTYPE_V16SF_V4SF_INT_V16SF_HI): Ditto.
(V16SF_FTYPE_V16SF_V8SF_INT_V16SF_HI): Ditto.
(V16HI_FTYPE_V32QI_V32QI_V16HI_HI): Ditto.
(V32HI_FTYPE_V64QI_V64QI_V32HI_SI): Ditto.
(V16HI_FTYPE_V16SF_INT_V16HI_HI): Ditto.
(V16SI_FTYPE_V16SI_V8SI_INT_V16SI_HI): Ditto.
(V4SI_FTYPE_V16SI_INT_V4SI_QI): Ditto.
(V16SI_FTYPE_V16SI_V16SI_INT_V16SI_HI): Ditto.
(V8SI_FTYPE_V16HI_V16HI_V8SI_QI): Ditto.
(V16SI_FTYPE_V32HI_V32HI_V16SI_HI): Ditto.
(V8SI_FTYPE_V8SI_INT_V8SI_QI): Ditto.
(V8SI_FTYPE_V16SI_INT_V8SI_QI): Ditto.
(V16SI_FTYPE_V16SI_V4SI_V16SI_HI): Ditto.
(V16SI_FTYPE_V16SI_INT_V16SI_HI): Ditto.
(V8DI_FTYPE_V8DI_V8DI_INT_V8DI_QI): Ditto.
(V8DI_FTYPE_V8DI_V8DI_INT_V8DI_DI): Ditto.
(V4DI_FTYPE_V4DI_V4DI_INT_V4DI_SI): Ditto.
(V2DI_FTYPE_V2DI_V2DI_INT_V2DI_HI): Ditto.
(V8DI_FTYPE_V8DI_V2DI_INT_V8DI_QI): Ditto.
(V8DI_FTYPE_V8DI_V4DI_INT_V8DI_QI): Ditto.
(V4DI_FTYPE_V8DI_INT_V4DI_QI): Ditto.
(V8DI_FTYPE_V8DI_V2DI_V8DI_QI): Ditto.
(V8DI_FTYPE_V8DI_INT_V8DI_QI): Ditto.
(V4DI_FTYPE_V4DI_INT_V4DI_QI): Ditto.
(V2DI_FTYPE_V4DI_INT_V2DI_QI): Ditto.
(V2DI_FTYPE_V8DI_INT_V2DI_QI): Ditto.
(HI_FTYPE_HI): Ditto.
(HI_FTYPE_V16QI): Ditto.
(SI_FTYPE_V32QI): Ditto.
(DI_FTYPE_V64QI): Ditto.
(QI_FTYPE_V8HI): Ditto.
(HI_FTYPE_V16HI): Ditto.
(SI_FTYPE_V32HI): Ditto.
(QI_FTYPE_V4SI): Ditto.
(QI_FTYPE_V8SI): Ditto.
(HI_FTYPE_V16SI): Ditto.
(QI_FTYPE_V2DI): Ditto.
(QI_FTYPE_V4DI): Ditto.
(QI_FTYPE_V8DI): Ditto.
(V16QI_FTYPE_HI): Ditto.
(V32QI_FTYPE_SI): Ditto.
(V64QI_FTYPE_DI): Ditto.
(V8HI_FTYPE_QI): Ditto.
(V16HI_FTYPE_HI): Ditto.
(V32HI_FTYPE_SI): Ditto.
(V4SI_FTYPE_QI): Ditto.
(V4SI_FTYPE_HI): Ditto.
(V8SI_FTYPE_QI): Ditto.
(V8SI_FTYPE_HI): Ditto.
(V2DI_FTYPE_QI): Ditto.
(V4DI_FTYPE_QI): Ditto.
(HI_FTYPE_HI_HI): Ditto.
(SI_FTYPE_SI_SI): Ditto.
(DI_FTYPE_DI_DI): Ditto.
(HI_FTYPE_V16QI_V16QI_HI): Ditto.
(HI_FTYPE_V16QI_V16QI_INT_HI): Ditto.
(SI_FTYPE_V32QI_V32QI_SI): Ditto.
(SI_FTYPE_V32QI_V32QI_INT_SI): Ditto.
(DI_FTYPE_V64QI_V64QI_DI): Ditto.
(DI_FTYPE_V64QI_V64QI_INT_DI): Ditto.
(QI_FTYPE_V8HI_V8HI_QI): Ditto.
(QI_FTYPE_V8HI_V8HI_INT_QI): Ditto.
(HI_FTYPE_V16HI_V16HI_HI): Ditto.
(HI_FTYPE_V16HI_V16HI_INT_HI): Ditto.
(SI_FTYPE_V32HI_V32HI_SI): Ditto.
(SI_FTYPE_V32HI_V32HI_INT_SI): Ditto.
(QI_FTYPE_V4SI_V4SI_QI): Ditto.
(QI_FTYPE_V4SI_V4SI_INT_QI): Ditto.
(QI_FTYPE_V8SI_V8SI_QI): Ditto.
(QI_FTYPE_V8SI_V8SI_INT_QI): Ditto.
(QI_FTYPE_V2DI_V2DI_QI): Ditto.
(QI_FTYPE_V2DI_V2DI_INT_QI): Ditto.
(QI_FTYPE_V4DI_V4DI_QI): Ditto.
(QI_FTYPE_V4DI_V4DI_INT_QI): Ditto.
(QI_FTYPE_V8DI_V8DI_QI): Ditto.
(HI_FTYPE_V16SI_V16SI_HI): Ditto.
(QI_FTYPE_V8DI_V8DI_INT): Ditto.
(QI_FTYPE_V8DI_V8DI_INT_QI): Ditto.
(HI_FTYPE_V16SI_V16SI_INT): Ditto.
(HI_FTYPE_V16SI_V16SI_INT _HI): Ditto.
(QI_FTYPE_V8DF_V8DF_INT): Ditto.
(QI_FTYPE_V8DF_V8DF_INT_QI_INT): Ditto.
(HI_FTYPE_V16SF_V16SF_INT): Ditto.
(HI_FTYPE_V16SF_V16SF_INT_HI_INT): Ditto.
(QI_FTYPE_V2DF_V2DF_INT): Ditto.
(QI_FTYPE_V2DF_V2DF_INT_QI): Ditto.
(QI_FTYPE_V2DF_V2DF_INT_QI_INT): Ditto.
(QI_FTYPE_V4SF_V4SF_INT): Ditto.
(QI_FTYPE_V4SF_V4SF_INT_QI): Ditto.
(QI_FTYPE_V4SF_V4SF_INT_QI_INT): Ditto.
(V16SI_FTYPE_HI): Ditto.
(V8DI_FTYPE_QI): Ditto.
(V2DF_FTYPE_V2DI_V2DF_V2DF_QI): Ditto.
(V2DF_FTYPE_V2DF_V2DI_V2DF_QI): Ditto.
(V4DF_FTYPE_V4DF_V2DF_INT_V4DF_QI): Ditto.
(V4SF_FTYPE_V4SI_V4SF_V4SF_QI): Ditto.
(V4SF_FTYPE_V4SF_V4SI_V4SF_QI): Ditto.
(V4SF_FTYPE_V4SF_V4SF_V4SF_QI): Ditto.
(V8SF_FTYPE_V8SF_V4SF_INT_V8SF_QI): Ditto.
(V8SI_FTYPE_V8SI_V4SI_INT_V8SI_QI): Ditto.
(V4DI_FTYPE_V4DI_V2DI_INT_V4DI_QI): Ditto.
(V2DF_FTYPE_V2DF_V2DF_QI): Ditto.
(V2DF_FTYPE_V4SF_V2DF_QI): Ditto.
(V2DF_FTYPE_V4SI_V2DF_QI): Ditto.
(V4DF_FTYPE_V4DF_V4DF_QI): Ditto.
(V4DF_FTYPE_V4SF_V4DF_QI): Ditto.
(V4DF_FTYPE_V4SI_V4DF_QI): Ditto.
(V8DF_FTYPE_V8DF_V8DF_QI): Ditto.
(V8DF_FTYPE_V8SI_V8DF_QI): Ditto.
(V2DI_FTYPE_V4SI_V2DI_QI): Ditto.
(V2DI_FTYPE_V8HI_V2DI_QI): Ditto.
(V4DI_FTYPE_V4DF_V4DI_QI): Ditto.
(V2DI_FTYPE_V2DF_V2DI_QI): Ditto.
(V2DI_FTYPE_V2DI_V2DI_V2DI_QI): Ditto.
(V2DI_FTYPE_V2DI_V2DI_INT_V2DI_QI): Ditto.
(V4DI_FTYPE_V4DI_V4DI_V4DI_QI): Ditto.
(V4DI_FTYPE_V4DI_V4DI_INT_V4DI_QI): Ditto.
(V8DI_FTYPE_V8SI_V8DI_QI): Ditto.
(V8DI_FTYPE_V8HI_V8DI_QI): Ditto.
(V8DI_FTYPE_V16QI_V8DI_QI): Ditto.
(V2DI_FTYPE_V16QI_V2DI_QI): Ditto.
(V4DI_FTYPE_V16QI_V4DI_QI): Ditto.
(V4DI_FTYPE_V4DI_V4DI_QI): Ditto.
(V4DI_FTYPE_V4SI_V4DI_QI): Ditto.
(V4DI_FTYPE_V8HI_V4DI_QI): Ditto.
(V8DI_FTYPE_V8DI_V8DI_V8DI_QI): Ditto.
(V8DF_FTYPE_V8DI_V8DF_V8DF_QI): Ditto.
(V8DF_FTYPE_V8DF_V8DI_V8DF_QI): Ditto.
(V4DF_FTYPE_V4DI_V4DF_V4DF_QI): Ditto.
(V4DF_FTYPE_V4DF_V4DI_V4DF_QI): Ditto.
(V4DF_FTYPE_V4DF_V4DF_V4DF_QI): Ditto.
(V8DF_FTYPE_V8DF_V8DF_V8DF_QI): Ditto.
(V16QI_FTYPE_V16QI_V16QI_V16QI_HI): Ditto.
(V16HI_FTYPE_V16HI_V16HI_V16HI_HI): Ditto.
(V16SI_FTYPE_V16SI_V16SI_V16SI_HI): Ditto.
(V2DF_FTYPE_V2DF_V2DF_V2DF_QI): Ditto.
(V32HI_FTYPE_V32HI_V32HI_V32HI_SI): Ditto.
(V64QI_FTYPE_V64QI_V64QI_V64QI_DI): Ditto.
(V32QI_FTYPE_V32QI_V32QI_V32QI_SI): Ditto.
(V8HI_FTYPE_V8HI_V8HI_V8HI_QI): Ditto.
(V4SF_FTYPE_V4SF_V4SF_QI): Ditto.
(V4SF_FTYPE_V4SI_V4SF_QI): Ditto.
(V8SF_FTYPE_V8SF_V8SF_QI): Ditto.
(V8SF_FTYPE_V8SI_V8SF_QI): Ditto.
(V16SF_FTYPE_V16SF_V16SF_HI): Ditto.
(V4SI_FTYPE_V16QI_V4SI_QI): Ditto.
(V4SI_FTYPE_V8HI_V4SI_QI): Ditto.
(V8SI_FTYPE_V8SI_V8SI_QI): Ditto.
(V8SI_FTYPE_V8HI_V8SI_QI): Ditto.
(V8SI_FTYPE_V16QI_V8SI_QI): Ditto.
(V4SI_FTYPE_V4SI_V4SI_V4SI_QI): Ditto.
(V4SI_FTYPE_V4SI_V4SI_INT_V4SI_QI): Ditto.
(V8SF_FTYPE_V8SF_V8SF_V8SF_QI): Ditto.
(V8SF_FTYPE_V8SI_V8SF_V8SF_QI): Ditto.
(V8SF_FTYPE_V8SF_V8SI_V8SF_QI): Ditto.
(V8SI_FTYPE_V8SI_V8SI_V8SI_QI): Ditto.
(V8SI_FTYPE_V8SI_V8SI_INT_V8SI_QI): Ditto.
(V16SF_FTYPE_V16SF_V16SF_V16SF_HI): Ditto.
(V16SF_FTYPE_V16SI_V16SF_V16SF_HI): Ditto.
(V16SF_FTYPE_V16SF_V16SI_V16SF_HI): Ditto.
(V16SF_FTYPE_V8SF_V16SF_HI): Ditto.
(V16SF_FTYPE_V4SF_V16SF_HI): Ditto.
(V8DF_FTYPE_V4DF_V8DF_QI): Ditto.
(V8DF_FTYPE_V2DF_V8DF_QI): Ditto.
(V16SI_FTYPE_V8SI_V16SI_HI): Ditto.
(V16SI_FTYPE_V4SI_V16SI_HI): Ditto.
(V16SI_FTYPE_SI_V16SI_HI): Ditto.
(V16SI_FTYPE_V16HI_V16SI_HI): Ditto.
(V16SI_FTYPE_V16QI_V16SI_HI): Ditto.
(V8DI_FTYPE_V4DI_V8DI_QI): Ditto.
(V4SI_FTYPE_V4DF_V4SI_QI): Ditto.
(V8DI_FTYPE_V2DI_V8DI_QI): Ditto.
(V8DI_FTYPE_DI_V8DI_QI): Ditto.
(V16QI_FTYPE_V16SI_V16QI_HI): Ditto.
(V16QI_FTYPE_V8DI_V16QI_QI): Ditto.
(V32HI_FTYPE_V32HI_V32HI_SI): Ditto.
(V32HI_FTYPE_V32QI_V32HI_SI): Ditto.
(V16HI_FTYPE_V16HI_V16HI_HI): Ditto.
(V16HI_FTYPE_V16QI_V16HI_HI): Ditto.
(V8HI_FTYPE_V16QI_V8HI_QI): Ditto.
(V8SF_FTYPE_V4SF_V8SF_QI): Ditto.
(V4DF_FTYPE_V2DF_V4DF_QI): Ditto.
(V8SI_FTYPE_V4SI_V8SI_QI): Ditto.
(V8SI_FTYPE_SI_V8SI_QI): Ditto.
(V4SI_FTYPE_V4SI_V4SI_QI): Ditto.
(V4SI_FTYPE_SI_V4SI_QI): Ditto.
(V4DI_FTYPE_V2DI_V4DI_QI): Ditto.
(V4DI_FTYPE_DI_V4DI_QI): Ditto.
(V2DI_FTYPE_V2DI_V2DI_QI): Ditto.
(V2DI_FTYPE_DI_V2DI_QI): Ditto.
(V64QI_FTYPE_V64QI_V64QI_DI): Ditto.
(V64QI_FTYPE_V16QI_V64QI_DI): Ditto.
(V64QI_FTYPE_QI_V64QI_DI): Ditto.
(V32QI_FTYPE_V32QI_V32QI_SI): Ditto.
(V32QI_FTYPE_V16QI_V32QI_SI): Ditto.
(V32QI_FTYPE_QI_V32QI_SI): Ditto.
(V16QI_FTYPE_V16QI_V16QI_HI): Ditto.
(V16QI_FTYPE_QI_V16QI_HI): Ditto.
(V32HI_FTYPE_V8HI_V32HI_SI): Ditto.
(V32HI_FTYPE_HI_V32HI_SI): Ditto.
(V16HI_FTYPE_V8HI_V16HI_HI): Ditto.
(V16HI_FTYPE_HI_V16HI_HI): Ditto.
(V8HI_FTYPE_V8HI_V8HI_QI): Ditto.
(V8HI_FTYPE_HI_V8HI_QI): Ditto.
(V64QI_FTYPE_PCV64QI_V64QI_DI): Ditto.
(V32HI_FTYPE_PCV32HI_V32HI_SI): Ditto.
(V32QI_FTYPE_PCV32QI_V32QI_SI): Ditto.
(V16SF_FTYPE_PCV16SF_V16SF_HI): Ditto.
(V8DF_FTYPE_PCV8DF_V8DF_QI): Ditto.
(V16SI_FTYPE_PCV16SI_V16SI_HI): Ditto.
(V16HI_FTYPE_PCV16HI_V16HI_HI): Ditto.
(V16QI_FTYPE_PCV16QI_V16QI_HI): Ditto.
(V8SF_FTYPE_PCV8SF_V8SF_QI): Ditto.
(V8DI_FTYPE_PCV8DI_V8DI_QI): Ditto.
(V8SI_FTYPE_PCV8SI_V8SI_QI): Ditto.
(V8HI_FTYPE_PCV8HI_V8HI_QI): Ditto.
(V4DF_FTYPE_PCV4DF_V4DF_QI): Ditto.
(V4SF_FTYPE_PCV4SF_V4SF_QI): Ditto.
(V4DI_FTYPE_PCV4DI_V4DI_QI): Ditto.
(V4SI_FTYPE_PCV4SI_V4SI_QI): Ditto.
(V2DF_FTYPE_PCV2DF_V2DF_QI): Ditto.
(V2DI_FTYPE_PCV2DI_V2DI_QI): Ditto.
(V16HI_FTYPE_V16SI_V16HI_HI): Ditto.
(V8SI_FTYPE_V8DI_V8SI_QI): Ditto.
(V8HI_FTYPE_V8DI_V8HI_QI): Ditto.
(V16QI_FTYPE_V8HI_V16QI_QI): Ditto.
(V16QI_FTYPE_V16HI_V16QI_HI): Ditto.
(V16QI_FTYPE_V4SI_V16QI_QI): Ditto.
(V16QI_FTYPE_V8SI_V16QI_QI): Ditto.
(V8HI_FTYPE_V4SI_V8HI_QI): Ditto.
(V8HI_FTYPE_V8SI_V8HI_QI): Ditto.
(V16QI_FTYPE_V2DI_V16QI_QI): Ditto.
(V16QI_FTYPE_V4DI_V16QI_QI): Ditto.
(V8HI_FTYPE_V2DI_V8HI_QI): Ditto.
(V8HI_FTYPE_V4DI_V8HI_QI): Ditto.
(V4SI_FTYPE_V2DI_V4SI_QI): Ditto.
(V4SI_FTYPE_V4DI_V4SI_QI): Ditto.
(V32QI_FTYPE_V32HI_V32QI_SI): Ditto.
(V2DF_FTYPE_V2DF_INT_V2DF_QI): Ditto.
(V4DF_FTYPE_V4DF_INT_V4DF_QI): Ditto.
(V4SF_FTYPE_V4SF_INT_V4SF_QI): Ditto.
(V8SF_FTYPE_V8SF_INT_V8SF_QI): Ditto.
(V4DF_FTYPE_V4DF_V4DF_INT_V4DF_QI): Ditto.
(V2DF_FTYPE_V2DF_V2DF_INT_V2DF_QI): Ditto.
(V8SF_FTYPE_V8SF_V8SF_INT_V8SF_QI): Ditto.
(V4SF_FTYPE_V4SF_V4SF_INT_V4SF_QI): Ditto.
(VOID_FTYPE_PV8DF_V8DF_QI): Ditto.
(VOID_FTYPE_PV8SI_V8DI_QI): Ditto.
(VOID_FTYPE_PV8HI_V8DI_QI): Ditto.
(VOID_FTYPE_PV8HI_V4DI_QI): Ditto.
(VOID_FTYPE_PV8HI_V2DI_QI): Ditto.
(VOID_FTYPE_PV4SI_V4DI_QI): Ditto.
(VOID_FTYPE_PV4SI_V2DI_QI): Ditto.
(VOID_FTYPE_PV8HI_V8SI_QI): Ditto.
(VOID_FTYPE_PV8HI_V4SI_QI): Ditto.
(VOID_FTYPE_PV4DF_V4DF_QI): Ditto.
(VOID_FTYPE_PV2DF_V2DF_QI): Ditto.
(VOID_FTYPE_PV16SF_V16SF_HI): Ditto.
(VOID_FTYPE_PV8SF_V8SF_QI): Ditto.
(VOID_FTYPE_PV4SF_V4SF_QI): Ditto.
(VOID_FTYPE_PV8DI_V8DI_QI): Ditto.
(VOID_FTYPE_PV4DI_V4DI_QI): Ditto.
(VOID_FTYPE_PV2DI_V2DI_QI): Ditto.
(VOID_FTYPE_PV16SI_V16SI_HI): Ditto.
(VOID_FTYPE_PV16HI_V16SI_HI): Ditto.
(VOID_FTYPE_PV16QI_V16SI_HI): Ditto.
(VOID_FTYPE_PV16QI_V8SI_QI): Ditto.
(VOID_FTYPE_PV16QI_V4SI_QI): Ditto.
(VOID_FTYPE_PV16QI_V8DI_QI): Ditto.
(VOID_FTYPE_PV16QI_V4DI_QI): Ditto.
(VOID_FTYPE_PV16QI_V2DI_QI): Ditto.
(VOID_FTYPE_PV8SI_V8SI_QI): Ditto.
(VOID_FTYPE_PV4SI_V4SI_QI): Ditto.
(VOID_FTYPE_PV32HI_V32HI_SI): Ditto.
(VOID_FTYPE_PV16HI_V16HI_HI): Ditto.
(VOID_FTYPE_PV8HI_V8HI_QI): Ditto.
(VOID_FTYPE_PV64QI_V64QI_DI): Ditto.
(VOID_FTYPE_PV32QI_V32QI_SI): Ditto.
(VOID_FTYPE_PV16QI_V16QI_HI): Ditto.
(V8DI_FTYPE_V8DI_V8DI_V8DI_INT_QI): Ditto.
(V8SI_FTYPE_V8SF_V8SI_QI): Ditto.
(V4SI_FTYPE_V4SF_V4SI_QI): Ditto.
(V4DI_FTYPE_V4SF_V4DI_QI): Ditto.
(V2DI_FTYPE_V4SF_V2DI_QI): Ditto.
(V4SF_FTYPE_V4DI_V4SF_QI): Ditto.
(V4SF_FTYPE_V2DI_V4SF_QI): Ditto.
(V4DF_FTYPE_V4DI_V4DF_QI): Ditto.
(V2DF_FTYPE_V2DI_V2DF_QI): Ditto.
(V32HI_FTYPE_V32HI_INT_V32HI_SI): Ditto.
(V32HI_FTYPE_V32HI_V8HI_V32HI_SI): Ditto.
(V16HI_FTYPE_V16HI_INT_V16HI_HI): Ditto.
(V16HI_FTYPE_V16HI_V8HI_V16HI_HI): Ditto.
(V8HI_FTYPE_V8HI_INT_V8HI_QI): Ditto.
(V32HI_FTYPE_V64QI_V64QI_INT_V32HI_SI): Ditto.
(V16HI_FTYPE_V32QI_V32QI_INT_V16HI_HI): Ditto.
(V8HI_FTYPE_V16QI_V16QI_INT_V8HI_QI): Ditto.
(V64QI_FTYPE_V32HI_V32HI_V64QI_DI): Ditto.
(V32QI_FTYPE_V16HI_V16HI_V32QI_SI): Ditto.
(V16QI_FTYPE_V8HI_V8HI_V16QI_HI): Ditto.
(V32HI_FTYPE_V16SI_V16SI_V32HI_SI): Ditto.
(V16HI_FTYPE_V8SI_V8SI_V16HI_HI): Ditto.
(V8HI_FTYPE_V4SI_V4SI_V8HI_QI): Ditto.
(V8DI_FTYPE_V16SI_V16SI_V8DI_QI): Ditto.
(V4DI_FTYPE_V8SI_V8SI_V4DI_QI): Ditto.
(V2DI_FTYPE_V4SI_V4SI_V2DI_QI): Ditto.
(V16SI_FTYPE_V16SI_V16SI_V16SI_INT_HI): Ditto.
(V8SI_FTYPE_V8SI_V8SI_V8SI_INT_QI): Ditto.
(V4DI_FTYPE_V4DI_V4DI_V4DI_INT_QI): Ditto.
(V4SI_FTYPE_V4SI_V4SI_V4SI_INT_QI): Ditto.
(V2DI_FTYPE_V2DI_V2DI_V2DI_INT_QI): Ditto.
(V8SI_FTYPE_V8SI_V4SI_V8SI_QI): Ditto.
(V4DI_FTYPE_V4DI_V2DI_V4DI_QI): Ditto.
(QI_FTYPE_V4DF_V4DF_INT_QI): Ditto.
(QI_FTYPE_V8SF_V8SF_INT_QI): Ditto.
(QI_FTYPE_V8DF_INT_QI): Ditto.
(QI_FTYPE_V4DF_INT_QI): Ditto.
(QI_FTYPE_V2DF_INT_QI): Ditto.
(HI_FTYPE_V16SF_INT_HI): Ditto.
(QI_FTYPE_V8SF_INT_QI): Ditto.
(QI_FTYPE_V4SF_INT_QI): Ditto.
(V8DF_FTYPE_V8DF_V8DF_V8DF_QI_INT): Ditto.
From-SVN: r226431
|
|
2015-07-31 Richard Biener <rguenther@suse.de>
* gimple-fold.c (fold_gimple_assign): Remove folding of
GIMPLE_BINARY_RHS.
From-SVN: r226429
|
|
* go-lang.c (go_langhook_init_options_struct): Don't set
x_flag_split_stack.
(go_langhook_post_options): Set it here instead.
From-SVN: r226428
|
|
2015-07-31 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/66846
* omp-low.c (expand_omp_taskreg) [ENABLE_CHECKING]: Call
verify_loop_structure for child_cfun if !LOOPS_NEED_FIXUP.
(expand_omp_target) [ENABLE_CHECKING]: Same.
(execute_expand_omp) [ENABLE_CHECKING]: Call verify_loop_structure for
cfun if !LOOPS_NEED_FIXUP.
(expand_omp_for_static_nochunk): Handle simple latch bb. Handle case
that omp_for already has its own loop struct.
* tree-parloops.c (create_phi_for_local_result)
(create_call_for_reduction): Handle simple latch bb.
(create_parallel_loop): Add simple latch bb to preserve
LOOPS_HAVE_SIMPLE_LATCHES. Record new exit. Handle simple latch bb.
(gen_parallel_loop): Remove call to cancel_loop_tree.
(parallelize_loops): Skip loops that are inner loops of parallelized
loops.
(pass_parallelize_loops::execute) [ENABLE_CHECKING]: Call
verify_loop_structure.
From-SVN: r226427
|
|
From-SVN: r226425
|
|
From-SVN: r226422
|
|
From-SVN: r226418
|
|
From-SVN: r226417
|
|
* c-pretty-print.c (unary_expression) [INDIRECT_REF]: Don't print
'*' for reference decay.
From-SVN: r226410
|
|
From-SVN: r226409
|
|
* config/aarch64/iterators.md (VRL2, VRL3, VRL4): Remove values for
128-bit vector modes.
From-SVN: r226408
|
|
gcc/
* builtins.c (HAVE_atomic_clear, gen_atomic_clear): Delete.
(expand_builtin_atomic_clear): Remove support for atomic_clear
pattern.
From-SVN: r226405
|
|
2015-07-30 Richard Biener <rguenther@suse.de>
* gimple-fold.c (fold_gimple_assign): Only fold !tcc_comparison
binaries. Move X == 0, X == 1, X != 0, and X != 1 canonicalization ...
(fold_stmt_1): ... here and work on GIMPLE directly. Remove
redundant operand canonicalization.
From-SVN: r226404
|
|
(GET_MODE_INNER (m)) with GET_MODE_UNIT_SIZE (m).
gcc/
2015-07-30 David Sherwood <david.sherwood@arm.com>
* config/aarch64/aarch64-simd.md (aarch64_ext<mode>): Replace call to
GET_MODE_SIZE (GET_MODE_INNER (m)) with GET_MODE_UNIT_SIZE (m).
* config/aarch64/aarch64.c (aarch64_simd_valid_immediate): Likewise.
* config/arm/arm.c (neon_valid_immediate): Likewise.
* config/i386/i386.c (classify_argument, ix86_expand_int_vcond)
(expand_vec_perm_blend, expand_vec_perm_pshufb): Likewise.
(expand_vec_perm_pshufb2, expand_vec_perm_vpshufb2_vpermq): Likewise.
(expand_vec_perm_vpshufb2_vpermq): Likewise.
(expand_vec_perm_vpshufb2_vpermq_even_odd): Likewise.
(expand_vec_perm_vpshufb4_vpermq2): Likewise.
* config/i386/sse.md
(<extract_type>_vinsert<shuffletype><extract_suf>_mask): Likewise.
(*ssse3_palignr<mode>_perm): Likewise.
* config/rs6000/rs6000.c (rs6000_complex_function_value): Likewise.
* config/spu/spu.c (arith_immediate_p): Likewise.
* simplify-rtx.c (simplify_const_unary_operation): Likewise.
(simplify_binary_operation_1, simplify_ternary_operation): Likewise.
From-SVN: r226403
|
|
2015-07-30 Richard Biener <rguenther@suse.de>
* genmatch.c (decision_tree::gen_gimple): Merge with ...
(decision_tree::gen_generic): ... this into ...
(decision_tree::gen): ... this.
(main): Adjust callers.
From-SVN: r226396
|
|
warning_at instead of "%q+D" in warning.
2015-07-30 Paolo Carlini <paolo.carlini@oracle.com>
* class.c (check_for_override): Use DECL_SOURCE_LOCATION and "%qD"
in warning_at instead of "%q+D" in warning.
(warn_hidden): Likewise but use location_of.
(finish_struct_anon_r): Likewise use DECL_SOURCE_LOCATION in permerror.
(check_bitfield_decl, check_field_decls): Likewise in warning_at.
(check_field_decls): Likewise for permerror.
(explain_non_literal_class): Likewise for inform.
(check_bases_and_members, layout_class_type): Likewise for warning_at.
(note_name_declared_in_class): Use location_of in permerror.
* name-lookup.c (diagnose_name_conflict): Use location_of in inform.
(pushdecl_maybe_friend_1): Use DECL_SOURCE_LOCATION in pedwarn,
inform, and warning_at.
(check_for_out_of_scope_variable): Likewise for warning_at and
permerror.
From-SVN: r226394
|
|
* c-common.c (warn_tautological_cmp): Bail for float types.
* c-c++-common/Wtautological-compare-3.c: New test.
From-SVN: r226388
|
|
2015-07-30 Richard Biener <rguenther@suse.de>
* genmatch.c (verbose): New global.
(warning_at): Add overload with source_location.
(capture_info::capture_info): Add bool whether generating gimple
or generic. Add gimple member.
(capture_info::cinfo): Add capture member.
(capture_info::walk_match): Record capture. Warn on
non-captured leafs.
(capture_info::walk_c_expr): Add more fragments captures cannot
escape through. Warn on escaped captures.
(dt_simplify::gen_1): Warn on operands we force to have no
side-effects.
(main): Initialize verbose.
* match.pd: Add integer_nonzerop and HONOR_NANS predicates.
From-SVN: r226386
|
|
2015-07-30 Richard Biener <rguenther@suse.de>
PR middle-end/67053
* match.pd: Allow both operands to independently have conversion
when simplifying compares of addresses.
From-SVN: r226384
|
|
DR 1558
PR c++/67021
* pt.c (tsubst_decl) [TYPE_DECL]: Clear TYPE_DEPENDENT_P_VALID.
From-SVN: r226381
|
|
PR target/66217
PR target/67045
* config/rs6000/rs6000.md (and<mode>3): Put a CONST_INT_P check
around those cases that need one.
From-SVN: r226378
|
|
From-SVN: r226377
|
|
In a recent change to mksysinfo.sh, a space was missing on
some lines which caused the libgo build to hang on some
systems. This corrects that problem.
Fixes golang/go#11924
Reviewed-on: https://go-review.googlesource.com/12835
From-SVN: r226366
|
|
* params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Default to 3.
From-SVN: r226365
|
|
Since IA MCU uses the same debug register map as Linux/x86, we copy
DBX_REGISTER_NUMBER together with TARGET_ASM_FILE_START_FILE_DIRECTIVE
and ASM_COMMENT_START from i386/gnu-user.h to i386/iamcu.h.
* config/i386/iamcu.h (TARGET_ASM_FILE_START_FILE_DIRECTIVE):
New. Copied from config/i386/gnu-user.h.
(ASM_COMMENT_START): Likewise.
(DBX_REGISTER_NUMBER): Likewise.
From-SVN: r226363
|
|
(taken from [AArch64] Add support for float14x{4,8}_t vectors/builtins)
* gcc.target/aarch64/vld1_lane.c (main): Remove unused test data.
(CHECK): Pass address of scalar, rather than array.
From-SVN: r226353
|
|
(taken from [AArch64] Add support for float14x{4,8}_t vectors/builtins)
* gcc.target/aarch64/vld1-vst1_1.c: Add missing float32x4_t case.
From-SVN: r226352
|
|
2015-07-29 Richard Biener <rguenther@suse.de>
* gimple-fold.c (fold_gimple_cond): Remove.
(fold_stmt_1): Do not call it.
From-SVN: r226351
|
|
* gcc.target/aarch64/fp16/fp16.exp: New.
* gcc.target/aarch64/fp16/f16_convs_1.c: New.
* gcc.target/aarch64/fp16/f16_convs_2.c: New.
From-SVN: r226350
|
|
gcc/:
* config/aarch64/aarch64-builtins.c (aarch64_fp16_type_node): New.
(aarch64_init_builtins): Make aarch64_fp16_type_node, use for __fp16.
* config/aarch64/aarch64-modes.def: Add HFmode.
* config/aarch64/aarch64.h (TARGET_CPU_CPP_BUILTINS): Define
__ARM_FP16_FORMAT_IEEE and __ARM_FP16_ARGS. Set bit 1 of __ARM_FP.
* config/aarch64/aarch64.c (aarch64_init_libfuncs,
aarch64_promoted_type): New.
(aarch64_float_const_representable_p): Disable HFmode.
(aarch64_mangle_type): Mangle half-precision floats to "Dh".
(TARGET_PROMOTED_TYPE): Define to aarch64_promoted_type.
(TARGET_INIT_LIBFUNCS): Define to aarch64_init_libfuncs.
* config/aarch64/aarch64.md (mov<mode>): Include HFmode using GPF_F16.
(movhf_aarch64, extendhfsf2, extendhfdf2, truncsfhf2, truncdfhf2): New.
* config/aarch64/iterators.md (GPF_F16): New.
gcc/testsuite/:
* gcc.target/aarch64/f16_movs_1.c: New test.
From-SVN: r226346
|
|
cases.
2015-07-29 Richard Biener <rguenther@suse.de>
* match.pd: Merge address comparison patterns and make them
handle some more cases.
From-SVN: r226345
|
|
2015-07-29 Richard Biener <rguenther@suse.de>
* genmatch.c (c_expr::gen_transform): Error on unknown captures.
(parser::parse_capture): Add bool argument on whether to reject
unknown captures.
(parser::parse_expr): Adjust.
(parser::parse_op): Likewise.
(parser::parse_pattern): Likewise.
From-SVN: r226344
|
|
2015-07-29 Richard Biener <rguenther@suse.de>
* gimple-fold.c (has_use_on_stmt): New function.
(replace_stmt_with_simplification): Use it to allow
abnormals originally referenced in the stmt.
(fold_stmt_1): Canonicalize operand order.
From-SVN: r226339
|
|
From-SVN: r226334
|
|
gcc/
2015-07-28 David Sherwood <david.sherwood@arm.com>
* config/arm/arm.c (neon_element_bits, neon_valid_immediate): Call
GET_MODE_INNER unconditionally.
* config/spu/spu.c (arith_immediate_p): Likewise.
* config/i386/i386.c (ix86_build_signbit_mask): Likewise.
* expmed.c (synth_mult): Remove check for VOIDmode result from
GET_MODE_INNER.
(expand_mult_const): Likewise.
* fold-const.c (fold_binary_loc): Replace call to element_precision
with call to GET_MODE_PRECISION.
* genmodes.c (emit_mode_inner_inline): Replace void_mode->name with
m->name.
(emit_mode_inner): Likewise.
* lto-streamer-out.c (lto_write_mode_table): Update GET_MODE_INNER
result check.
* machmode.h (GET_MODE_UNIT_SIZE): Simplify.
(GET_MODE_UNIT_PRECISION): Likewise.
* rtlanal.c (subreg_get_info): Call GET_MODE_INNER unconditionally.
* simplify-rtx.c (simplify_immed_subreg): Likewise.
* stor-layout.c (bitwise_type_for_mode): Update assert.
(element_precision): Remove.
From-SVN: r226328
|
|
gcc/
* target-insns.def (reload_load_address): New targetm instruction
pattern.
* reload1.c (gen_reload): Use it instead of HAVE_*/gen_* interface.
From-SVN: r226326
|
|
gcc/
* target-insns.def (atomic_test_and_set): New targetm instruction
pattern.
* optabs.c (maybe_emit_atomic_test_and_set): Use it instead of
HAVE_*/gen_* interface.
From-SVN: r226325
|
|
gcc/
* target-insns.def (can_extend, ptr_extend): New targetm instruction
patterns.
* optabs.c (can_extend_p): Use them instead of HAVE_*/gen_* interface.
* simplify-rtx.c (simplify_unary_operation_1): Likewise.
* emit-rtl.c (set_reg_attrs_from_value): Likewise.
* rtlanal.c (nonzero_bits1): Likewise.
(num_sign_bit_copies1): Likewise.
From-SVN: r226324
|
|
gcc/
* target-insns.def (eh_return): New targetm instruction pattern.
* except.c (expand_eh_return): Use it instead of HAVE_*/gen_*
interface.
* function.c (thread_prologue_and_epilogue_insns): Remove
preprocessor condition.
From-SVN: r226322
|
|
gcc/
* target-insns.def (indirect_jump): New targetm instruction pattern.
* optabs.c (emit_indirect_jump): Use it instead of HAVE_*/gen_*
interface.
From-SVN: r226321
|
|
nonimmediate_operand.
gcc/
* config/fr30/fr30.md (indirect_jump): Use pmode_register_operand
instead of nonimmediate_operand. Remove C condiition.
From-SVN: r226320
|
|
2015-07-28 Richard Biener <rguenther@suse.de>
* match.pd: Add more simplification of address comparisons.
From-SVN: r226312
|
|
to make it...
2015-07-28 Richard Biener <rguenther@suse.de>
* match.pd: Re-order two cases in comparison with max/min
value simplification to make it apply for bools.
From-SVN: r226311
|
|
* config/aarch64/aarch64.c (aarch64_rtx_arith_op_extract_p):
Handle simple SIGN_EXTEND or ZERO_EXTEND.
(aarch64_rtx_costs): Properly strip extend or extract before
passing down to rtx costs again.
From-SVN: r226309
|
|
in inform and pedwarn instead of "%q+D".
2015-07-28 Paolo Carlini <paolo.carlini@oracle.com>
* call.c (build_op_delete_call, convert_like_real, build_over_call):
Use Use DECL_SOURCE_LOCATION and "%qD" in inform and pedwarn instead
of "%q+D".
* constexpr.c (explain_invalid_constexpr_fn): Likewise.
* decl.c (duplicate_decls): Likewise for warning/warning_at.
* except.c (maybe_noexcept_warning): Likewise.
* friend.c (make_friend_class): Likewise for inform.
* mangle.c (mangle_decl): Likewise for warning/warning_at.
* method.c (process_subob_fn, walk_field_subobs,
maybe_explain_implicit_delete): Likewise for inform.
* parser.c (cp_parser_lambda_introducer): Likewise.
* pt.c (check_specialization_namespace,
maybe_process_partial_specialization): Likewise for permerror.
(redeclare_class_template): Likewise for inform_n.
(coerce_template_parms, tsubst_copy_and_build): Likewise for inform.
* search.c (check_final_overrider): Likewise.
* semantics.c (process_outer_var_ref): Likewise.
From-SVN: r226308
|
|
* config/rl78/rl78.c (rl78_addsi3_internal): New function.
Optimizes the case where -mes0 is active and a constant symbolic
address is used.
* config/rl78/rl78-protos.h: Prototype the new function.
* config/rl78/rl78.md (addsi3_internal_real): Call new function.
From-SVN: r226306
|
|
2015-07-28 Tom de Vries <tom@codesourcery.com>
* tree-parloops.c (reduc_stmt_res): New function.
(initialize_reductions, add_field_for_reduction)
(create_phi_for_local_result, create_loads_for_reductions)
(create_stores_for_reduction, build_new_reduction): Handle case that
reduc_stmt is a phi.
(gather_scalar_reductions): Allow double_reduc reductions.
* gcc.dg/autopar/uns-outer-4.c: Remove xfail on scan for parallelizing
outer loop.
* testsuite/libgomp.c/uns-outer-4.c: New test.
From-SVN: r226300
|
|
2015-07-28 Richard Biener <rguenther@suse.de>
* fold-const.c (fold_comparison): Remove equality folding
of decl addresses ...
* match.pd: ... here and merge with existing pattern.
From-SVN: r226299
|
|
error: left shift of 72057594037927936 by 8 places cannot be represented in type 'long int')
2015-07-28 Thomas Preud'homme <thomas.preudhomme@arm.com>
PR tree-optimization/66828
* tree-ssa-math-opts.c (perform_symbolic_merge): Change type of inc
from int64_t to uint64_t.
From-SVN: r226298
|