Commit Graph

87989 Commits

Author SHA1 Message Date
Richard Sandiford fa21a761a6 mips.c (mips_valid_offset_p): New function.
gcc/
	* config/mips/mips.c (mips_valid_offset_p): New function.
	(mips_valid_lo_sum_p): Likewise.
	(mips_classify_address): Use them.
	(mips_force_address): New function.
	(mips_legitimize_address): Use it.
	* config/mips/mips.md (MOVE128): New mode iterator.
	(movtf): Require TARGET_64BIT.  Remove empty strings.
	(*movtf_internal): Rename to...
	(*movtf): ...this and require !TARGET_MIPS16.  Use "m" instead
	of "R" and use {,fp}{load,store} attributes instead of "multi".
	Use a separate define_split.
	(*movtf_mips16): New pattern.

gcc/testsuite/
	* gcc.target/mips/fpr-moves-7.c: New test.
	* gcc.target/mips/fpr-moves-8.c: New test.

From-SVN: r136253
2008-06-01 13:01:23 +00:00
Richard Sandiford 2f7e2abbd1 mips-protos.h (mips_expand_before_return): Declare.
gcc/
	* config/mips/mips-protos.h (mips_expand_before_return): Declare.
	* config/mips/mips.c (mips_expand_before_return): New function.
	(mips_expand_epilogue): Call it.
	* config/mips/mips.md (return): Turn into a define_expand.
	(*return): New insn.

From-SVN: r136252
2008-06-01 10:01:51 +00:00
Richard Sandiford c41c1387d3 rtl.h (emit_clobber, [...]): Declare.
gcc/
	* rtl.h (emit_clobber, gen_clobber, emit_use, gen_use): Declare.
	* emit-rtl.c (emit_clobber, gen_clobber, emit_use, gen_use): New
	functions.  Do not emit uses and clobbers of CONCATs; individually
	use and clobber their operands.
	* builtins.c (expand_builtin_setjmp_receiver): Use emit_clobber,
	gen_clobber, emit_use and gen_use.
	(expand_builtin_longjmp, expand_builtin_nonlocal_goto): Likewise.
	(expand_builtin_return): Likewise.
	* cfgbuild.c (count_basic_blocks): Likewise.
	* cfgrtl.c (rtl_flow_call_edges_add): Likewise.
	* explow.c (emit_stack_restore): Likewise.
	* expmed.c (extract_bit_field_1): Likewise.
	* expr.c (convert_move, emit_move_complex_parts): Likewise.
	(emit_move_multi_word, store_constructor): Likewise.
	* function.c (do_clobber_return_reg, do_use_return_reg): Likewise.
	(thread_prologue_and_epilogue_insns): Likewise.
	* lower-subreg.c (resolve_simple_move): Likewise.
	* optabs.c (widen_operand, expand_binop): Likewise.
	(expand_doubleword_bswap, emit_no_conflict_block): Likewise.
	* reload.c (find_reloads): Likewise.
	* reload1.c (eliminate_regs_in_insn): Likewise.
	* stmt.c (expand_nl_goto_receiver): Likewise.
	* config/alpha/alpha.md (builtin_longjmp): Likewise.
	* config/arc/arc.md (*movdi_insn, *movdf_insn): Likewise.
	* config/arm/arm.c (arm_load_pic_register): Likewise.
	(thumb1_expand_epilogue, thumb_set_return_address): Likewise.
	* config/arm/arm.md (untyped_return): Likewise.
	* config/arm/linux-elf.h (PROFILE_HOOK): Likewise.
	* config/avr/avr.c (expand_prologue): Likewise.
	* config/bfin/bfin.c (do_unlink): Likewise.
	* config/bfin/bfin.md (<optab>di3, adddi3, subdi3): Likewise.
	* config/cris/cris.c (cris_expand_prologue): Likewise.
	* config/darwin.c (machopic_indirect_data_reference): Likewise.
	(machopic_legitimize_pic_address): Likewise.
	* config/frv/frv.c (frv_frame_access, frv_expand_epilogue): Likewise.
	(frv_ifcvt_modify_insn, frv_expand_mdpackh_builtin): Likewise.
	* config/i386/i386.c (ix86_expand_vector_move_misalign): Likewise.
	(ix86_expand_convert_uns_didf_sse): Likewise.
	(ix86_expand_vector_init_general): Likewise.
	* config/ia64/ia64.md (eh_epilogue): Likewise.
	* config/iq2000/iq2000.c (iq2000_expand_epilogue): Likewise.
	* config/m32c/m32c.c (m32c_emit_eh_epilogue): Likewise.
	* config/m32r/m32r.c (m32r_reload_lr): Likewise.
	(config/iq2000/iq2000.c): Likewise.
	* config/mips/mips.md (fixuns_truncdfsi2): Likewise.
	(fixuns_truncdfdi2, fixuns_truncsfsi2, fixuns_truncsfdi2): Likewise.
	(builtin_longjmp): Likewise.
	* config/mn10300/mn10300.md (call, call_value): Likewise.
	* config/pa/pa.md (nonlocal_goto, nonlocal_longjmp): Likewise.
	* config/pdp11/pdp11.md (abshi2): Likewise.
	* config/rs6000/rs6000.c (rs6000_emit_move): Likewise.
	* config/s390/s390.c (s390_emit_prologue): Likewise.
	* config/s390/s390.md (movmem_long, setmem_long): Likewise.
	(cmpmem_long, extendsidi2, zero_extendsidi2, udivmoddi4): Likewise.
	(builtin_setjmp_receiver, restore_stack_nonlocal): Likewise.
	* config/sh/sh.c (prepare_move_operands): Likewise.
	(output_stack_adjust, sh_expand_epilogue): Likewise.
	(sh_set_return_address, sh_expand_t_scc): Likewise.
	* config/sparc/sparc.c (load_pic_register): Likewise.
	* config/sparc/sparc.md (untyped_return, nonlocal_goto): Likewise.
	* config/spu/spu.c (spu_expand_epilogue): Likewise.
	* config/v850/v850.c (expand_epilogue): Likewise.

