Commit Graph

129721 Commits

Author SHA1 Message Date
James Greenhalgh
97e1ad78bc [AArch64] Relax modes_tieable_p and cannot_change_mode_class
gcc/

	* config/aarch64/aarch64-protos.h (aarch64_modes_tieable_p): New.
	* config/aarch64/aarch64.c
	(aarch64_cannot_change_mode_class): Weaken conditions.
	(aarch64_modes_tieable_p): New.
	* config/aarch64/aarch64.h (MODES_TIEABLE_P): Use it.

From-SVN: r209878
2014-04-28 21:00:38 +00:00
Pat Haugen
bf245bf484 sync.md (AINT mode_iterator): Move definition.
* config/rs6000/sync.md (AINT mode_iterator): Move definition.
	(loadsync_<mode>): Change mode.
	(load_quadpti, store_quadpti): New.
	(atomic_load<mode>, atomic_store<mode>): Add support for TI mode.
	* config/rs6000/rs6000.md (unspec enum): Add UNSPEC_LSQ.

From-SVN: r209873
2014-04-28 20:21:29 +00:00
Richard Henderson
bc76a4d5b5 Enable ada for aarch64-linux
* gcc-interface/Makefile.in: Support aarch64-linux.

From-SVN: r209871
2014-04-28 12:33:08 -07:00
Martin Jambor
28151221b5 tree-sra.c (sra_modify_expr): Generate new memory accesses with same alias type as the original statement.
2014-04-28  Martin Jambor  <mjambor@suse.cz>

	* tree-sra.c (sra_modify_expr): Generate new memory accesses with
	same alias type as the original statement.
	(subreplacement_assignment_data): New type.
	(handle_unscalarized_data_in_subtree): New type of parameter,
	generate new memory accesses with same alias type as the original
	statement.
	(load_assign_lhs_subreplacements): Likewise.
	(sra_modify_constructor_assign): Generate new memory accesses with
	same alias type as the original statement.

testsuite/
        * gcc.dg/tree-ssa/sra-14.c: New test.

From-SVN: r209868
2014-04-28 18:55:40 +02:00
Eric Botcazou
9358288555 exp_dbug.ads (Get_External_Name): Add 'False' default to Has_Suffix, add 'Suffix' parameter and adjust comment.
* exp_dbug.ads (Get_External_Name): Add 'False' default to Has_Suffix,
	add 'Suffix' parameter and adjust comment.
	(Get_External_Name_With_Suffix): Delete.
	* exp_dbug.adb (Get_External_Name_With_Suffix): Merge into...
	(Get_External_Name): ...here.  Add 'False' default to Has_Suffix, add
	'Suffix' parameter.
	(Get_Encoded_Name): Remove 2nd argument in call to Get_External_Name.
	Call Get_External_Name instead of Get_External_Name_With_Suffix.
	(Get_Secondary_DT_External_Name): Likewise.
	* exp_cg.adb (Write_Call_Info): Likewise.
	* exp_disp.adb (Export_DT): Likewise.
	(Import_DT): Likewise.
	* comperr.ads (Compiler_Abort): Remove Code parameter and add From_GCC
	parameter with False default.
	* comperr.adb (Compiler_Abort): Likewise.  Adjust accordingly.
	* types.h (Fat_Pointer): Rename into...
	(String_Pointer): ...this.  Add comment on interfacing rules.
	* fe.h (Compiler_Abort): Adjust for above renaming.
	(Error_Msg_N): Likewise.
	(Error_Msg_NE): Likewise.
	(Get_External_Name): Likewise.  Add third parameter.
	(Get_External_Name_With_Suffix): Delete.
	* gcc-interface/decl.c (STDCALL_PREFIX): Define.
	(create_concat_name): Adjust call to Get_External_Name, remove call to
	Get_External_Name_With_Suffix, use STDCALL_PREFIX, adjust for renaming.
	* gcc-interface/trans.c (post_error): Likewise.
	(post_error_ne): Likewise.
	* gcc-interface/misc.c (internal_error_function): Likewise.

