Sriraman Tallam
786fb9b6c4
Allow functions for AVX target inline functions for lower target.
...
Allow functions for AVX target inline functions for lower target. This bug was
reported here: http://gcc.gnu.org/ml/gcc-patches/2013-06/msg01620.html
2013-07-02 Sriraman Tallam <tmsriram@google.com>
* config/i386/i386.c (gate_insert_vzeroupper): Check if target
ISA is AVX.
(ix86_option_override_internal):Turn on all -mavx target flags by
default as they are dependent on AVX anyway.
* gcc.target/i386/avx-inline.c: New test.
From-SVN: r200627
2013-07-03 00:03:06 +00:00
Cary Coutant
4b04355371
dwarf2out.c (loc_checksum): Call hash_loc_operands for a deterministic hash.
...
gcc/
* dwarf2out.c (loc_checksum): Call hash_loc_operands for a
deterministic hash.
(loc_checksum_ordered): Likewise.
(hash_loc_operands): Remove inline keyword.
From-SVN: r200626
2013-07-02 15:18:39 -07:00
Maciej W. Rozycki
45165729bb
call-1.c: Accept JALRS and JALR.
...
2013-07-02 Maciej W. Rozycki <macro@codesourcery.com>
* gcc.target/mips/call-1.c: Accept JALRS and JALR.
* gcc.target/mips/call-2.c: Likewise.
* gcc.target/mips/call-3.c: Likewise.
* gcc.target/mips/lazy-binding-1.c: Likewise.
From-SVN: r200621
2013-07-02 15:13:26 -04:00
Joseph Myers
29d7014cc2
* ru.po: Update.
...
From-SVN: r200604
2013-07-02 14:11:06 +01:00
Kirill Yukhin
cf9eb1c0ce
Added missed file from previous fixincludes commit.
...
fixincludes/tests/base/linux/compiler.h: New.
From-SVN: r200603
2013-07-02 12:52:34 +00:00
Jakub Jelinek
c4e87a1393
re PR tree-optimization/57741 (ICE in tree.c:build_int_cst_wide starting in revision 200394)
...
PR tree-optimization/57741
* tree-vect-loop.c (vect_is_simple_iv_evolution): Disallow
non-INTEGRAL_TYPE_P non-SCALAR_FLOAT_TYPE_P SSA_NAME step_exprs,
or SCALAR_FLOAT_TYPE_P SSA_NAMEs if !flag_associative_math.
Allow REAL_CST step_exprs if flag_associative_math.
(get_initial_def_for_induction): Handle SCALAR_FLOAT_TYPE_P step_expr.
* gcc.dg/vect/pr57741-1.c: New test.
* gcc.dg/vect/pr57741-2.c: New test.
* gcc.dg/vect/pr57741-3.c: New test.
From-SVN: r200600
2013-07-02 13:54:09 +02:00
Ian Bolton
f8411fcce9
AArch64 - Update insv tests for big endian
...
From-SVN: r200597
2013-07-02 11:02:17 +00:00
Ian Bolton
26366d2816
AArch64 Support abs standard pattern for DI mode
...
From-SVN: r200596
2013-07-02 10:59:59 +00:00
Ian Bolton
2879bb2b18
AArch64 Support BFXIL in backend
...
From-SVN: r200595
2013-07-02 10:57:30 +00:00
Kyrylo Tkachov
afc5e8a6a7
arm.md (arm_andsi3_insn): Add alternatives for 16-bit encoding.
...
2013-07-02 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.md (arm_andsi3_insn): Add alternatives for 16-bit
encoding.
(iorsi3_insn): Likewise.
(arm_xorsi3): Likewise.
From-SVN: r200593
2013-07-02 10:21:36 +00:00
GCC Administrator
4bc21884b4
Daily bump.
...
From-SVN: r200588
2013-07-02 00:16:45 +00:00
Balaji V. Iyer
f6bc3427ac
+2013-07-01 Balaji V.
...
+2013-07-01 Balaji V. Iyer <balaji.v.iyer@intel.com>
+
+ PR c/57766
+ * c-c++-common/cilk-plus/AN/sec_implicit_ex.c (NUMBER): Changed
+ array sizes from 100 to 20.
+
From-SVN: r200581
2013-07-01 09:26:42 -07:00
Paolo Carlini
019fdb7923
stl_list.h (list<>::insert(iterator, size_type, const value_type&), [...]): Adjust C++11 signatures to take const_iterator(s).
...
2013-07-01 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_list.h (list<>::insert(iterator,
size_type, const value_type&), list<>::insert(iterator,
initializer_list<>), list<>::insert(iterator, _InputIterator,
_InputIterator), list<>::splice(iterator, list&&),
list<>::splice(iterator, list&), list<>::splice(iterator, list&&,
iterator), list<>::splice(iterator, list&, iterator),
list<>::splice(iterator, list&&, iterator, iterator),
list<>::splice(iterator, list&, iterator, iterator)): Adjust C++11
signatures to take const_iterator(s).
* include/bits/list.tcc (list<>::insert(const_iterator, size_type,
const value_type&), list<>::insert(const_iterator, _InputIterator,
_InputIterator)): Define.
* include/ext/vstring.h (__versa_string<>::insert(iterator,
size_type, _CharT), __versa_string<>::insert(iterator,
_InputIterator, _InputIterator), __versa_string<>::insert(iterator,
std::initializer_list<>), __versa_string<>::replace(iterator,
iterator, _InputIterator, _InputIterator), __versa_string<>::
replace(iterator, iterator, std::initializer_list<>)): Adjust C++11
signatures to take const_iterator(s).
(__versa_string<>::_M_replace_dispatch): Take const_iterators.
* include/ext/vstring.tcc: Likewise.
* include/debug/list: Adjust.
* include/profile/list: Likewise.
* testsuite/23_containers/list/operations/splice/const_iterator.cc:
New.
* testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
Extend.
* testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
Likewise.
* testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
Likewise.
* testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
Likewise.
* testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
From-SVN: r200580
2013-07-01 16:17:46 +00:00
Sofiane Naci
31f8442be7
arm.md (attribute "wtype"): Delete.
...
* arm.md (attribute "wtype"): Delete. Move attribute values from here
to ...
(attribute "type"): ... here, and prefix with "wmmx_".
(attribute "core_cycles"): Update for attribute changes.
* iwmmxt.md (tbcstv8qi): Update for attribute changes.
(tbcstv4hi): Likewise.
(tbcstv2si): Likewise.
(iwmmxt_iordi3): Likewise.
(iwmmxt_xordi3): Likewise.
(iwmmxt_anddi3): Likewise.
(iwmmxt_nanddi3): Likewise.
(iwmmxt_arm_movdi): Likewise.
(iwmmxt_movsi_insn): Likewise.
(mov<mode>_internal): Likewise.
(and<mode>3_iwmmxt): Likewise.
(ior<mode>3_iwmmxt): Likewise.
(xor<mode>3_iwmmxt): Likewise.
(add<mode>3_iwmmxt): Likewise.
(ssaddv8qi3): Likewise.
(ssaddv4hi3): Likewise.
(ssaddv2si3): Likewise.
(usaddv8qi3): Likewise.
(usaddv4hi3): Likewise.
(usaddv2si3): Likewise.
(sub<mode>3_iwmmxt): Likewise.
(sssubv8qi3): Likewise.
(sssubv4hi3): Likewise.
(sssubv2si3): Likewise.
(ussubv8qi3): Likewise.
(ussubv4hi3): Likewise.
(ussubv2si3): Likewise.
(mulv4hi3_iwmmxt): Likewise.
(smulv4hi3_highpart): Likewise.
(umulv4hi3_highpart): Likewise.
(iwmmxt_wmacs): Likewise.
(iwmmxt_wmacsz): Likewise.
(iwmmxt_wmacu): Likewise.
(iwmmxt_wmacuz): Likewise.
(iwmmxt_clrdi): Likewise.
(iwmmxt_clrv8qi): Likewise.
(iwmmxt_clr4hi): Likewise.
(iwmmxt_clr2si): Likewise.
(iwmmxt_uavgrndv8qi3): Likewise.
(iwmmxt_uavgrndv4hi3): Likewise.
(iwmmxt_uavgv8qi3): Likewise.
(iwmmxt_uavgv4hi3): Likewise.
(iwmmxt_tinsrb): Likewise.
(iwmmxt_tinsrh): Likewise.
(iwmmxt_tinsrw): Likewise.
(iwmmxt_textrmub): Likewise.
(iwmmxt_textrmsb): Likewise.
(iwmmxt_textrmuh): Likewise.
(iwmmxt_textrmsh): Likewise.
(iwmmxt_textrmw): Likewise.
(iwmxxt_wshufh): Likewise.
(eqv8qi3): Likewise.
(eqv4hi3): Likewise.
(eqv2si3): Likewise.
(gtuv8qi3): Likewise.
(gtuv4hi3): Likewise.
(gtuv2si3): Likewise.
(gtv8qi3): Likewise.
(gtv4hi3): Likewise.
(gtv2si3): Likewise.
(smax<mode>3_iwmmxt): Likewise.
(umax<mode>3_iwmmxt): Likewise.
(smin<mode>3_iwmmxt): Likewise.
(umin<mode>3_iwmmxt): Likewise.
(iwmmxt_wpackhss): Likewise.
(iwmmxt_wpackwss): Likewise.
(iwmmxt_wpackdss): Likewise.
(iwmmxt_wpackhus): Likewise.
(iwmmxt_wpackwus): Likewise.
(iwmmxt_wpackdus): Likewise.
(iwmmxt_wunpckihb): Likewise.
(iwmmxt_wunpckihh): Likewise.
(iwmmxt_wunpckihw): Likewise.
(iwmmxt_wunpckilb): Likewise.
(iwmmxt_wunpckilh): Likewise.
(iwmmxt_wunpckilw): Likewise.
(iwmmxt_wunpckehub): Likewise.
(iwmmxt_wunpckehuh): Likewise.
(iwmmxt_wunpckehuw): Likewise.
(iwmmxt_wunpckehsb): Likewise.
(iwmmxt_wunpckehsh): Likewise.
(iwmmxt_wunpckehsw): Likewise.
(iwmmxt_wunpckelub): Likewise.
(iwmmxt_wunpckeluh): Likewise.
(iwmmxt_wunpckeluw): Likewise.
(iwmmxt_wunpckelsb): Likewise.
(iwmmxt_wunpckelsh): Likewise.
(iwmmxt_wunpckelsw): Likewise.
(ror<mode>3): Likewise.
(ashr<mode>3_iwmmxt): Likewise.
(lshr<mode>3_iwmmxt): Likewise.
(ashl<mode>3_iwmmxt): Likewise.
(ror<mode>3_di): Likewise.
(ashr<mode>3_di): Likewise.
(lshr<mode>3_di): Likewise.
(ashl<mode>3_di): Likewise.
(iwmmxt_wmadds): Likewise.
(iwmmxt_wmaddu): Likewise.
(iwmmxt_tmia): Likewise.
(iwmmxt_tmiaph): Likewise.
(iwmmxt_tmiabb): Likewise.
(iwmmxt_tmiatb): Likewise.
(iwmmxt_tmiabt): Likewise.
(iwmmxt_tmiatt): Likewise.
(iwmmxt_tmovmskb): Likewise.
(iwmmxt_tmovmskh): Likewise.
(iwmmxt_tmovmskw): Likewise.
(iwmmxt_waccb): Likewise.
(iwmmxt_wacch): Likewise.
(iwmmxt_waccw): Likewise.
(iwmmxt_waligni): Likewise.
(iwmmxt_walignr): Likewise.
(iwmmxt_walignr0): Likewise.
(iwmmxt_walignr1): Likewise.
(iwmmxt_walignr2): Likewise.
(iwmmxt_walignr3): Likewise.
(iwmmxt_wsadb): Likewise.
(iwmmxt_wsadh): Likewise.
(iwmmxt_wsadbz): Likewise.
(iwmmxt_wsadhz): Likewise.
* iwmmxt2.md (iwmmxt_wabs<mode>3): Update for attribute changes.
(iwmmxt_wabsdiffb): Likewise.
(iwmmxt_wabsdiffh): Likewise.
(iwmmxt_wabsdiffw): Likewise.
(iwmmxt_waddsubhx): Likewise
(iwmmxt_wsubaddhx): Likewise.
(addc<mode>3): Likewise.
(iwmmxt_avg4): Likewise.
(iwmmxt_avg4r): Likewise.
(iwmmxt_wmaddsx): Likewise.
(iwmmxt_wmaddux): Likewise.
(iwmmxt_wmaddsn): Likewise.
(iwmmxt_wmaddun): Likewise.
(iwmmxt_wmulwsm): Likewise.
(iwmmxt_wmulwum): Likewise.
(iwmmxt_wmulsmr): Likewise.
(iwmmxt_wmulumr): Likewise.
(iwmmxt_wmulwsmr): Likewise.
(iwmmxt_wmulwumr): Likewise.
(iwmmxt_wmulwl): Likewise.
(iwmmxt_wqmulm): Likewise.
(iwmmxt_wqmulwm): Likewise.
(iwmmxt_wqmulmr): Likewise.
(iwmmxt_wqmulwmr): Likewise.
(iwmmxt_waddbhusm): Likewise.
(iwmmxt_waddbhusl): Likewise.
(iwmmxt_wqmiabb): Likewise.
(iwmmxt_wqmiabt): Likewise.
(iwmmxt_wqmiatb): Likewise.
(iwmmxt_wqmiatt): Likewise.
(iwmmxt_wqmiabbn): Likewise.
(iwmmxt_wqmiabtn): Likewise.
(iwmmxt_wqmiatbn): Likewise.
(iwmmxt_wqmiattn): Likewise.
(iwmmxt_wmiabb): Likewise.
(iwmmxt_wmiabt): Likewise.
(iwmmxt_wmiatb): Likewise.
(iwmmxt_wmiatt): Likewise.
(iwmmxt_wmiabbn): Likewise.
(iwmmxt_wmiabtn): Likewise.
(iwmmxt_wmiatbn): Likewise.
(iwmmxt_wmiattn): Likewise.
(iwmmxt_wmiawbb): Likewise.
(iwmmxt_wmiawbt): Likewise.
(iwmmxt_wmiawtb): Likewise.
(iwmmxt_wmiawtt): Likewise.
(iwmmxt_wmiawbbn): Likewise.
(iwmmxt_wmiawbtn): Likewise.
(iwmmxt_wmiawtbn): Likewise.
(iwmmxt_wmiawttn): Likewise.
(iwmmxt_wmerge): Likewise.
(iwmmxt_tandc<mode>3): Likewise.
(iwmmxt_torc<mode>3): Likewise.
(iwmmxt_torvsc<mode>3): Likewise.
(iwmmxt_textrc<mode>3): Likewise.
* marvell-f-iwmmxt.md (wmmxt_shift): Update for attribute changes.
(wmmxt_pack): Likewise.
(wmmxt_mult_c1): Likewise.
(wmmxt_mult_c2): Likewise.
(wmmxt_alu_c1): Likewise.
(wmmxt_alu_c2): Likewise.
(wmmxt_alu_c3): Likewise.
(wmmxt_transfer_c1): Likewise.
(wmmxt_transfer_c2): Likewise.
(wmmxt_transfer_c3): Likewise.
(marvell_f_iwmmxt_wstr): Likewise.
(marvell_f_iwmmxt_wldr): Likewise.
From-SVN: r200576
2013-07-01 09:29:38 +00:00
Dominique d'Humieres
81bcd96bc7
re PR fortran/54788 (ICE on pointer-array element assignment)
...
2013-07-01 Dominique d'Humieres <dominiq@lps.ens.fr>
PR fortran/54788
* array.c (spec_size): handle the case as==NULL.
2013-07-01 Dominique d'Humieres <dominiq@lps.ens.fr>
PR fortran/54788
* gfortran.dg/pointer_remapping_8.f90: New.
From-SVN: r200575
2013-07-01 09:53:55 +02:00
GCC Administrator
9cd5e6c594
Daily bump.
...
From-SVN: r200574
2013-07-01 00:16:50 +00:00
Paolo Carlini
06eed9f588
stl_deque.h (deque<>::insert(iterator, size_type, const value_type&), [...]): Adjust C++11 signatures to take a const_iterator.
...
2013-06-30 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_deque.h (deque<>::insert(iterator,
size_type, const value_type&), deque<>::insert(iterator,
initializer_list<>), deque<>::insert(iterator, _InputIterator,
_InputIterator)): Adjust C++11 signatures to take a const_iterator.
* include/bits/stl_vector.h: Likewise.
* include/bits/stl_bvector.h: Likewise.
* include/debug/deque: Adjust.
* include/debug/vector: Likewise.
* include/profile/deque: Likewise.
* include/profile/vector: Likewise.
* testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
Extend.
* testsuite/23_containers/vector/bool/modifiers/insert/
const_iterator.cc: Likewise.
* testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.
From-SVN: r200571
2013-06-30 16:24:30 +00:00
Paolo Carlini
e8f24c86b8
*: Move inside testsuite/21_strings/basic_string/operations/data/.
...
2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/21_strings/basic_string/operations/*: Move inside
testsuite/21_strings/basic_string/operations/data/.
* testsuite/21_strings/basic_string/compare/*: Move inside
testsuite/21_strings/basic_string/operations/.
* testsuite/21_strings/basic_string/find/*: Likewise.
* testsuite/21_strings/basic_string/rfind/*: Likewise.
* testsuite/21_strings/basic_string/substr/*: Likewise.
From-SVN: r200570
2013-06-30 14:48:37 +00:00
GCC Administrator
0de64ae21c
Daily bump.
...
From-SVN: r200568
2013-06-30 00:16:24 +00:00
Yufeng Zhang
bdb7bf8a4e
Obvious fix in aarch64.c; remove junk added accidentally by previous commit.
...
From-SVN: r200565
2013-06-29 09:29:13 +00:00
François Dumont
41349aec29
hashtable_policy.h (_Insert_base): Consider hint in insert methods.
...
2013-06-29 François Dumont <fdumont@gcc.gnu.org>
* include/bits/hashtable_policy.h (_Insert_base): Consider hint in
insert methods.
* include/bits/hashtable.h: Likewise.
* testsuite/23_containers/unordered_multimap/insert/hint.cc: New.
* testsuite/performance/23_containers/insert/unordered_multiset_hint.cc:
New.
* testsuite/23_containers/unordered_set/instantiation_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/unordered_set/
not_default_constructible_hash_neg.cc: Likewise.
* doc/xml/manual/containers.xml: Document hinting in unordered
containers.
From-SVN: r200564
2013-06-29 07:55:12 +00:00
Ed Smith-Rowland
c865f9238a
lex.c (lex_raw_string(), [...]): Constrain suffixes treated as concatenated literal and macro to just the...
...
libcpp:
2013-06-28 Ed Smith-Rowland <3dw4rd@verizon.net>
* lex.c (lex_raw_string(), lex_string()): Constrain suffixes treated
as concatenated literal and macro to just the patterns found in
inttypes.h; (is_macro()): New.
gcc/cp:
2013-06-28 Ed Smith-Rowland <3dw4rd@verizon.net>
* cp-tree.h (UDLIT_OP_ANSI_PREFIX): Remove space.
* parser.c (cp_parser_operator()): Parse user-defined string
literal as literal operator.
gcc/testsuite:
2013-06-28 Ed Smith-Rowland <3dw4rd@verizon.net>
* g++.dg/cpp0x/udlit-nospace-neg.C: Adjust.
* g++.dg/cpp1y/udlit-enc-prefix-neg.C: New.
* g++.dg/cpp1y/udlit-userdef-string.C: New.
* g++.dg/cpp1y/complex_literals.h: New.
From-SVN: r200563
2013-06-29 03:41:58 +00:00
GCC Administrator
efc58ac548
Daily bump.
...
From-SVN: r200562
2013-06-29 00:16:32 +00:00
Paolo Carlini
a5e90b2af3
re PR c++/57645 (Explicitly-declared destructor with no exception specification is always noexcept(true))
...
/cp
2013-06-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57645
* class.c (deduce_noexcept_on_destructors): Save, set, and restore
TYPE_HAS_NONTRIVIAL_DESTRUCTOR (t) around the main loop over the
destructors.
/testsuite
2013-06-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57645
* g++.dg/cpp0x/noexcept21.C: New.
From-SVN: r200559
2013-06-29 00:11:03 +00:00
Vladimir Makarov
e6631d3801
revert: lra-constraints.c (need_for_split_p): Check call used hard regs living through calls.
...
2013-06-28 Vladimir Makarov <vmakarov@redhat.com>
Revert:
2013-06-28 Vladimir Makarov <vmakarov@redhat.com>
* lra-constraints.c (need_for_split_p): Check call used hard regs
living through calls.
* lra-constraints.c (inherit_in_ebb): Reset live_hard_regs for
call used regs for call insn.
From-SVN: r200558
2013-06-28 23:55:52 +00:00
Jakub Jelinek
53c1275b31
re PR target/57736 (ICE in emit_move_insn with __builtin_ia32_rdtsc)
...
PR target/57736
* config/i386/i386.c (ix86_expand_builtin): If target == NULL
and mode is VOIDmode, don't create a VOIDmode pseudo to copy result
into.
* gcc.target/i386/pr57736.c: New test.
From-SVN: r200555
2013-06-28 22:25:35 +02:00
Balaji V. Iyer
1141ed3f71
Implemented Jason Merrill's suggestions on Array Notation C++.
...
gcc/ChangeLog
2013-06-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
* builtins.def: Fixed the function type of CILKPLUS_BUILTIN.
gcc/c/ChangeLog
2013-06-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
* c-parser.c (c_parser_array_notation): Removed rejection of array
notations in an array of function pointers.
gcc/c-family/ChangeLog
2013-06-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
* array-notation-common.c (length_mismatch_in_expr_p): Collapsed two
if-statements and compared the trees directly using tree_int_cst_equal.
(find_rank): Checked for array notations in function name to handle
array notations in function pointers.
(extract_array_notation_exprs): Likewise.
(replace_array_notations): Likewise.
(cilkplus_extract_an_triplets): Replaced safe_push with
safe_grow_cleared. Also removed an unnecessary check to see if the
node is of type ARRAY_NOTATION_REF.
(fix_sec_implicit_args): Removed an unnecessary check for ADDR_EXPR.
Also switched two if-statements to remove an unnecessary comparison.
gcc/cp/ChangeLog
2013-06-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
* parser.c (cp_parser_array_notation): Removed rejection array notation
of type function pointers. Added handling of array expressions when
Cilk Plus is enabled. Took out type-checking.
(cp_parser_postfix_open_square_expression): Moved normal array expr.
parsing into cp_parser_array_notation when cilkplus is enabled.
(cp_parser_compound_statement): Removed expansion of array notations.
(cp_parser_ctor_initializer_opt_and_function_body): Likewise.
(cp_parser_function_definition_after_declarator): Likewise.
(cp_parser_selection_statement): Removed error reporting.
(cp_parser_iteration_statement): Likewise.
(cp_parser_direct_declarator): Removed error checking/reporting if
array notations are used in the declarator.
* pt.c (instantiate_decl): Likewise.
(type_unification_real): Removed a check for ARRAY_NOTATION_REF.
(cxx_eval_constant_expression): Removed ARRAY_NOTATION_REF case.
(potential_constant_expression_1): Returned false for ARRAY_NOTATION_REF
case.
* cp-gimplify.c (cp_genericize): Added expansion of array notation
expressions here.
* cp-array-notation.c (make_triplet_val_inv): Removed loc and cry
parameters. Replaced build_decls with get_temp_regvar with type as
ptrdiff.
(create_array_refs): Made the type-casting to ptrdiff_type.
(replace_invariant_var): Added a check for void return type before
creating new var. Replaced build_decl and build_min_nt_loc with
get_temp_regvar.
(expand_an_in_modify_expr): Ditto. Replaced body of redundant else with
gcc_unreachable. Removed few unwanted checks. Made induction variable
type as ptrdiff_type. Removed loc and complain arguments passed into
make_triplet_val_inv. Replaced all modify expression's code from NOP
EXPR to INIT EXPR. Replaced all forceful appending into stmt. list
with the non-forceful one. Replaced some integer conversion and
equality-checking to using tree_int_cst_equal.
(expand_sec_reduce_builtin): All changes mentioned in above function
expand_an_in_modify_expr. Made the new variable type of
SEC_REDUCE_ANY/ALL_{NON}ZERO intrinsic functions as bool.
(expand_array_notation_exprs): Removed SWITCH_EXPR case. Moved all
the error reporting from parser to this function. Removed unwanted
statements and checks from SWITCH_STMT, WHILE_STMT, and DO_STMT cases.
(cilkplus_an_triplet_types_ok_p): Removed rejection of array notation
in function pointers.
(cp_expand_cond_array_notations): Added a new if statements to check
if condition has a zero rank. If so, then just return.
(expand_return_expr): Added a check for return expressions with a rank.
Replaced get_tmp_regvar with a create_temporary_var.
(build_array_notation_ref): Simplified and removed unwanted if-stmts.
Moved common code outside if-statements. Moved type-checking from
parser to here.
* semantics.c (finish_return_stmt): Removed a check for return exprs.
with a rank.
* call.c (convert_like_real): Removed a check for array notation
expression in a function.
(build_over_call): Likewise.
(magic_varargs_p): Added a check for builtin array notation function.
Made this function non-static and removed its prototype.
* cp-tree.h (magic_varargs_p): New prototype.
* typeck.c (cp_build_function_call_vec): Removed automatic setting of
nargs to the param->length when builtin reduction function is used.
(convert_arguments): Replaced check for a constant_p function with
margic_varargs_p function call.
(cp_build_binary_op): Removed calling of the function
find_correct_array_notation_type.
(cp_build_addr_expr_1): Removed an unwanted if-statement.
(convert_for_assignment): Removed automatic return of rhs when array
notation builtin function is used.
gcc/testsuite/ChangeLog
2013-06-28 Balaji V. Iyer <balaji.v.iyer@intel.com>
* c-c++-common/cilk-plus/AN/decl-ptr-colon.c (main): Made this testcase
c specific.
* c-c++-common/cilk-plus/AN/decl-ptr-colon.c (main): Changed dg-error
strings to match the fixed error messages.
* c-c++-common/cilk-plus/AN/misc.c (main): Likewise.
* c-c++-common/cilk-plus/AN/rank_mismatch.c (main): Added a new error
message check.
From-SVN: r200554
2013-06-28 13:04:36 -07:00
Vladimir Makarov
e32e4c4a88
lra-constraints.c (need_for_split_p): Check call used hard regs living through calls.
...
2013-06-28 Vladimir Makarov <vmakarov@redhat.com>
* lra-constraints.c (need_for_split_p): Check call used hard regs
living through calls.
From-SVN: r200553
2013-06-28 19:43:39 +00:00
Michael Meissner
f161bfd330
re PR target/57744 (Power8 support has problems with quad word atomic instructions)
...
[gcc]
2013-06-28 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/57744
* config/rs6000/rs6000.h (MODES_TIEABLE_P): Do not allow PTImode
to tie with any other modes. Eliminate Altivec vector mode tests,
since these are a subset of ALTIVEC or VSX vector modes. Simplify
code, to return 0 if testing MODE2 for a condition, if we've
already tested MODE1 for the same condition.
[gcc/testsuite]
2013-06-28 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/57744
* gcc.target/powerpc/pr57744.c: New test to make sure lqarx and
stqcx. get even registers.
From-SVN: r200538
2013-06-28 16:15:17 +00:00
Paolo Carlini
7d9800e39a
*: Move inside testsuite/21_strings/basic_string/operations/data/.
...
2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/21_strings/basic_string/operations/*: Move inside
testsuite/21_strings/basic_string/operations/data/.
* testsuite/21_strings/basic_string/compare/*: Move inside
testsuite/21_strings/basic_string/operations/.
* testsuite/21_strings/basic_string/find/*: Likewise.
* testsuite/21_strings/basic_string/rfind/*: Likewise.
* testsuite/21_strings/basic_string/substr/*: Likewise.
From-SVN: r200537
2013-06-28 16:01:08 +00:00
Marcus Shawcroft
7eda14e188
[AArch64] Fix layout of aarch64_cannot_force_const_mem.
...
From-SVN: r200532
2013-06-28 15:22:48 +00:00
Marcus Shawcroft
c822f852e9
[AArch64] Update comment w.r.t SYMBOL_TINY_ABSOLUTE address model.
...
From-SVN: r200531
2013-06-28 15:17:19 +00:00
Marcus Shawcroft
946c8f7bff
Disable strassen.f90 test for aarch64 tiny memory.
...
This test case is too large to fit into the aarch64 tiny memory model.
From-SVN: r200521
2013-06-28 12:45:57 +00:00
Marcus Shawcroft
da4f13a4f9
[AArch64] Remove aarch64_symbolic_constant_p.
...
From-SVN: r200519
2013-06-28 12:26:20 +00:00
Kyrylo Tkachov
956a95a55f
constraints.md (Ts): New constraint.
...
2013-06-28 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/constraints.md (Ts): New constraint.
* config/arm/arm.md (arm_movqi_insn): Add alternatives for
16-bit encodings.
(compare_scc): Use "Ts" constraint for operand 0.
(ior_scc_scc): Likewise.
(and_scc_scc): Likewise.
(and_scc_scc_nodom): Likewise.
(ior_scc_scc_cmp): Likewise for operand 7.
(and_scc_scc_cmp): Likewise.
* config/arm/thumb2.md (thumb2_movsi_insn):
Add alternatives for 16-bit encodings.
(thumb2_movhi_insn): Likewise.
(thumb2_movsicc_insn): Likewise.
(thumb2_and_scc): Take 'and' outside cond_exec. Use "Ts" constraint.
(thumb2_negscc): Use "Ts" constraint.
Move mvn instruction outside cond_exec block.
* config/arm/vfp.md (thumb2_movsi_vfp): Add alternatives
for 16-bit encodings.
From-SVN: r200515
2013-06-28 11:16:03 +00:00
Kyrylo Tkachov
31dfce1008
arm.md (arm_mulsi3_v6): Add alternative for 16-bit encoding.
...
2013-06-28 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.md (arm_mulsi3_v6): Add alternative for 16-bit
encoding.
(mulsi3addsi_v6): Disable predicable variant for arm_restrict_it.
(mulsi3subsi): Likewise.
(mulsidi3adddi): Likewise.
(mulsidi3_v6): Likewise.
(umulsidi3_v6): Likewise.
(umulsidi3adddi_v6): Likewise.
(smulsi3_highpart_v6): Likewise.
(umulsi3_highpart_v6): Likewise.
(mulhisi3tb): Likewise.
(mulhisi3bt): Likewise.
(mulhisi3tt): Likewise.
(maddhisi4): Likewise.
(maddhisi4tb): Likewise.
(maddhisi4tt): Likewise.
(maddhidi4): Likewise.
(maddhidi4tb): Likewise.
(maddhidi4tt): Likewise.
(zeroextractsi_compare0_scratch): Likewise.
(insv_zero): Likewise.
(insv_t2): Likewise.
(anddi_notzesidi_di): Likewise.
(anddi_notsesidi_di): Likewise.
(andsi_notsi_si): Likewise.
(iordi_zesidi_di): Likewise.
(xordi_zesidi_di): Likewise.
(andsi_iorsi3_notsi): Likewise.
(smax_0): Likewise.
(smax_m1): Likewise.
(smin_0): Likewise.
(not_shiftsi): Likewise.
(unaligned_loadsi): Likewise.
(unaligned_loadhis): Likewise.
(unaligned_loadhiu): Likewise.
(unaligned_storesi): Likewise.
(unaligned_storehi): Likewise.
(extv_reg): Likewise.
(extzv_t2): Likewise.
(divsi3): Likewise.
(udivsi3): Likewise.
(arm_zero_extendhisi2addsi): Likewise.
(arm_zero_extendqisi2addsi): Likewise.
(compareqi_eq0): Likewise.
(arm_extendhisi2_v6): Likewise.
(arm_extendqisi2addsi): Likewise.
(arm_movt): Likewise.
(thumb2_ldrd): Likewise.
(thumb2_ldrd_base): Likewise.
(thumb2_ldrd_base_neg): Likewise.
(thumb2_strd): Likewise.
(thumb2_strd_base): Likewise.
(thumb2_strd_base_neg): Likewise.
(arm_negsi2): Add alternative for 16-bit encoding.
(arm_one_cmplsi2): Likewise.
From-SVN: r200513
2013-06-28 10:56:27 +00:00
Marc Glisse
ee429bdfe0
re PR c++/57509 (Segmentation fault when using __builtin_shuffle in templated class.)
...
2013-06-28 Marc Glisse <marc.glisse@inria.fr>
PR c++/57509
* g++.dg/ext/pr57509.C: Pass vectors by reference to avoid warnings.
From-SVN: r200511
2013-06-28 10:31:39 +00:00
Kyrylo Tkachov
1572e697b7
predicates.md (arm_cond_move_operator): New predicate.
...
2013-06-28 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/predicates.md (arm_cond_move_operator): New predicate.
* config/arm/arm.md (movsfcc): Use arm_cond_move_operator predicate.
(movdfcc): Likewise.
* config/arm/vfp.md (*thumb2_movsf_vfp):
Disable predication for arm_restrict_it.
(*thumb2_movsfcc_vfp): Disable for arm_restrict_it.
(*thumb2_movdfcc_vfp): Likewise.
(*abssf2_vfp, *absdf2_vfp, *negsf2_vfp, *negdf2_vfp,*addsf3_vfp,
*adddf3_vfp, *subsf3_vfp, *subdf3_vfpc, *divsf3_vfp,*divdf3_vfp,
*mulsf3_vfp, *muldf3_vfp, *mulsf3negsf_vfp, *muldf3negdf_vfp,
*mulsf3addsf_vfp, *muldf3adddf_vfp, *mulsf3subsf_vfp,
*muldf3subdf_vfp, *mulsf3negsfaddsf_vfp, *fmuldf3negdfadddf_vfp,
*mulsf3negsfsubsf_vfp, *muldf3negdfsubdf_vfp, *fma<SDF:mode>4,
*fmsub<SDF:mode>4, *fnmsub<SDF:mode>4, *fnmadd<SDF:mode>4,
*extendsfdf2_vfp, *truncdfsf2_vfp, *extendhfsf2, *truncsfhf2,
*truncsisf2_vfp, *truncsidf2_vfp, fixuns_truncsfsi2, fixuns_truncdfsi2,
*floatsisf2_vfp, *floatsidf2_vfp, floatunssisf2, floatunssidf2,
*sqrtsf2_vfp, *sqrtdf2_vfp, *cmpsf_vfp, *cmpsf_trap_vfp, *cmpdf_vfp,
*cmpdf_trap_vfp, <vrint_pattern><SDF:mode>2):
Disable predication for arm_restrict_it.
From-SVN: r200510
2013-06-28 10:05:27 +00:00
Jakub Jelinek
4ea3d77451
re PR middle-end/36041 (Speed up builtin_popcountll)
...
PR middle-end/36041
* libgcc2.c (POPCOUNTCST2, POPCOUNTCST4, POPCOUNTCST8, POPCOUNTCST):
Define.
(__popcountSI2): For __SIZEOF_INT__ > 2 targets use arithmetics
instead of table lookups.
(__popcountDI2): Likewise.
From-SVN: r200506
2013-06-28 11:28:40 +02:00
Kirill Yukhin
ebf8f0eaeb
bmiintrin.h (_bextr_u32): New.
...
ChangeLog:
* config/i386/bmiintrin.h (_bextr_u32): New.
(_bextr_u64): Ditto.
testsuite/ChangeLog:
* gcc.target/i386/bmi-1.c: Extend with new instrinsic.
Fix scan patterns.
* gcc.target/i386/bmi-1.c: Ditto.
* gcc.target/i386/bmi-bextr-4.c: New.
* gcc.target/i386/bmi-bextr-5.c: Ditto.
From-SVN: r200505
2013-06-28 09:02:46 +00:00
Paolo Carlini
7350faad6f
re PR c++/57682 (Uniform initialization syntax rejected in function-try-block)
...
/cp
2013-06-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57682
* parser.c (cp_parser_save_member_function_body): Handle correctly
curly braces in function-try-block mem-initializers.
/testsuite
2013-06-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57682
* g++.dg/cpp0x/initlist73.C: New.
From-SVN: r200504
2013-06-28 08:53:03 +00:00
Meador Inge
1c3429049a
atomic-flag.c: Add dg-require-effective-target sync_*.
...
gcc/testsuite/
2013-06-27 Meador Inge <meadori@codesourcery.com>
* gcc.dg/atomic-flag.c: Add dg-require-effective-target sync_*.
* g++.dg/simulate-thread/atomics-2.C: Likewise.
* g++.dg/simulate-thread/atomics-1.C: Likewise.
From-SVN: r200501
2013-06-28 00:55:13 +00:00
GCC Administrator
a34eb0bdab
Daily bump.
...
From-SVN: r200500
2013-06-28 00:16:29 +00:00
Richard Sandiford
a290fcda13
gcc/
...
* config.gcc (mips*-mti-elf*, mips*-sde-elf*, mips64r5900-*-elf*)
(mips64r5900el-*-elf*): Include mips/n32-elf.h.
* config/mips/sde.h (LOCAL_LABEL_PREFIX, NO_DOLLAR_IN_LABEL)
(LONG_DOUBLE_TYPE_SIZE, LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Move to...
* config/mips/n32-elf.h: ...this new file.
From-SVN: r200496
2013-06-27 21:31:05 +00:00
Marc Glisse
bedc293e87
re PR c++/57509 (Segmentation fault when using __builtin_shuffle in templated class.)
...
2013-06-27 Marc Glisse <marc.glisse@inria.fr>
PR c++/57509
gcc/c-family/
* c-common.h (c_build_vec_perm_expr): New complain argument.
* c-common.c (c_build_vec_perm_expr): Likewise.
Use save_expr also in C++.
gcc/cp/
* typeck.c (cp_build_vec_perm_expr): New function.
* cp-tree.h: Declare it.
* parser.c (cp_parser_postfix_expression): Call it.
* pt.c (tsubst_copy): Handle VEC_PERM_EXPR.
(tsubst_copy_and_build): Likewise.
gcc/testsuite/
* g++.dg/ext/pr57509.C: New file.
From-SVN: r200495
2013-06-27 21:29:22 +00:00
Ian Lance Taylor
4a197d64cb
compiler: structs inherit all methods from embedded pointer fields.
...
Previously if a struct S contained an embedded field *T,
a method with receiver *T would not be promoted to a method
with value receiver S.
From-SVN: r200493
2013-06-27 20:51:55 +00:00
Marc Glisse
ea16999619
re PR target/57224 (Remove __builtin_ia32_cmpngtss and __builtin_ia32_cmpngess)
...
2013-06-27 Marc Glisse <marc.glisse@inria.fr>
PR target/57224
* config/i386/i386.c (enum ix86_builtins, bdesc_args): Remove
IX86_BUILTIN_CMPNGTSS and IX86_BUILTIN_CMPNGESS.
From-SVN: r200492
2013-06-27 20:07:32 +00:00
Ian Lance Taylor
d4134e8598
compiler: more consistent error message for [...]T(x)
...
The message should be similar to the one for "var x [...]T",
not to the message for []T(x...).
From-SVN: r200490
2013-06-27 19:20:08 +00:00
Catherine Moore
8e932114ee
mips-tables.opt: Regenerate.
...
2013-06-27 Catherine Moore <clm@codesourcery.com>
* config/mips/mips-tables.opt: Regenerate.
* config/mips/mips-cpus.def: Add m14ke and m14kec.
* config/mips/mips.h (BASE_DRIVER_SELF_SPECS): m14ke* implies
-mdspr2.
* doc/invoke.texi: Add -m14kc.
From-SVN: r200487
2013-06-27 14:56:00 -04:00
Jakub Jelinek
cd06d2a20c
re PR target/57623 (BEXTR intrinsic has memory operands switched around (fails to compile code))
...
PR target/57623
* config/i386/i386.md (bmi_bextr_<mode>): Swap predicates and
constraints of operand 1 and 2.
* gcc.target/i386/bmi-bextr-3.c: New test.
From-SVN: r200479
2013-06-27 18:48:05 +02:00