123610 Commits

Author SHA1 Message Date
Tobias Burnus
9606f3c9b1 expr.c (gfc_build_intrinsic_call): Make symbol as
2013-05-27  Tobias Burnus  <burnus@net-b.de>

        * expr.c (gfc_build_intrinsic_call): Make symbol as
        * attr.artificial.
        * intrinsic.c (gfc_is_intrinsic): Disable std check for those.

From-SVN: r199355
2013-05-27 14:32:40 +02:00
Joern Rennecke
7894bc6be0 re PR rtl-optimization/56833 (Valid register is over written by postreload pass)
PR rtl-optimization/56833
        * postreload.c (move2add_record_mode): New function.
        (move2add_record_sym_value, move2add_valid_value_p): Likewise.
        (move2add_use_add2_insn): Use move2add_record_sym_value.
        (move2add_use_add3_insn): Likewise.
        (reload_cse_move2add): Use move2add_valid_value_p and
        move2add_record_mode.  Invalidate call-clobbered and REG_INC
        affected regs by setting reg_mode to VOIDmode.
        (move2add_note_store): Don't pretend the inside of a SUBREG is
        the actual destination.  Invalidate single/leading registers by
        setting reg_mode to VOIDmode.
        Use move2add_record_sym_value, move2add_valid_value_p and
        move2add_record_mode.

From-SVN: r199353
2013-05-27 11:39:01 +01:00
Tobias Burnus
4fed6b2544 re PR fortran/57423 (Incorrect keyword argument names in Fortran OpenMP procedure interfaces in omp_lib)
2013-05-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57423
        * libgomp.texi (omp_set_dynamic, omp_set_nested, omp_set_nested,
        omp_set_num_threads, omp_init_lock, omp_set_lock, omp_test_lock,
        omp_unset_lock, omp_destroy_lock, omp_init_nest_lock,
        omp_set_nest_lock, omp_test_nest_lock, omp_unset_nest_lock,
        omp_destroy_nest_lock): Correct arguments to match the one in
        the OpenMP spec.
        * omp_lib.f90.in (omp_init_lock, omp_init_nest_lock,  omp_destroy_lock
        omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock, omp_unset_lock,
        omp_unset_nest_lock, omp_set_dynamic, omp_set_nested,
        omp_set_num_threads, omp_test_lock, omp_test_nest_lock): Ditto.

From-SVN: r199351
2013-05-27 11:28:48 +02:00
Richard Biener
b03be25f05 re PR tree-optimization/57396 (Wrong code with -fpredictive-commoning in Fortran double-loop)
2013-05-27  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/57396
	* tree-affine.c (double_int_constant_multiple_p): Properly
	return false for val == 0 and div != 0.

	* gfortran.fortran-torture/execute/pr57396.f90: New testcase.

From-SVN: r199350
2013-05-27 07:48:37 +00:00
GCC Administrator
f631c26698 Daily bump.
From-SVN: r199348
2013-05-27 00:16:45 +00:00
Eric Botcazou
1f1b69e56f decl.c: (gnat_to_gnu_entity): In ASIS mode, do not check that access types have a set size.
* gcc-interface/decl.c: (gnat_to_gnu_entity): In ASIS mode, do not
	check that access types have a set size.

From-SVN: r199343
2013-05-26 10:23:23 +00:00
Eric Botcazou
9580628d89 decl.c (vinfo_t): New type and associated vector.
* gcc-interface/decl.c (vinfo_t): New type and associated vector.
	(components_to_record): Change return type to bool.
	Lay out the variants in two passes.  Do not force a specific layout for
	the variant part if the variants do not have a representation clause.
	Take the alignment of the variant part into account when laying out
	variants without rep clause in a record type with a partial rep clause.
	(create_rep_part): Do not set the position of the field.

From-SVN: r199342
2013-05-26 10:19:00 +00:00
Eric Botcazou
7cc15171be trans.c (Attribute_to_gnu): Add kludge to avoid generating an overflow for -1.
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Last_Bit>: Add kludge
	to avoid generating an overflow for -1.