From-SVN: r209866
2014-04-28 14:58:28 +00:00
Richard Biener
9ba5fb4309 tree-pass.h (TODO_verify_il): Define.
2014-04-28  Richard Biener  <rguenther@suse.de>

	* tree-pass.h (TODO_verify_il): Define.
	(TODO_verify_all): Complete properly.
	* passes.c (execute_function_todo): Move existing loop-closed
	SSA verification under TODO_verify_il.
	(execute_one_pass): Trigger TODO_verify_il at todo-after time.
	* graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps):
	Fix tree sharing issue.

From-SVN: r209865
2014-04-28 14:42:06 +00:00
Richard Biener
22869a37b0 re PR middle-end/60092 (posix_memalign not recognized to derive alias and alignment info)
2014-04-28  Richard Biener  <rguenther@suse.de>

	PR middle-end/60092
	* builtins.def (DEF_C11_BUILTIN): Add.
	(BUILT_IN_ALIGNED_ALLOC): Likewise.
	* coretypes.h (enum function_class): Add function_c11_misc.
	* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle
	BUILT_IN_ALIGNED_ALLOC like BUILT_IN_MALLOC.
	(call_may_clobber_ref_p_1): Likewise.
	* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Likewise.
	(mark_all_reaching_defs_necessary_1): Likewise.
	(propagate_necessity): Likewise.
	(eliminate_unnecessary_stmts): Likewise.
	* tree-ssa-ccp.c (evaluate_stmt): Handle BUILT_IN_ALIGNED_ALLOC.

	ada/
	* gcc-interface/utils.c: Define flag_isoc11.

	lto/
	* lto-lang.c: Define flag_isoc11.

	* gcc.dg/tree-ssa/alias-32.c: New testcase.
	* gcc.dg/vect/pr60092.c: Likewise.

From-SVN: r209863
2014-04-28 14:36:13 +00:00
Richard Biener
771c950116 tree-vrp.c (vrp_var_may_overflow): Remove.
2014-04-28  Richard Biener  <rguenther@suse.de>

	* tree-vrp.c (vrp_var_may_overflow): Remove.
	(vrp_visit_phi_node): Rather than bumping to +-INF possibly
	with overflow immediately bump to one before that value and
	let iteration figure out overflow status.

	* gcc.dg/tree-ssa/vrp91.c: New testcase.
	* gcc.dg/Wstrict-overflow-14.c: XFAIL.
	* gcc.dg/Wstrict-overflow-15.c: Likewise.
	* gcc.dg/Wstrict-overflow-18.c: Remove XFAIL.

From-SVN: r209862
2014-04-28 14:07:51 +00:00
Richard Biener
279a935ff4 configure.ac: Do valgrind header checks unconditionally.
2014-04-28  Richard Biener  <rguenther@suse.de>

	* configure.ac: Do valgrind header checks unconditionally.
	Add --enable-valgrind-annotations.
	* system.h: Guard valgrind header inclusion with
	ENABLE_VALGRIND_ANNOTATIONS instead of ENABLE_VALGRIND_CHECKING.
	* alloc-pool.c (pool_alloc, pool_free): Use
	ENABLE_VALGRIND_ANNOTATIONS instead of ENABLE_VALGRIND_CHECKING
	to guard possibly dead code.
	* config.in: Regenerated.
	* configure: Likewise.

From-SVN: r209861
2014-04-28 14:01:40 +00:00
Jeff Law
07357f2f5a re PR tree-optimization/60902 (ffmpeg built with gcc 4.9 RC produces incorrect flac playback code)
PR tree-optimization/60902
	* tree-ssa-threadedge.c
	(record_temporary_equivalences_from_stmts_at_dest): Only iterate
	over real defs when invalidating outputs from statements that do not
	produce useful outputs for threading.

From-SVN: r209860
2014-04-28 07:38:19 -06:00
Richard Biener
6c6aa8e6ca re PR tree-optimization/60979 (ICE: in gimple_redirect_edge_and_branch_force, at tree-cfg.c:5544, w/ -O -ftree-loop-linear or -fgraphite-identity)
2014-04-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/60979
	* graphite-scop-detection.c (scopdet_basic_block_info): Reject
	SCOPs that end in a block with a successor with abnormal
	predecessors.

	* gcc.dg/graphite/pr60979.c: New testcase.

From-SVN: r209859
2014-04-28 13:13:50 +00:00
Kyrylo Tkachov
9540b3c316 [ARM/AArch64] Use signed chars in gcc.dg/pr60114.c.
PR c/60983
	* gcc.dg/pr60114.c: Use signed chars.