From-SVN: r136251
2008-06-01 09:47:28 +00:00
Jerry DeLisle d2d586f929 intrinsic.texi: Revert wrong commit.
2008-05-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	* intrinsic.texi: Revert wrong commit.

From-SVN: r136249
2008-06-01 00:30:37 +00:00
GCC Administrator e6a29ed8b1 Daily bump.
From-SVN: r136247
2008-06-01 00:17:13 +00:00
Paolo Carlini f8af8c09ec re PR libstdc++/36338 (heap_sort effectively hangs with -D_GLIBCXX_DEBUG)
2008-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
	    Chris Jefferson  <chris@bubblescope.net>

	PR libstdc++/36338
	* include/bits/stl_heap.h (sort_heap): Use __pop_heap directly.
	(pop_heap): Slightly tweak.

Co-Authored-By: Chris Jefferson <chris@bubblescope.net>

From-SVN: r136242
2008-05-31 23:01:09 +00:00
Steven G. Kargl 7306494a7e arith.c (gfc_arith_init_1): Remove now unused r and c variables.
2008-05-31  Steven G. Kargl  <kargls@comcast.net>

	* arith.c (gfc_arith_init_1): Remove now unused r and c variables.
	Cleanup numerical inquiry function initialization.
	(gfc_arith_done_1): Replace multiple mpfr_clear() invocations with
	a single mpfr_clears().
	(gfc_check_real_range): Re-arrange logic to eliminate multiple
	unnecessary branching and assignments.
	(gfc_arith_times): Use mpfr_clears() in preference to multiple
	mpfr_clear().
	(gfc_arith_divide): Ditto.
	(complex_reciprocal): Eliminate now unused variables a, re, im.
	Cleanup the mpfr abuse.  Use mpfr_clears() in preference to
	multiple mpfr_clear().
	(complex_pow): Fix comment whitespace.  Use mpfr_clears() in
	preference to multiple mpfr_clear().
	* simplify.c (gfc_simplify_and): Remove blank line.
	(gfc_simplify_atan2): Move error checking earlier to eliminate
	a now unnecessay gfc_free_expr().
	(gfc_simplify_bessel_j0): Remove unnecessary gfc_set_model_kind().
	(gfc_simplify_bessel_j1): Ditto.
	(gfc_simplify_bessel_jn): Ditto.
 	(gfc_simplify_bessel_y0): Ditto.
	(gfc_simplify_bessel_y1): Ditto.
	(gfc_simplify_bessel_yn): Ditto. 
	(only_convert_cmplx_boz): Eliminate unnecessary duplicate code, and
	combine nested if statement rational expressions.
	(gfc_simplify_cos): Use mpfr_clears() in preference to multiple
	mpfr_clear().
	(gfc_simplify_exp): Ditto.
	(gfc_simplify_fraction): Move gfc_set_model_kind() to after the
	special case of 0.  Use mpfr_clears() in preference to multiple
	mpfr_clear().
	(gfc_simplify_gamma): Eliminate unnecessary gfc_set_model_kind().
 	(gfc_simplify_lgamma): Ditto.
	(gfc_simplify_log10): Ditto.
	(gfc_simplify_log): Move gfc_set_model_kind () inside switch
	statement. Use mpfr_clears() in preference to multiple mpfr_clear().
	(gfc_simplify_mod):  Eliminate now unused variables quot, iquot,
	and term.  Simplify the mpfr magic.
	(gfc_simplify_modulo): Ditto.
	(gfc_simplify_nearest): Eliminate unnecessary gfc_set_model_kind().
	(gfc_simplify_scale): Use mpfr_clears() in preference to multiple
	mpfr_clear().
	(gfc_simplify_sin): Ditto
	(gfc_simplify_sqrt): Ditto
	(gfc_simplify_set_exponent):  Move gfc_set_model_kind() to after the
	special case of 0.  Use mpfr_clears() in preference to multiple
	mpfr_clear().