From-SVN: r199339
2013-05-26 10:02:33 +00:00
Eric Botcazou
74746d494b gigi.h (create_type_decl): Adjust prototype.
* gcc-interface/gigi.h (create_type_decl): Adjust prototype.
	(create_label_decl): Complete prototype.
	(process_attributes): Declare.
	* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust multiple calls to
	create_type_decl throughout.
	<E_Enumeration_Type>: Do the layout of the type manually and call
	process_attributes on it.  Reindent.
	<E_Enumeration_Subtype>: Minor tweak.
	<E_Floating_Point_Subtype>: Reindent.
	<E_Array_Subtype>: Call process_attributes on the array type built
	for a packed array type.
	<E_Record_Type>: Call process_attributes on the type.
	<E_Record_Subtype>: Likewise.
	<E_Access_Type>: Likewise.
	<E_Subprogram_Type>: Likewise.
	Likewise for all types at the end of the processing.
	* gcc-interface/utils.c (make_aligning_type): Adjust call to
	create_type_decl.
	(maybe_pad_type): Likewise.
	(create_index_type): Likewise.
	(create_type_decl): Remove attr_list parameter and associated code.
	(create_var_decl_1): Call process_attributes on the variable.
	(process_attributes): Take a pointer to the object and add in_place
	and gnat_node parameters and adjust throughout.
	<ATTR_MACHINE_ATTRIBUTE>: Pass ATTR_FLAG_TYPE_IN_PLACE only on demand
	and set the input location.
	Zap the attribute list at the end.
	(create_subprog_decl): Call process_attributes on the subprogram.
	(build_unc_object_type): Adjust call to create_type_decl.
	(handle_vector_type_attribute): Remove dead code.

From-SVN: r199338
2013-05-26 09:52:10 +00:00
Eric Botcazou
0746af5e62 gigi.h (make_aligning_type): Adjust prototype.
* gcc-interface/gigi.h (make_aligning_type): Adjust prototype.
	* gcc-interface/utils.c (make_aligning_type): Take GNAT_NODE parameter
	for the position of the associated TYPE_DECL.
	* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust call to above.
	* gcc-interface/utils2.c (maybe_wrap_malloc): Likewise.

From-SVN: r199337
2013-05-26 08:55:43 +00:00
Eric Botcazou
3fd7a66fdd decl.c (gnat_to_gnu_entity): Do not prematurely elaborate the full view of a type with a freeze node.
* gcc-interface/decl.c (gnat_to_gnu_entity): Do not prematurely
	elaborate the full view of a type with a freeze node.
	* gcc-interface/trans.c (process_type): Add explicit predicate.

From-SVN: r199336
2013-05-26 08:48:22 +00:00
Eric Botcazou
184179f183 decl.c (gnat_to_gnu_entity): Always build the UNC variable for aliased objects with unconstrained nominal...
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Always build the
	UNC variable for aliased objects with unconstrained nominal subtype.

From-SVN: r199335
2013-05-26 08:32:34 +00:00
GCC Administrator
13716008f8 Daily bump.
From-SVN: r199334
2013-05-26 00:16:44 +00:00
Benjamin Kosnik
1f08a74902 chrono: Wrap clocks in inline namespace _V2.
2013-05-24  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/chrono: Wrap clocks in inline namespace _V2.
	* src/c++11/chrono.cc: Same.
	* src/c++11/compatibility-chrono.cc: Revert to previous chrono.cc
	file, with default configure macros selected.

	* config/abi/pre/gnu.ver (GLIBCXX_3.4.19): Use symbols from inline
	namespace.
	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Fix up.

	* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
	* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
	Regenerated.
	* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
	Regenerated.
	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
	Regenerated.
	* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
	* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
	* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
	* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
	* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
	* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
	Regenerated.
	* config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
	* config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.

From-SVN: r199331
2013-05-25 23:02:54 +00:00
Richard Sandiford
44e88db2cb mips.h: Use #elif in preprocessor conditions.
gcc/
	* config/mips/mips.h: Use #elif in preprocessor conditions.