From-SVN: r209858
2014-04-28 12:42:54 +00:00
Paolo Carlini
a3879fa1a8 re PR c++/59120 ([c++11] ICE with invalid template alias)
/cp
2014-04-28  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/59120
	* parser.c (cp_parser_alias_declaration): Check return value of
	cp_parser_require.

/testsuite
2014-04-28  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/59120
	* g++.dg/cpp0x/alias-decl-43.C: New.

From-SVN: r209857
2014-04-28 12:32:06 +00:00
Richard Biener
2cbf2d9595 tree-pass.h (execute_pass_list): Adjust prototype.
2014-04-28  Richard Biener  <rguenther@suse.de>

	* tree-pass.h (execute_pass_list): Adjust prototype.
	* passes.c (pass_manager::execute_early_local_passes):
	Adjust.
	(do_per_function): Change callback signature, push all actual
	work to the callbals.
	(do_per_function_toporder): Likewise.
	(execute_function_dump): Adjust.
	(execute_function_todo): Likewise.
	(clear_last_verified): Likewise.
	(verify_curr_properties): Likewise.
	(update_properties_after_pass): Likewise.
	(execute_pass_list_1): Split out from ...
	(execute_pass_list): ... here.  Adjust.
	(execute_ipa_pass_list): Likewise.
	* cgraphunit.c (cgraph_add_new_function): Adjust.
	(analyze_function): Likewise.
	(expand_function): Likewise.
	* cgraph.c (release_function_body): Free dominance info
	here instead of asserting it was magically freed elsewhere.

From-SVN: r209856
2014-04-28 11:30:09 +00:00
Eric Botcazou
ba21a04a1e configure.ac: Tweak GAS check for LEON instructions on SPARC.
* configure.ac: Tweak GAS check for LEON instructions on SPARC.
	* configure: Regenerate.
	* config/sparc/sparc.opt (muser-mode): New option.
	* config/sparc/sync.md (atomic_compare_and_swap<mode>_1): Do not enable
	for LEON3.
	(atomic_compare_and_swap_leon3_1): New instruction for LEON3.
	* doc/invoke.texi (SPARC options): Document -muser-mode.

From-SVN: r209850
2014-04-28 10:03:46 +00:00
GCC Administrator
b976509fd0 Daily bump.
From-SVN: r209848
2014-04-28 00:18:40 +00:00
Tim Shen
a670a9bb54 regex_automaton.h (_NFA<>::_M_insert_repeat): Add _S_opcode_repeat support to distingush a loop from _S_opcode_alternative.
2014-04-27  Tim Shen  <timshen91@gmail.com>

	* include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
	Add _S_opcode_repeat support to distingush a loop from
	_S_opcode_alternative.
	* include/bits/regex_automaton.tcc (_State_base::_M_print,
	_State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
	_StateSeq<>::_M_clone): Likewise.
	* include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
	Likewise.
	* include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
	* include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
	Uglify local variable __i.
	* include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
	Use size_t instead of int to compare with vector::size().

2014-04-27  Tim Shen  <timshen91@gmail.com>

	* include/bits/regex_executor.h: Add _M_rep_count to track how
	many times this repeat node are visited.
	* include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
	_Executor<>::_M_dfs): Use _M_rep_count to prevent entering
	infinite loop.

2014-04-27  Tim Shen  <timshen91@gmail.com>

	* include/bits/regex.tcc (__regex_algo_impl<>): Remove
	_GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
	_GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
	* include/bits/regex_automaton.h: Remove quantifier counting variable.
	* include/bits/regex_automaton.tcc (_State_base::_M_dot):
	Adjust debug NFA dump.

From-SVN: r209844
2014-04-27 23:48:47 +00:00
Richard Sandiford
f956adb961 cselib.c (find_slot_memmode): Delete.
gcc/
	* cselib.c (find_slot_memmode): Delete.
	(cselib_hasher): Change compare_type to a struct.
	(cselib_hasher::equal): Update accordingly.  Don't expect wrapped
	constants.
	(preserve_constants_and_equivs): Adjust for new compare_type.
	(cselib_find_slot): Likewise.  Take the mode of the rtx as argument.
	(wrap_constant): Delete.
	(cselib_lookup_mem, cselib_lookup_1): Update calls to cselib_find_slot.