From-SVN: r136239
2008-05-31 19:19:48 +00:00
Anatoly Sokolov 794cb45e0b avr.md (UNSPECV_WRITE_SP_IRQ_ON): New constants.
* config/avr/avr.md (UNSPECV_WRITE_SP_IRQ_ON): New constants.
	(UNSPECV_WRITE_SP_IRQ_OFF): (Ditto.).
	(movhi_sp_r_irq_off, movhi_sp_r_irq_on): New insn.
	* config/avr/avr.c (expand_prologue, expand_epilogue): Use 
	movhi_sp_r_irq_off and movhi_sp_r_irq_on insns for writing to the 
	stack pointer register.
	(output_movhi): Remove code for interrupt specific writing to the 
	stack pointer register.

From-SVN: r136238
2008-05-31 19:01:16 +04:00
Richard Guenther 39f8a3b00c re PR tree-optimization/34244 (VRP/SCEV miscompiles Firefox)
2008-05-31  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/34244
	* fold-const.c (tree_expr_nonnegative_warnv_p): Do not ask VRP.
	(tree_expr_nonzero_warnv_p): Likewise.
	* tree-vrp.c (vrp_expr_computes_nonnegative): Call
	ssa_name_nonnegative_p.
	(vrp_expr_computes_nonzero): Call ssa_name_nonzero_p.
	(extract_range_from_unary_expr): Use vrp_expr_computes_nonzero,
	not tree_expr_nonzero_warnv_p.

	PR tree-optimization/36262
	Revert
	2007-11-29  Zdenek Dvorak  <ook@ucw.cz>

        PR tree-optimization/34244
        * tree-vrp.c (adjust_range_with_scev): Clear scev cache.
        (record_numbers_of_iterations): New function.
        (execute_vrp): Cache the numbers of iterations of loops.
        * tree-scalar-evolution.c (scev_reset_except_niters):
        New function.
        (scev_reset): Use scev_reset_except_niters.
        * tree-scalar-evolution.h (scev_reset_except_niters): Declare.

From-SVN: r136237
2008-05-31 13:01:10 +00:00
Bernd Schmidt 2643f14e44 bfin.h (TARGET_CPU_CPP_BUILTINS): Define __WORKAROUND_RETS when appropriate.
gcc/
	* config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define
	__WORKAROUND_RETS when appropriate.

gcc/testsuite/
	* gcc.target/bfin/mcpu-default.c: Adjust for recent changes: default
	CPU has all workarounds, and no longer explicitly sets bf532 as CPU
	type.

	* gcc.target/bfin/mcpu-bf531.c: Adjust for WORKAROUND_RETS.
	* gcc.target/bfin/mcpu-bf532.c: Likewise.
	* gcc.target/bfin/mcpu-bf533.c: Likewise.
	* gcc.target/bfin/mcpu-bf534.c: Likewise.
	* gcc.target/bfin/mcpu-bf536.c: Likewise.
	* gcc.target/bfin/mcpu-bf537.c: Likewise.
	* gcc.target/bfin/mcpu-bf548.c: Likewise.
	* gcc.target/bfin/mcpu-bf549.c: Likewise.
	* gcc.target/bfin/mcpu-bf561.c: Likewise.
	* gcc.target/bfin/mcpu-bf523.c: Likewise.
	* gcc.target/bfin/mcpu-bf524.c: Likewise.
	* gcc.target/bfin/mcpu-bf526.c: Likewise.
	* gcc.target/bfin/mcpu-bf522.c: Likewise.
	* gcc.target/bfin/mcpu-bf525.c: Likewise.
	* gcc.target/bfin/mcpu-bf527.c: Likewise.
	* gcc.target/bfin/mcpu-bf538.c: Likewise.
	* gcc.target/bfin/mcpu-bf539.c: Likewise.
	* gcc.target/bfin/mcpu-bf542.c: Likewise.
	* gcc.target/bfin/mcpu-bf544.c: Likewise.
	* gcc.target/bfin/mcpu-default.c: Likewise.
	* gcc.target/bfin/workarounds-any.c: Likewise.
	* gcc.target/bfin/workarounds-none.c: Likewise.
	* gcc.target/bfin/workarounds-1.c: Likewise.
	* gcc.target/bfin/workarounds-2.c: Likewise.
	* gcc.target/bfin/workarounds-3.c: Likewise.
	* gcc.target/bfin/workarounds-4.c: Likewise.