From-SVN: r199330
2013-05-25 16:04:11 +00:00
Richard Sandiford
3b8597040b re PR rtl-optimization/53916 ([mips16] divide operation compiled result incorrect with GCC-4.6.3 '-O2' option)
gcc/
	PR target/53916
	* config/mips/constraints.md (kl): New constraint.
	* config/mips/mips.md (divmod<mode>4, udivmod<mode>4): Delete.
	(divmod<mode>4_internal): Rename to divmod<mode>4.  Use "kl" as the
	constraint for operand 0.  Split after CSE for MIPS16.  Emit a move
	from LO for MIPS16.
	(udivmod<mode>4_internal): Likewise udivmod<mode>4.

gcc/testsuite/
	PR target/53916
	* gcc.target/mips/div-13.c: New test.

From-SVN: r199329
2013-05-25 16:00:12 +00:00
Richard Sandiford
c979d5f525 re PR target/55777 (Inlining nomips16 function into mips16 function can result in undefined builtins)
gcc/
	PR target/55777
	* config/mips/mips.c (mips_can_inline_p): New function.
	(TARGET_CAN_INLINE_P): Define.

gcc/testsuite/
	PR target/55777
	* gcc.target/mips/mips16-attributes-5.c,
	* gcc.target/mips/mips16-attributes-6.c: New tests.

From-SVN: r199328
2013-05-25 15:52:38 +00:00
Eric Botcazou
f4b688f22f builtin-bswap-6.c: Use same options as optimize-bswapsi-1.c.
* gcc.dg/builtin-bswap-6.c: Use same options as optimize-bswapsi-1.c.
	* gcc.dg/builtin-bswap-8.c: Likewise.

From-SVN: r199327
2013-05-25 13:49:27 +00:00
Paolo Carlini
cd8c587529 re PR c++/52216 ([C++11] Wrong exception deduction for some forms of placement new)
2013-05-25  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/52216
	* g++.dg/cpp0x/new1.C: New.

From-SVN: r199326
2013-05-25 12:02:01 +00:00
Steven Bosscher
8e90de434e sched-int.h (ds_t, dw_t): Make unsigned int.
* sched-int.h (ds_t, dw_t): Make unsigned int.
	Fix documentation that describes how all the ds_t bits are used.
	Reserve the last bit for delayed-branch scheduling.
	(BITS_PER_DEP_STATUS): Move to ds_t typedef.
	(BITS_PER_DEP_WEAK): Fix definition and documentation.
	(gen_dep_weak_1): Remove prototype.
	* sched-deps.c (get_dep_weak_1): Make static.
	* target.def (speculate_insn, needs_block_p, gen_spec_check,
	get_insn_spec_ds, get_insn_checked_ds): Adjust hook prototypes.
	* doc/tm.texi: Regenerate.
	* config/ia64/ia64.c (ia64_needs_block_p): Update prototype.

From-SVN: r199325
2013-05-25 10:31:43 +00:00
Paolo Carlini
a544998ee3 re PR c++/25666 (Bad diagnostic for templated destructor as friend)
/cp
2013-05-25  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/25666
	* decl2.c (check_classfn): Check for destructors declared as member
	templates.

/testsuite
2013-05-25  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/25666
	* g++.dg/parse/dtor16.C: New.
	* g++.dg/parse/dtor6.C: Adjust.

From-SVN: r199324
2013-05-25 08:39:44 +00:00
GCC Administrator
a62e8b4a2a Daily bump.
From-SVN: r199323
2013-05-25 00:16:40 +00:00
Rainer Orth
57d6e1b377 Use CLOCK_HIGHRES on Solaris 9
* config/os/solaris/solaris2.9/os_defines.h [!CLOCK_MONOTONIC]
	(CLOCK_MONOTONIC): Define.

From-SVN: r199317
2013-05-24 21:09:01 +00:00
Steven Bosscher
cb5cb19486 re PR debug/56950 (compare-debug failure for gcc.dg/pr41345.c with fschedule-insns)
PR debug/56950
	* haifa-sched.c (sched_extend_bb): Ignore DEBUG_INSNs.