From-SVN: r209843
2014-04-27 21:12:18 +00:00
Thomas Koenig
d01b2c21cf re PR fortran/59604 (Constant comparisons with -fno-range-check and int(z'...'))
2014-03-27  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/59604
	PR fortran/58003
	* gfortran.h (gfc_convert_mpz_to_signed):  Add prototype.
	* arith.c (gfc_int2int):  Convert number to signed if
	arithmetic overflow is not checked.
	* simplify.c (convert_mpz_to_unsigned): Only trigger assert for
	size if range checking is in force.
	(convert_mpz_to_signed):  Make non-static, rename to
	(gfc_convert_mpz_to_signed).
	(simplify_dshift): Use gfc_convert_mpz_to_signed.
	(gfc_simplify_ibclr):  Likewise.
	(gfc_simplify_ibits):  Likewise.
	(gfc_simplify_ibset):  Likewise.
	(simplify_shift):  Likewise.
	(gfc_simplify_ishiftc):  Likewise.
	(gfc_simplify_maskr):  Likewise.
	(gfc_simplify_maskl):  Likewise.

2014-03-27  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/59604
	PR fortran/58003
	* gfortran.dg/no_range_check_3.f90:  New test.

From-SVN: r209836
2014-04-27 10:48:56 +00:00
GCC Administrator
0a8dbb046c Daily bump.
From-SVN: r209835
2014-04-27 00:17:03 +00:00
Eric Botcazou
9e3f7c4bbc * gnatvsn.ads (Library_Version): Bump to 4.10.
From-SVN: r209830
2014-04-26 23:09:32 +00:00
Jerry DeLisle
dd9eb0f70e re PR libfortran/52539 (I/O: Wrong result for UTF-8/UCS-4 list-directed and namelist read and nml write)
2014-04-26  Jerry DeLisle  <jvdelisle@gcc.gnu>

	PR libfortran/52539
	* gfortran.dg/namelist_utf8.f90: New test.

From-SVN: r209829
2014-04-26 21:56:48 +00:00
Jerry DeLisle
42c1e008b0 re PR libfortran/52539 (I/O: Wrong result for UTF-8/UCS-4 list-directed and namelist read and nml write)
2014-04-26  Jerry DeLisle  <jvdelisle@gcc.gnu>

	PR libfortran/52539
	* io/list_read.c: Add uchar typedef. (push_char4): New function
	to save kind=4 character. (next_char_utf8): New function to read
	a single UTF-8 encoded character value. (read_chracter): Update
	to use the new functions for reading UTF-8 strings.
	(list_formatted_read_scalar): Update to handle list directed
	reads of UTF-8 strings. (nml_read_obj): Likewise update for
	UTF-8 strings in namelists.
	* io/write.c (nml_write_obj): Add kind=4 character support for
	namelist writes.

From-SVN: r209828
2014-04-26 21:52:26 +00:00
Markus Trippelsdorf
167c3e96ae Parallel profiledbootstrap is now supported
Parallel profiledbootstrap is supported on all maintained releases. So
just remove a misleading outdated sentence, that states the opposite,
from doc/install.texi.

2014-04-26  Markus Trippelsdorf  <markus@trippelsdorf.de>

	* doc/install.texi (Building with profile feedback): Remove
	outdated sentence.

From-SVN: r209826
2014-04-26 20:18:21 +00:00
Tom de Vries
4148ef5ff6 Fix out-of-bounds array accesses in ldexpxf3.
2014-04-26  Tom de Vries  <tom@codesourcery.com>

	* config/i386/i386.md (define_expand "ldexpxf3"): Fix out-of-bounds
	array accesses.

From-SVN: r209824
2014-04-26 16:32:56 +00:00
Uros Bizjak
367ab8238a alias-30.c (dg-options): Dump only fre1 details.
* gcc.dg/tree-ssa/alias-30.c (dg-options): Dump only fre1 details.
	* gcc.dg/vect/pr60505.c: Cleanup vect tree dump.
	* g++.dg/ipa/devirt-27.C (dg-options): Remove -fdump-ipa-devirt.