From-SVN: r136236
2008-05-31 10:09:51 +00:00
Uros Bizjak ca3a21650c i386.md (*fop_<mode>_comm_mixed): Macroize from *fop_sf_comm_mixed and *fop_df_comm_mixed insn patterns using...
* config/i386/i386.md (*fop_<mode>_comm_mixed): Macroize from
	*fop_sf_comm_mixed and *fop_df_comm_mixed insn patterns using MODEF
	mode iterator.
	(*fop_<mode>_comm_sse): Macroize from *fop_sf_comm_sse and
	*fop_df_comm_sse insn patterns using MODEF mode iterator.
	(*fop_<mode>_comm_i387): Macroize from *fop_sf_comm_i387 and
	*fop_df_comm_i387 insn patterns using MODEF mode iterator.
	(*fop_<mode>_1_mixed): Macroize from *fop_sf_1_mixed and
	*fop_df_1_mixed insn patterns using MODEF mode iterator.
	(*fop_<mode>_1_sse): Macroize from *fop_sf_1_sse and
	*fop_df_1_sse insn patterns using MODEF mode iterator.
	(*fop_<mode>_1_i387): Macroize from *fop_sf_1_i387 and
	*fop_df_1_i387 insn patterns using MODEF mode iterator.
	(*fop_<MODEF:mode>_2_i387): Macroize from *fop_sf_2<mode>_i387 and
	*fop_df_2<mode>_i387 insn patterns using MODEF mode iterator.
	(*fop_<MODEF:mode>_3_i387): Macroize from *fop_sf_3<mode>_i387 and
	*fop_df_3<mode>_i387 insn patterns using MODEF mode iterator.
	(*fop_xf_2_i387): Rename from *fop_xf_2<mode>_i387.
	(*fop_xf_3_i387): Rename from *fop_xf_3<mode>_i387.
	(*fop_xf_4_i387): Use <MODE> for mode attribute.
	(*fop_xf_5_i387): Ditto.
	(*fop_xf_6_i387): Ditto.

From-SVN: r136235
2008-05-31 11:48:21 +02:00
GCC Administrator 7841ba598b Daily bump.
From-SVN: r136229
2008-05-31 00:17:13 +00:00
Richard Guenther acdfeac3e1 builtins.c (build_string_literal): Avoid generating a non-gimple_val result.
2008-05-30  Richard Guenther  <rguenther@suse.de>

	* builtins.c (build_string_literal): Avoid generating
	a non-gimple_val result.

From-SVN: r136222
2008-05-30 19:58:30 +00:00
DJ Delorie 97c3860d80 exec-tool.in: Use an environment variable (private) instead of a file (shared) as a semaphore...
* exec-tool.in: Use an environment variable (private) instead of a
file (shared) as a semaphore, so as to not break parallel builds.

From-SVN: r136221
2008-05-30 15:19:45 -04:00
Steven Bosscher 856905c263 optabs.c (maybe_encapsulate_block): Remove.
2008-05-30  Steven Bosscher  <stevenb.gcc@gmail.com>

	* optabs.c (maybe_encapsulate_block): Remove.
	(emit_libcall_block): Adjust accordingly.
	* optabs.h (maybe_encapsulate_block): Remove prototype.

	* config/rs6000/rs6000.c (rs6000_legitimize_tls_address):
	Don't use maybe_encapsulate_block.