From-SVN: r199316
2013-05-24 20:59:59 +00:00
Jason Merrill
9f57f76aae re PR c++/56971 (GCC claims a friend function to be overloaded, but it isn't)
PR c++/56971
	* pt.c (any_template_arguments_need_structural_equality_p): A
	TEMPLATE_TEMPLATE_PARM can require structural type comparison.

From-SVN: r199315
2013-05-24 16:02:07 -04:00
Paolo Carlini
9797bec939 type_traits.h (__is_null_pointer): Add std::nullptr_t overload.
2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/ext/type_traits.h (__is_null_pointer): Add std::nullptr_t
	overload.

	* include/bits/cpp_type_traits.h (__is_fundamental): Remove, unused.

From-SVN: r199313
2013-05-24 18:27:59 +00:00
Nathan Sidwell
5bd93ff63e config.gcc (powerpc-*): Allow native for with-cpu.
2013-05-24  Nathan Sidwell  <nathan@codesourcery.com>
	    Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* config.gcc (powerpc-*): Allow native for with-cpu.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>

From-SVN: r199308
2013-05-24 14:09:55 -04:00
Jakub Jelinek
2e8a9734c0 chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, include unistd.h and sys/syscall.h.
* src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
	include unistd.h and sys/syscall.h.  If _GLIBCXX_COMPATIBILITY_CXX0X,
	don't define system_clock::is_steady, system_clock::now() and
	steady_clock::is_steady.
	(std::chrono::system_clock::now()): If
	_GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, call
	syscall (SYS_clock_gettime, ...) instead of clock_gettime (...).
	(std::chrono::system_clock::now()): Likewise.  Add weak attribute
	if _GLIBCXX_COMPATIBILITY_CXX0X and compatibility-chrono.cc will
	be non-empty.
	* src/Makefile.am (cxx11_sources): Add compatibility-chrono.cc.
	(compatibility-chrono.lo, compatibility-chrono.o): New goals.
	* src/c++11/compatibility-chrono.cc: New file.
	* acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): On linux*, check for
	syscall (SYS_clock_gettime, CLOCK_MONOTONIC, &tp).
	* testsuite/util/testsuite_abi.cc (check_version): Add
	GLIBCXX_3.4.20 version and make it the latest.
	* config/abi/pre/gnu.ver (_ZNSt6chrono12steady_clock3nowEv): Export
	also @@GLIBCXX_3.4.19.  Move all symbols so far added for GCC 4.9 to
	@@GLIBCXX_3.4.20 instead.
	* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
	* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
	Regenerated.
	* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
	Regenerated.
	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
	Regenerated.
	* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
	* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
	* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
	* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
	* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
	* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
	Regenerated.
	* config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
	* config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
	* config.h.in: Regenerated.
	* src/Makefile.in: Regenerated.
	* configure: Regenerated.

From-SVN: r199307
2013-05-24 20:08:42 +02:00
Paolo Carlini
7f5d76fb97 re PR c++/19618 (Do warn if a bit-field exceeds the size of a bool type)
/cp
2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/19618
	* class.c (check_bitfield_decl): Warn for bool and enum bitfields
	with width exceeding the type.

/testsuite
2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/19618
	* g++.dg/expr/bitfield12.C: New.

From-SVN: r199306
2013-05-24 17:37:41 +00:00
Jeff Law
2343af6558 re PR tree-optimization/57124 (254.gap@spec2000 got miscompare after r198413)
PR tree-optimization/57124
	* tree-vrp.c (simplify_cond_using_ranges): Only simplify a
	conversion feeding a condition if the range has an overflow
	if -fstrict-overflow.  Add warnings for when we do make the
	transformation.

	PR tree-optimization/57124
	* gcc.c-torture/execute/pr57124.c: New test.
	* gcc.c-torture/execute/pr57124.x: Set -fno-strict-overflow.

From-SVN: r199305
2013-05-24 11:13:38 -06:00
David Malcolm
dd1c676f75 Fix formatting of ChangeLog entries
From-SVN: r199302
2013-05-24 16:15:23 +00:00
Dehao Chen
3ad695b98d Fix the typo of discriminator.
2013-05-24  Dehao Chen  <dehao@google.com>

	* gcc/tree-cfg.c (locus_discrim_map): Fix the typo.
	(locus_discrim_hasher): Likewise.
	(locus_discrim_hasher::hash): Likewise.
	(locus_discrim_hasher::equal): Likewise.