From-SVN: r209823
2014-04-26 16:31:29 +02:00
Chris Manghane
036165d811 compiler: Use backend interface for defining global declarations.
* go-gcc.cc: Include "cgraph.h" and "gimplify.h".
	(Gcc_backend::return_statement): Push and pop function.
	(Gcc_backend::label): Likewise.
	(Gcc_backend::function_defer_statement): Likewise.
	(Gcc_backend::switch_statement): Add function parameter.
	(Gcc_backend::block): Don't permit function to be NULL.
	(Gcc_backend::temporary_variable): Change go_assert to
	gcc_assert.
	(Gcc_backend::gc_root_variable): New function.
	(Gcc_backend::write_global_definitions): New function.

From-SVN: r209819
2014-04-26 03:38:34 +00:00
GCC Administrator
10695c6a1d Daily bump.
From-SVN: r209818
2014-04-26 00:16:56 +00:00
Cary Coutant
8d8ffd86d7 Fix a few ICEs and other problems with -fdebug-types-sections.
(1) If a function contains a local typedef of an anonymous structure, GCC
will generate a typedef DIE in the function, where the typedef DIE points
to a structure_type DIE at the top level.  That structure_type DIE, if
it's a non-POD, can contain ctor and dtor definitions.  This causes an
assertion in should_move_die_to_comdat to fail, as we have up to now
assumed that this could never happen.

(2) With --std=c++11, a template parameter can refer to a local type defined
within a function.  Because that local type doesn't qualify for its own
type unit, we copy it as an "unworthy" type into the type unit that refers
to it, but we copy too much, leading to a comdat type unit that contains a
DIE with subprogram definitions rather than declarations.  These DIEs may
have DW_AT_low_pc/high_pc or DW_AT_ranges attributes, and consequently can
refer to range list entries that don't get emitted because they're not
marked when the compile unit is scanned, eventually causing an undefined
symbol at link time.

(3) When a class template instantiation is moved into a separate type unit,
it can bring along a lot of other referenced types into the type unit,
especially if the template is derived from another (large) type that
does not have an actually have a type definition in a type unit of its
own. When there are many instantiations of the same template, we get
a lot of duplication, and in the worst case (a template with several
parameters, instantiated multiple times along each dimension), GCC
can end up taking a long time and exhausting available memory.

This combinatorial explosion is being caused by copy_decls_walk, where
it finds a type DIE that is referenced by the type unit, but is not
itself a type unit, and copies a declaration for that type into the
type unit in order to resolve the reference within the type unit.
In the process, copy_decls_walk also copies all of the children of
that DIE. In the case of a base class with member function templates,
every one of the instantiated member functions is copied into every
type unit that references the base class.

gcc/
        PR debug/60929
	* dwarf2out.c (should_move_die_to_comdat): A type definition
        can contain a subprogram definition, but don't move it to a
        comdat unit.
	(clone_as_declaration): Copy DW_AT_abstract_origin attribute.
        (generate_skeleton_bottom_up): Remove DW_AT_object_pointer attribute
        from original DIE.
	(clone_tree_hash): Rename to...
	(clone_tree_partial): ...this; change callers.  Copy
        DW_TAG_subprogram DIEs as declarations.
	(copy_decls_walk): Don't copy children of a declaration into a
        type unit.

gcc/testsuite/
        PR debug/60929
        * g++.dg/debug/dwarf2/dwarf4-nested.C: New test case.
        * g++.dg/debug/dwarf2/dwarf4-typedef.C: Add
        -fdebug-types-section flag.

From-SVN: r209812
2014-04-25 16:05:14 -07:00
H.J. Lu
255671b0c5 Set MODE to SI for alternative 12 in *movsf_internal
PR target/60969
	* config/i386/i386.md (*movsf_internal): Set MODE to SI for
	alternative 12.

From-SVN: r209811
2014-04-25 13:52:01 -07:00
Lars Gullik Bjønnes
e2ce9436fb re PR libstdc++/60710 (experimental::optional<T> is using T::operator!=)
2014-04-25  Lars Gullik Bjønnes  <larsbj@gullik.org>

	PR libstdc++/60710
	* include/experimental/optional (operator!=): Implement in terms of
	operator==.
	* testsuite/experimental/optional/relops/1.cc: Remove operator!=.
	* testsuite/experimental/optional/relops/2.cc: Likewise.
	* testsuite/experimental/optional/relops/3.cc: Likewise.
	* testsuite/experimental/optional/relops/4.cc: Likewise.
	* testsuite/experimental/optional/relops/5.cc: Likewise.
	* testsuite/experimental/optional/relops/6.cc: Likewise.