From-SVN: r136217
2008-05-30 18:28:48 +00:00
Steven Bosscher 0cdc04e8d5 rs6000.c (rs6000_legitimize_address, [...]): Make sure an rtx is a SYMBOL_REF before calling get_pool_constant.
2008-05-30  Steven Bosscher  <stevenb.gcc@gmail.com>

        * config/rs6000/rs6000.c (rs6000_legitimize_address,
        rs6000_legitimize_reload_address, rs6000_emit_move): Make sure an
        rtx is a SYMBOL_REF before calling get_pool_constant.

From-SVN: r136216
2008-05-30 14:21:31 -04:00
Julian Brown 3f6383d38b configure.ac (arm*-*-linux-gnueabi): Don't disable building of libobjc for ARM EABI Linux.
* configure.ac (arm*-*-linux-gnueabi): Don't disable building
    of libobjc for ARM EABI Linux.
    * configure: Regenerate.

    libobjc/
    * exception.c (__objc_exception_class): Initialise as constant
    array for ARM EABI. Change macro to static const for non-ARM EABI.
    (ObjcException): Add note about structure layout. Remove landingPad
    and handlerSwitchValue for ARM EABI.
    (get_ttype_entry): Add __ARM_EABI_UNWINDER__ version
    of function.
    (CONTINUE_UNWINDING): Define for ARM EABI/otherwise cases.
    (PERSONALITY_FUNCTION): Use ARM EABI-specific arguments, and add
    ARM EABI unwinding support.
    (objc_exception_throw): Use memcpy to initialise exception class.

From-SVN: r136215
2008-05-30 18:21:31 +00:00
Tom Tromey d750887f5f re PR preprocessor/36320 (Required diagnosis of syntax error missed)
gcc/testsuite
	PR preprocessor/36320:
	* gcc.dg/cpp/pr36320.c: New file.
libcpp
	PR preprocessor/36320:
	* internal.h (_cpp_parse_expr): Update.
	* expr.c (_cpp_parse_expr): Add 'is_if' argument.  Update error
	messages.
	* directives.c (do_if): Update.
	(do_elif): Require expression if processing group.

From-SVN: r136209
2008-05-30 14:25:09 +00:00
Eric Botcazou bfab40f8e5 * fold-const.c (fold_unary) <CASE_CONVERT>: Add ??? comment.
From-SVN: r136200
2008-05-30 07:35:17 +00:00
Danny Smith c100de59eb cpplib.h (struct cpp_dir): Add new field, canonical_name.
libcpp/ChangeLog
	* include/cpplib.h (struct cpp_dir): Add new field, canonical_name.

gcc/ChangeLog

	* incpath.c: Use HOST_LACKS_INODE_NUMBERS conditional
	rather than OS names to choose INO_T_EQ definition.
	(DIRS_EQ) [!INO_T_EQ]: Don't worry about case in comparison.
	(add_path) [!INO_T_EQ]: Use lrealpath to fill canonical_name field.

From-SVN: r136196
2008-05-30 00:57:56 +00:00
GCC Administrator 6551374ace Daily bump.
From-SVN: r136194
2008-05-30 00:17:13 +00:00
Daniel Franke c776a6d0e4 re PR target/36348 (f951 link failure on i686-apple-darwin9)
gcc:
2008-05-29  Daniel Franke  <franke.daniel@gmail.com>

        PR target/36348
        * config/darwin-f.c: New.
        * config/t-darwin: Added rule to build darwin-f.o.
        * config.gcc: Defined new variable, fortran_target_objs.
        (*-*-darwin*): Set fortran_target_objs.
        * Makefile.in: Defined new variable FORTRAN_TARGET_OBJS.
        * configure.ac: Substitute fortran_target_objs, set
        FORTRAN_TARGET_OBJS.
        * configure: Regenerated.

gcc/fortran:
2008-05-29  Daniel Franke  <franke.daniel@gmail.com>

        PR target/36348
        * Make-lang.in (F95_OBJS): Added dependency on FORTRAN_TARGET_OBJS.

From-SVN: r136178
2008-05-29 14:21:35 -04:00
Paolo Carlini aecaad790a re PR c++/35243 (ICE with invalid initializer list in variadic template)
/cp
2008-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

        PR c++/35243
        * pt.c (tsubst_initializer_list): Consistently check the tree
        returned by tsubst_pack_expansion for error_mark_node.

/testsuite
2008-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

        PR c++/35243
        * g++.dg/cpp0x/vt-35243.C: New.

From-SVN: r136174
2008-05-29 16:44:29 +00:00
Francois-Xavier Coudert f2f5443c88 scanner.c (load_line): Add first_char argument.
* scanner.c (load_line): Add first_char argument. Don't call ungetc.
	(gfc_read_orig_filename): Adjust call to load_line. Don't call
	ungetc.
	(load_file): Adjust call to load_line.