From-SVN: r199300
2013-05-24 15:52:31 +00:00
Martin Jambor
8233805962 re PR tree-optimization/57294 (ice in remove_described_reference)
2013-05-24  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/57294
	* cgraph.h (ipa_record_stmt_references): Declare.
	* cgraphbuild.c (ipa_record_stmt_references): New function.
	(build_cgraph_edges): Use ipa_record_stmt_references.
	(rebuild_cgraph_edges): Likewise.
	(cgraph_rebuild_references): Likewise.
	* ipa-prop.c (ipa_modify_call_arguments): Discard references
	associated with the old statement and build references from the
	newly built statements.
	* ipa-ref.c (ipa_remove_stmt_references): New function.
	* ipa-ref.h (ipa_remove_stmt_references): Declare.

testsuite/
	* gcc.dg/ipa/pr57294.c: New test.

From-SVN: r199299
2013-05-24 17:35:21 +02:00
Vladimir Makarov
1ccd4874c9 lra-constraints.c (emit_spill_move): Use smaller mode for mem-mem moves.
2013-05-24  Vladimir Makarov  <vmakarov@redhat.com>

        * lra-constraints.c (emit_spill_move): Use smaller mode for
	mem-mem moves.
        (check_and_process_move): Consider mem-reg moves for secondary
	too.
        (curr_insn_transform): Don't lose insns emitted before for
	secondary memory moves.
	(inherit_in_ebb): Mark defined reg.  Add usage only if it is not a
	reg set up in the current insn.

From-SVN: r199298
2013-05-24 15:30:47 +00:00
Chung-Ju Wu
a8db59905a download_prerequisites: Download isl and cloog conditionally.
2013-05-24  Chung-Ju Wu  <jasonwucj@gmail.com>

        * download_prerequisites: Download isl and cloog conditionally.

From-SVN: r199297
2013-05-24 15:23:44 +00:00
Dehao Chen
25e25c732c Change the discriminator assignment algorithm to make it more robust.
2013-05-24  Dehao Chen  <dehao@google.com>

	* gcc/testsuite/gcc.dg/debug/dwarf2/discriminator.c: New Testcase.
	* gcc/tree-cfg.c (locus_descrim_hasher::hash): Change discrminator
	hash function.
	(locus_descrim_hasher::equal): Likewise.
	(build_gimple_cfg): New discrminator assignmnet algorithm
	(make_edges): Likewise.
	(next_discriminator_for_locus): Likewise.
	(same_line_p): Likewise.
	(assign_discriminators): Likewise.
	(make_cond_expr_edges): Likewise.
	(make_gimple_switch_edges): Likewise.
	(make_goto_expr_edges): Likewise.
	(make_gimple_asm_edges): Likewise.

From-SVN: r199295
2013-05-24 15:04:09 +00:00
Ian Bolton
06d50e2171 AArch64 - fix invalid assembler in testcase
From-SVN: r199294
2013-05-24 14:59:20 +00:00
Ian Bolton
50d38551ee AArch64 - allow insv_imm to handle bigger immediates via masking to 16 bits
From-SVN: r199293
2013-05-24 14:54:15 +00:00
Jason Merrill
f746a02923 re PR c++/57391 (ICE compiling AIX math.h caused by PR c++/56930)
PR c++/57391
	* semantics.c (cxx_eval_constant_expression): Handle FMA_EXPR.
	(cxx_eval_trinary_expression): Rename from cxx_eval_vec_perm_expr.

From-SVN: r199292
2013-05-24 10:16:45 -04:00
Richard Biener
aea0101d95 re PR middle-end/57287 (Bogus uninitialized warning with abnormal control flow)
2013-05-24  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/57287
	* tree-ssa-uninit.c (compute_uninit_opnds_pos): Disregard
	all SSA names that occur in abnormal PHIs.

	* gcc.dg/pr57287.c: New testcase.

From-SVN: r199289
2013-05-24 12:44:58 +00:00
Paolo Carlini
99b8202a11 re PR c++/26572 (Invalid local class definition not diagnosed)
2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/26572
	* g++.dg/template/error51.C: New.

2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/25503
	* g++.dg/template/bitfield2.C: New.

From-SVN: r199288
2013-05-24 10:05:22 +00:00
Eric Botcazou
df09b22cf9 gigi.h (gnat_init_gcc_fp): Declare.
* gcc-interface/gigi.h (gnat_init_gcc_fp): Declare.
	* gcc-interface/trans.c (gigi): Call it.
	* gcc-interface/misc.c (gnat_init_gcc_fp): New function.