From-SVN: r209810
2014-04-25 20:34:42 +01:00
Jiong Wang
10432733a5 [ARM] Enable tail call optimization for long call
gcc/

	* config/arm/predicates.md (call_insn_operand): Add long_call check.
	* config/arm/arm.md (sibcall, sibcall_value): Force the address to
	reg for long_call.
	* config/arm/arm.c (arm_function_ok_for_sibcall): Remove long_call
	restriction.

gcc/testsuite

	* gcc.target/arm/tail-long-call.c: New test.

From-SVN: r209808
2014-04-25 17:00:33 +00:00
Jonathan Wakely
4ec21835cb re PR libstdc++/60958 (Initialization of arrays in tr1/regex ill-formed or with undefined behaviour)
PR libstdc++/60958
	* include/tr1/regex (regex_traits::isctype): Comment out broken code.
	* testsuite/util/testsuite_regex.h (regex_match_debug): Improve
	comment.

From-SVN: r209807
2014-04-25 17:10:25 +01:00
Kyrylo Tkachov
0e4c913f53 [ARM] Initialise T16-related fields in Cortex-A8 tuning struct.
* config/arm/arm.c (arm_cortex_a8_tune): Initialise
	T16-related fields.

From-SVN: r209806
2014-04-25 14:32:39 +00:00
Bill Schmidt
61ba732927 re PR tree-optimization/60930 (Wrong folding of - ((unsigned long long) a * (unsigned long long) (unsigned int)-1))
[gcc]

2014-04-25  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR tree-optimization/60930
	* gimple-ssa-strength-reduction.c (create_mul_imm_cand):  Reject
	creating a multiply candidate by folding two constant
	multiplicands when the result overflows.

[gcc/testsuite]

2014-04-25  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR tree-optimization/60930
	* gcc.dg/torture/pr60930.c:  New test.

From-SVN: r209805
2014-04-25 14:28:58 +00:00
Jakub Jelinek
2b33282907 re PR tree-optimization/60960 (Wrong result when a vector variable is divided by a literal constant)
PR tree-optimization/60960
	* tree-vect-generic.c (expand_vector_operation): Only call
	expand_vector_divmod if type's mode satisfies VECTOR_MODE_P.

	* gcc.c-torture/execute/pr60960.c: New test.

From-SVN: r209802
2014-04-25 15:52:52 +02:00
Marek Polacek
ce2acd31d8 * gcc.dg/pr18079-2.c: Fix quoting in dg-warning.
From-SVN: r209801
2014-04-25 13:22:13 +00:00
Tom de Vries
97891c11e3 Add clobber_reg
2014-04-25  Tom de Vries  <tom@codesourcery.com>

	* expr.c (clobber_reg_mode): New function.
	* expr.h (clobber_reg): New function.

From-SVN: r209800
2014-04-25 11:21:40 +00:00
Tom de Vries
3ee634fd7b Register CALL_INSN_FUNCTION_USAGE in find_all_hard_reg_sets
2014-04-25  Tom de Vries  <tom@codesourcery.com>

	* rtlanal.c (find_all_hard_reg_sets): Note INSN_CALL_FUNCTION_USAGE
	clobbers.

From-SVN: r209799
2014-04-25 11:21:29 +00:00
Radovan Obradovic
356bf59349 Add implicit parameter to find_all_hard_reg_sets
2014-04-25  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

	* rtlanal.c (find_all_hard_reg_sets): Add bool implicit parameter and
	handle.
	* rtl.h (find_all_hard_reg_sets): Add bool parameter.
	* haifa-sched.c (recompute_todo_spec, check_clobbered_conditions): Add
	new argument to find_all_hard_reg_sets call.

Co-Authored-By: Tom de Vries <tom@codesourcery.com>