From-SVN: r136171
2008-05-29 15:24:46 +00:00
H.J. Lu a20007a490 re PR middle-end/35771 (Call expander ignores type alignment)
gcc/

2008-05-29  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/35771
	* config/i386/i386.c (ix86_function_arg_boundary): Convert to
	canonical type if needed.

gcc/testsuite/

2008-05-29  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/35771
	* gcc.dg/torture/pr35771.h: New.
	* gcc.dg/torture/pr35771-1.c: Likewise.
	* gcc.dg/torture/pr35771-2.c: Likewise.
	* gcc.dg/torture/pr35771-3.c: Likewise.

From-SVN: r136159
2008-05-29 05:35:04 -07:00
Paolo Carlini 37f449aa3b bitset (bitset(const char*)): Implement DR 778 in debug-mode too.
2008-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/debug/bitset (bitset(const char*)): Implement DR 778
	in debug-mode too.

	* include/bits/cpp_type_traits.h (__is_integer): In C++0x mode
	deal with char16_t and char32_t.

From-SVN: r136158
2008-05-29 11:42:08 +00:00
Eric Botcazou 4efa7ef955 tree-nested.c (check_for_nested_with_variably_modified): Fix typo.
* tree-nested.c (check_for_nested_with_variably_modified): Fix typo.

From-SVN: r136154
2008-05-29 11:33:17 +00:00
Richard Guenther 2f571334ff re PR tree-optimization/36343 (Wrong code due to bad TBAA pruning of points-to-sets and use in call clobbering)
2008-05-29  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/36343
	PR tree-optimization/36346
	PR tree-optimization/36347
	* tree-flow.h (clobber_what_p_points_to): Declare.
	* tree-ssa-structalias.c (set_uids_in_ptset): Whether the
	pointed-to variable is dereferenced is irrelevant to whether
	the pointer can access the pointed-to variable.
	(clobber_what_p_points_to): New function.
	* tree-ssa-alias.c (set_initial_properties): Use it.
	* tree-ssa.c (verify_flow_sensitive_alias_info): Adjust
	call clobber check for NMTs.

	* gcc.c-torture/execute/pr36343.c: New testcase.

From-SVN: r136152
2008-05-29 10:31:58 +00:00
Arnaud Charlet b3d5f74124 * gnat.dg/abstract1.ad[sb]: New test.
From-SVN: r136151
2008-05-29 10:57:36 +02:00
Arnaud Charlet fb8368fdcc Resync.
From-SVN: r136150
2008-05-29 10:56:41 +02:00
Arnaud Charlet 686b775265 re PR ada/864 (--program-suffix is ignored (for ada))
PR ada/864
	* osint.ads, osint.adb (Program_Name): New parameter "Prog" to
	allow recognition of program suffix in addition to prefix.
	
	* gnatchop.adb (Locate_Executable): Add support for prefix.
	
	* make.adb, gnatcmd.adb, gnatlink.adb, prj-makr.adb,
	mlib-utl.adb: Adjust calls to Program_Name.

From-SVN: r136149
2008-05-29 10:56:01 +02:00
Ed Schonberg fe63b1b12c sem_ch6.adb (Analyze_Subprogram_Specification): if the return type is abstract...
2008-05-29  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Analyze_Subprogram_Specification): if the return type
	is abstract, do not apply abstractness check on subprogram if this is
	a renaming declaration.

From-SVN: r136148
2008-05-29 10:55:46 +02:00
Arnaud Charlet 8682d22c80 * sem_eval.adb: Minor reformatting
From-SVN: r136147
2008-05-29 10:55:35 +02:00
Arnaud Charlet fff3f472d5 Resync.
From-SVN: r136145
2008-05-29 10:07:25 +02:00
Robert Dewar b49365b2a9 sem_eval.adb (Is_Same_Value): Take care of several more cases
2008-05-29  Robert Dewar  <dewar@adacore.com>

	* sem_eval.adb (Is_Same_Value): Take care of several more cases

From-SVN: r136144
2008-05-29 10:06:40 +02:00
Javier Miranda 26ff8edeba 2008-05-29 Javier Miranda <miranda@adacore.com>
* sem_util.adb:
	(Abstract_Interface_List): Add missing support for full type-declaration
	associated with synchronized types.