From-SVN: r199287
2013-05-24 09:40:28 +00:00
Eric Botcazou
0e24192cc9 gigi.h (enum inline_status_t): New type.
* gcc-interface/gigi.h (enum inline_status_t): New type.
	(create_subprog_decl): Adjust prototype.
	* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Adjust
	calls to create_subprog_decl.
	(get_minimal_subprog_decl): Likewise.
	* gcc-interface/trans.c (gigi): Likewise.
	(build_raise_check): Likewise.
	(establish_gnat_vms_condition_handler): Likewise.
	(Compilation_Unit_to_gnu): Likewise.
	(gnat_to_gnu): Likewise.
	* gcc-interface/utils.c (create_subprog_decl): Change inline_flag
	parameter to inline_status and implement for suppressed inlining.

From-SVN: r199286
2013-05-24 09:31:33 +00:00
Rainer Orth
828012a527 Use -z ignore instead of --as-needed on Solaris
* acinclude.m4 (libgfor_cv_have_as_needed): Check for -z ignore, too.
	* configure: Regenerate.

From-SVN: r199285
2013-05-24 09:23:33 +00:00
Kirill Yukhin
905b92cb01 re PR tree-optimization/57385 ([tree-ssa] Possible segfault in fully_constant_vn_reference_p)
PR tree-ssa/57385
	* gcc.dg/tree-ssa/pr57385.c: New test.

From-SVN: r199283
2013-05-24 09:11:56 +00:00
Alexander Ivchenko
634e03d3b8 re PR tree-optimization/57385 ([tree-ssa] Possible segfault in fully_constant_vn_reference_p)
gcc/ChangeLog
        PR tree-ssa/57385
        * tree-ssa-sccvn.c (fully_constant_vn_reference_p): Check
        that index is not negative.

gcc/testsuite/ChangeLog
        PR tree-ssa/57385
        * gcc.dg/tree-ssa/pr57385.c: New test.

From-SVN: r199282
2013-05-24 09:08:45 +00:00
Eric Botcazou
633a3f2aea ada-tree.h (LOOP_STMT_NO_UNROLL): New define.
* gcc-interface/ada-tree.h (LOOP_STMT_NO_UNROLL): New define.
	(LOOP_STMT_UNROLL): Likewise.
	(LOOP_STMT_NO_VECTOR): Likewise.
	(LOOP_STMT_VECTOR): Likewise.
	* gcc-interface/trans.c (struct loop_info_d): Replace label field
	with stmt field.
	(Pragma_to_gnu) <Pragma_Loop_Optimize>: New case.
	(Loop_Statement_to_gnu): Save the loop statement onto the stack
	instead of the label.
	(gnat_to_gnu) <N_Exit_Statement>: Retrieve the loop label.

From-SVN: r199281
2013-05-24 08:52:35 +00:00
Eric Botcazou
f2423384e6 trans.c: Include diagnostic.h and opts.h.
* gcc-interface/trans.c: Include diagnostic.h and opts.h.
	(Pragma_to_gnu) <Pragma_Warnings>: New case.

From-SVN: r199280
2013-05-24 08:44:14 +00:00
Eric Botcazou
908ba941c3 decl.c (gnat_to_gnu_entity): Constify a handful of local variables.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Constify
	a handful of local variables.
	For a derived untagged type that renames discriminants, change the type
	of the stored discriminants to a subtype with the bounds of the type
	of the visible discriminants.
	(build_subst_list): Rename local variable.

From-SVN: r199279
2013-05-24 08:27:55 +00:00
Eric Botcazou
b17c024fa9 re PR tree-optimization/55177 (missed optimizations with __builtin_bswap)
PR rtl-optimization/55177
	* simplify-rtx.c (simplify_unary_operation_1) <NOT>: Deal with BSWAP.
	(simplify_byte_swapping_operation): New.
	(simplify_binary_operation_1): Call it for AND, IOR and XOR.
	(simplify_relational_operation_1): Deal with BSWAP.

From-SVN: r199278
2013-05-24 06:46:11 +00:00