From-SVN: r209798
2014-04-25 11:21:18 +00:00
Kyrylo Tkachov
fe65a7edc6 [ARM] Wrap long literals in HOST_WIDE_INT_C in aarch-common.c
* config/arm/aarch-common.c (aarch_rev16_shright_mask_imm_p):
       Use HOST_WIDE_INT_C for mask literal.
       (aarch_rev16_shleft_mask_imm_p): Likewise.

From-SVN: r209797
2014-04-25 11:09:03 +00:00
Marek Polacek
45484dcfb1 re PR c/18079 (Contradicting function attributes (always_inline vs noinline))
PR c/18079
c/
	* c-decl.c (diagnose_mismatched_decls): Warn for mismatched
	always_inline/noinline and hot/cold attributes.
c-family/
	* c-common.c (handle_noinline_attribute): Warn if the attribute
	conflicts with always_inline attribute.
	(handle_always_inline_attribute): Warn if the attribute conflicts
	with noinline attribute.
testsuite/
	* gcc.dg/pr18079.c: New test.
	* gcc.dg/pr18079-2.c: New test.

From-SVN: r209796
2014-04-25 11:04:40 +00:00
Uros Bizjak
707d775782 pr60823-2.c: Require effective target vect_simd_clones.
* c-c++-common/gomp/pr60823-2.c: Require effective target
	vect_simd_clones.

From-SVN: r209795
2014-04-25 12:51:24 +02:00
Marek Polacek
34cf811f64 re PR c/60114 (Incorrect column number for -pedantic and -Wconversion)
PR c/60114
c/
	* c-parser.c (c_parser_initelt): Pass input_location to
	process_init_element.
	(c_parser_initval): Pass loc to process_init_element.
	* c-tree.h (process_init_element): Adjust declaration.
	* c-typeck.c (push_init_level): Pass input_location to
	process_init_element.
	(pop_init_level): Likewise.
	(set_designator): Likewise.
	(output_init_element): Add location_t parameter.  Pass loc to
	digest_init.
	(output_pending_init_elements): Pass input_location to
	output_init_element.
	(process_init_element): Add location_t parameter.  Pass loc to
	output_init_element.
testsuite/
	* gcc.dg/pr60114.c: New test.

From-SVN: r209794
2014-04-25 10:49:56 +00:00
Eric Botcazou
b357d40d0a re PR target/60941 (miscompilation of firefox javascript interpreter)
PR target/60941
	* config/sparc/sparc.md (ashlsi3_extend): Delete.

From-SVN: r209790
2014-04-25 10:39:14 +00:00
Marc Glisse
30c0a59a91 re PR target/56540 (No __SIZEOF__XXX__ macro for __float128)
2014-04-25  Marc Glisse  <marc.glisse@inria.fr>

	PR preprocessor/56540
	* config/i386/i386-c.c (ix86_target_macros): Define
	__SIZEOF_FLOAT80__ and __SIZEOF_FLOAT128__.

From-SVN: r209789
2014-04-25 09:23:15 +00:00
Marek Polacek
38e514c017 re PR c/60156 (GCC doesn't warn about variadic main)
PR c/60156
	* c-common.c (check_main_parameter_types): Warn about variadic main.

	* c-c++-common/pr60156.c: New test.

From-SVN: r209787
2014-04-25 08:22:47 +00:00
Marc Glisse
e4012a04cd testsuite_abi.cc (check_version): Update for CXXABI_1.3.9.
2014-04-25  Marc Glisse  <marc.glisse@inria.fr>

	* testsuite/util/testsuite_abi.cc (check_version): Update for
	CXXABI_1.3.9.

From-SVN: r209786
2014-04-25 08:20:24 +00:00
Rainer Orth
c02f59e232 Remove LIB_TLS_SPEC on Solaris
* configure.ac (tga_func): Remove.
	(LIB_TLS_SPEC): Remove.
	* configure: Regenerate.
	* config.in: Regenerate.
	* config/sol2.h (LIB_SPEC): Don't use LIB_TLS_SPEC.

From-SVN: r209785
2014-04-25 08:08:41 +00:00
Marc Glisse
5b002eee4e re PR target/43538 (config/mt-gnu CXXFLAGS_FOR_TARGET)
2014-04-25  Marc Glisse  <marc.glisse@inria.fr>

	PR target/43538
	* mt-gnu: Don't reset CXXFLAGS_FOR_TARGET.

From-SVN: r209784
2014-04-25 08:03:08 +00:00