From-SVN: r136143
2008-05-29 10:06:31 +02:00
Arnaud Charlet 623fba708e * sinput-p.ads: Minor reformatting
From-SVN: r136142
2008-05-29 10:06:21 +02:00
Arnaud Charlet cdbf04c041 * sem_res.adb: Minor reformatting
From-SVN: r136141
2008-05-29 10:06:12 +02:00
Arnaud Charlet a168f51913 * sem_prag.adb: Minor reformatting
From-SVN: r136140
2008-05-29 10:06:03 +02:00
Arnaud Charlet 10619438e6 * sem_ch3.adb: Minor reformatting
From-SVN: r136139
2008-05-29 10:05:54 +02:00
GCC Administrator 2c05a837e5 Daily bump.
From-SVN: r136135
2008-05-29 00:17:14 +00:00
Seongbae Park 68bb68ca00 value-prof.c (tree_ic_transform): Use HOST_WIDEST_INT_PRINT_DEC for printing gcov_type.
2008-05-28  Seongbae Park  <seongbae.park@gmail.com>
	
	* value-prof.c (tree_ic_transform): Use HOST_WIDEST_INT_PRINT_DEC
	for printing gcov_type.

From-SVN: r136131
2008-05-28 22:03:14 +00:00
Janus Weil e68954309d re PR fortran/36325 (specific or generic INTERFACE implies the EXTERNAL attribute)
2008-05-28  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/36325
	PR fortran/35830
	* interface.c (gfc_procedure_use): Enable argument checking for
	external procedures with explicit interface.
	* symbol.c (check_conflict): Fix conflict checking for externals.
	(copy_formal_args): Fix handling of arrays.
	* resolve.c (resolve_specific_f0, resolve_specific_s0): Fix handling
	of intrinsics.
	* parse.c (parse_interface): Non-abstract INTERFACE statement implies
	EXTERNAL attribute.


2008-05-28  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/36325
	PR fortran/35830
	* gfortran.dg/interface_23.f90: New.
	* gfortran.dg/gomp/reduction3.f90: Fixed invalid code.
	* gfortran.dg/proc_decl_12.f90: New:
	* gfortran.dg/external_procedures_1.f90: Fixed error message.

From-SVN: r136130
2008-05-28 23:27:56 +02:00
Francois-Xavier Coudert 691da334bc re PR fortran/36319 (Segfault with wide characters in DATA)
PR fortran/36319

	* intrinsic.c (gfc_convert_chartype): Don't mark conversion
	function as pure.
	* trans-array.c (gfc_trans_array_ctor_element): Divide element
	size by the size of one character to obtain length.
	* iresolve.c (gfc_resolve_cshift): Call the _char4 variant when
	appropriate.
	(gfc_resolve_eoshift): Likewise.
	* trans-intrinsic.c (gfc_conv_intrinsic_ctime): Minor beautification.
	(gfc_conv_intrinsic_fdate): Minor beautification.
	(gfc_conv_intrinsic_ttynam): Minor beautification.
	(gfc_conv_intrinsic_minmax_char): Allow all character kinds.
	(size_of_string_in_bytes): New function.
	(gfc_conv_intrinsic_size): Call size_of_string_in_bytes for
	character expressions.
	(gfc_conv_intrinsic_sizeof): Likewise.
	(gfc_conv_intrinsic_array_transfer): Likewise.
	(gfc_conv_intrinsic_trim): Allow all character kinds. Minor
	beautification.
	(gfc_conv_intrinsic_repeat): Fix comment typo.
	* simplify.c (gfc_convert_char_constant): Take care of conversion
	of array constructors.

	* intrinsics/string_intrinsics_inc.c (string_index): Return
	correct value for zero-length substring.
	* intrinsics/cshift0.c: Add _char4 variant.
	* intrinsics/eoshift0.c (eoshift0): Allow filler to be a pattern
	wider than a single byte. Add _char4 variant and use above
	functionality.
	* intrinsics/eoshift2.c (eoshift2): Likewise.
	* m4/eoshift1.m4: Likewise.
	* m4/eoshift3.m4: Likewise.
	* m4/cshift1.m4: Add _char4 variants.
	* gfortran.map (GFORTRAN_1.1): Add _gfortran_cshift0_1_char4,
	_gfortran_cshift0_2_char4, _gfortran_cshift0_4_char4,
	_gfortran_cshift0_8_char4, _gfortran_cshift1_16_char4,
	_gfortran_cshift1_4_char4, _gfortran_cshift1_8_char4,
	_gfortran_eoshift0_1_char4, _gfortran_eoshift0_2_char4,
	_gfortran_eoshift0_4_char4, _gfortran_eoshift0_8_char4,
	_gfortran_eoshift1_16_char4, _gfortran_eoshift1_4_char4,
	_gfortran_eoshift1_8_char4, _gfortran_eoshift2_1_char4,
	_gfortran_eoshift2_2_char4, _gfortran_eoshift2_4_char4,
	_gfortran_eoshift2_8_char4, _gfortran_eoshift3_16_char4,
	_gfortran_eoshift3_4_char4 and _gfortran_eoshift3_8_char4.
	* generated/eoshift3_4.c: Regenerate.
	* generated/eoshift1_8.c: Regenerate.
	* generated/eoshift1_16.c: Regenerate.
	* generated/cshift1_4.c: Regenerate.
	* generated/eoshift1_4.c: Regenerate.
	* generated/eoshift3_8.c: Regenerate.
	* generated/eoshift3_16.c: Regenerate.
	* generated/cshift1_8.c: Regenerate.
	* generated/cshift1_16.c: Regenerate.

	* gfortran.dg/widechar_5.f90: New file.
	* gfortran.dg/widechar_6.f90: New file.
	* gfortran.dg/widechar_7.f90: New file.
	* gfortran.dg/widechar_intrinsics_5.f90: Uncomment the lines
	testing the SPREAD intrinsic.
	* gfortran.dg/widechar_intrinsics_6.f90: New file.
	* gfortran.dg/widechar_intrinsics_7.f90: New file.
	* gfortran.dg/widechar_intrinsics_8.f90: New file.
	* gfortran.dg/widechar_intrinsics_9.f90: New file.
	* gfortran.dg/widechar_intrinsics_10.f90: New file.

From-SVN: r136129
2008-05-28 21:11:39 +00:00
Seongbae Park b608a1bc71 tree-ssa-propagate.c (set_rhs): Preserve the histogram and the eh region information.
2008-05-28  Seongbae Park  <seongbae.park@gmail.com>

	* tree-ssa-propagate.c (set_rhs): Preserve the histogram
	and the eh region information.
	* value-prof.c (gimple_move_stmt_histograms): New function.
	* value-prof.h (gimple_move_stmt_histograms): New function declaration.

From-SVN: r136124
2008-05-28 20:15:10 +00:00
Andreas Tobler 77da4248a9 pa.md: Remove extern frame_pointer_needed declaration.
2008-05-28  Andreas Tobler  <a.tobler@schweiz.org>

	* config/pa/pa.md: Remove extern frame_pointer_needed declaration.

From-SVN: r136121
2008-05-28 20:56:56 +02:00
Seongbae Park 3dfb6f5963 value-prof.c (tree_ic_transform): Print counts.
gcc/ChangeLog:
2008-05-28  Seongbae Park <seongbae.park@gmail.com>

	* value-prof.c (tree_ic_transform): Print counts.
	* tree-profile.c (tree_gen_ic_func_profiler):
	Clear __gcov_indreict_call_callee variable
	to avoid misattribution of the profile.

gcc/testsuite/ChangeLog:
2008-05-28  Seongbae Park <seongbae.park@gmail.com>

	* gcc.dg/tree-prof/ic-misattribution-1.c: New test.
	* gcc.dg/tree-prof/ic-misattribution-1a.c: New test.
	* lib/profopt.exp (profopt-get-options): Support
	dg-additional-sources.
	(profopt-execute): Handle additional sources.

From-SVN: r136118
2008-05-28 18:14:32 +00:00
Rafael Avila de Espindola 5a976da002 see.c (see_def_extension_not_merged): Use copy_rtx_if_shared to avoid invalid sharing.
2008-05-28  Rafael Espindola  <espindola@google.com>

	* see.c (see_def_extension_not_merged): Use copy_rtx_if_shared to avoid
	invalid sharing.

2008-05-28  Rafael Espindola  <espindola@google.com>

	* gcc.dg/20080528-1.c: New test.

From-SVN: r136115
2008-05-28 16:20:25 +00:00
Arnaud Charlet acca98c08f Resync.
From-SVN: r136114
2008-05-28 17:56:29 +02:00
Ed Schonberg c147ac264f sem_res.adb (Valid_Conversion): An anonymous access_to_subprogram type has a deeper level than any master only...
2008-05-28  Ed Schonberg  <schonberg@adacore.com>

	* sem_res.adb (Valid_Conversion): An anonymous access_to_subprogram
	type has a deeper level than any master only when it is the type of an
	access parameter.

From-SVN: r136113
2008-05-28 17:56:02 +02:00