platform/upstream/gcc.git
16 years agoxcoff.h (XCOFF_CSECT_DEFAULT_ALIGNMENT_STR): New internal macro.
Olivier Hainque [Fri, 31 Aug 2007 07:08:40 +0000 (07:08 +0000)]
xcoff.h (XCOFF_CSECT_DEFAULT_ALIGNMENT_STR): New internal macro.

2007-08-31  Olivier Hainque  <hainque@adacore.com>

* config/rs6000/xcoff.h (XCOFF_CSECT_DEFAULT_ALIGNMENT_STR): New
internal macro. Default alignment factor for csect directives, chosen
to match what BIGGEST_ALIGNMENT allows.
(DATA_SECTION_ASM_OP): Use it.
* config/rs6000/rs6000.c
(rs6000_xcoff_output_readonly_section_asm_op):
Use XCOFF_CSECT_DEFAULT_ALIGNMENT_STR.
(rs6000_xcoff_output_readwrite_section_asm_op): Likewise.

From-SVN: r127956

16 years agodbxout.c (dbxout_block): Move declaration within the first #if defined (DBX_DEBUGGING...
Olivier Hainque [Fri, 31 Aug 2007 07:02:43 +0000 (07:02 +0000)]
dbxout.c (dbxout_block): Move declaration within the first #if defined (DBX_DEBUGGING_INFO) block.

2007-08-31  Olivier Hainque  <hainque@adacore.com>

* dbxout.c (dbxout_block): Move declaration within the first
#if defined (DBX_DEBUGGING_INFO) block.  Rearrange another such
block to include the definition, together with the associated
helpers.

From-SVN: r127955

16 years agoSupport for PowerPC 750CL paired-single instructions
David Edelsohn [Fri, 31 Aug 2007 05:26:38 +0000 (05:26 +0000)]
Support for PowerPC 750CL paired-single instructions

Co-Authored-By: Revital Eres <eres@il.ibm.com>
From-SVN: r127954

16 years agocvt.c (cp_convert_to_pointer): Remove force parameter.
Ollie Wild [Fri, 31 Aug 2007 04:41:52 +0000 (04:41 +0000)]
cvt.c (cp_convert_to_pointer): Remove force parameter.

gcc/cp/
* cvt.c (cp_convert_to_pointer): Remove force parameter. Call
convert_ptrmem for pointer to member conversions.
(convert_to_pointer_force): Update cp_convert_to_pointer call.
(ocp_convert): Update cp_convert_to_pointer call.
* typeck.c (convert_ptrmem): Add conditional for null pointers to
members.
(build_static_cast_1): Check can_convert for conversions in either
direction.
(get_delta_difference_1): New function.
(get_delta_difference): Refactor to call get_delta_difference_1.

gcc/testsuite/
g++.dg/conversion/ptrmem2.C: New test.
g++.dg/conversion/ptrmem3.C: New test.
g++.dg/conversion/ptrmem4.C: New test.
g++.dg/conversion/ptrmem5.C: New test.
g++.dg/conversion/ptrmem6.C: New test.
g++.dg/conversion/ptrmem7.C: New test.
g++.dg/conversion/ptrmem8.C: New test.

From-SVN: r127953

16 years agoc-opts.c (c_common_handle_option): Support -fno-directives-only.
Ollie Wild [Fri, 31 Aug 2007 04:13:57 +0000 (04:13 +0000)]
c-opts.c (c_common_handle_option): Support -fno-directives-only.

gcc/
* c-opts.c (c_common_handle_option): Support -fno-directives-only.
* gcc.c (default_compilers): Add -fno-directives-only to
@assembler-with-cpp.

From-SVN: r127952

16 years agore PR middle-end/33211 (FAIL: gcc.target/spu/fixed-range.c scan-assembler lqd.*21)
Sandra Loosemore [Fri, 31 Aug 2007 03:25:02 +0000 (23:25 -0400)]
re PR middle-end/33211 (FAIL: gcc.target/spu/fixed-range.c scan-assembler lqd.*21)

2007-08-30  Sandra Loosemore  <sandra@codesourcery.com>

PR middle-end/33211

gcc/
* regclass.c (initial_fixed_regs): Revert previous change and make
it const again.
(initial_call_used_regs): Likewise.
(initial_call_really_used_regs): Delete, reverting previous addition.
(initial_reg_names): Likewise.
(init_reg_sets): Revert previous change.
(saved_fixed_regs): New.
(saved_call_used_regs): New.
(saved_call_really_used_regs): New.
(saved_reg_names): New.
(save_register_info): New.
(restore_register_info): New.
(init_reg_sets_1): Replace reset of register info with call to
restore_register_info.
* rtl.h (save_register_info): Declare.
* toplev.c (backend_init): Call save_register_info.

From-SVN: r127951

16 years agore PR libfortran/33225 (Missing last digit in some formatted output (on 32bit targets...
Jerry DeLisle [Fri, 31 Aug 2007 01:37:31 +0000 (01:37 +0000)]
re PR libfortran/33225 (Missing last digit in some formatted output (on 32bit targets), per kind write_float)

2007-08-30  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/33225
* io/write.c: Revert changes from patch of 2007-08-27.
* io/write_float.def: Remove file, reverting addition.

From-SVN: r127950

16 years agotree-ssa-propagate.c (set_rhs): Remove the copied annotation from the original statement.
Laurynas Biveinis [Fri, 31 Aug 2007 00:26:18 +0000 (00:26 +0000)]
tree-ssa-propagate.c (set_rhs): Remove the copied annotation from the original statement.

2007-08-30  Laurynas Biveinis  <laurynas.biveinis@gmail.com>

* tree-ssa-propagate.c (set_rhs): Remove the copied annotation
from the original statement.

From-SVN: r127946

16 years agoDaily bump.
GCC Administrator [Fri, 31 Aug 2007 00:17:08 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r127944

16 years agoc-lex.c (interpret_fixed): Declare.
Chao-ying Fu [Thu, 30 Aug 2007 23:09:28 +0000 (23:09 +0000)]
c-lex.c (interpret_fixed): Declare.

* c-lex.c (interpret_fixed): Declare.
(interpret_float): Process _Fract and _Accum.
(interpret_fixed): New function.
* final.c (output_addr_const): Process CONST_FIXED.
* simplify-rtx.c (simplify_const_unary_operation): Handle US_NEG.
(simplify_binary_operation_1): Handle US_ASHIFT, SS_MULT, US_MULT,
SS_DIV, US_DIV.
(simplify_const_binary_operation): Handle SS_MULT, US_MULT, SS_DIV,
US_DIV, US_ASHIFT.
(simplify_immed_subreg): Support CONST_FIXED.
Process MODE_FRACT, MODE_UFRACT, MODE_ACCUM, MODE_UACCUM.
(simplify_subreg): Support CONST_FIXED.

From-SVN: r127941

16 years agoexpr.c (interpret_float_suffix): Support hr, r, lr, llr, uhr, ur, ulr, ullr, hk,...
Chao-ying Fu [Thu, 30 Aug 2007 23:05:17 +0000 (23:05 +0000)]
expr.c (interpret_float_suffix): Support hr, r, lr, llr, uhr, ur, ulr, ullr, hk, k, lk, llk, uhk, uk, ulk, ullk.

* expr.c (interpret_float_suffix): Support hr, r, lr, llr, uhr, ur,
ulr, ullr, hk, k, lk, llk, uhk, uk, ulk, ullk.
(cpp_classify_number): Support decimal fixed-point constants without
exponents.
Warn about fixed-point constants when -pedantic.
* include/cpplib.h (CPP_N_SMALL, CPP_N_MEDIUM, CPP_N_LARGE): Change
comments to support fixed-point values.
(CPP_N_FRACT, CPP_N_ACCUM): Define.

From-SVN: r127940

16 years agore PR fortran/31879 (ICE with function having array of character variables argument)
Paul Thomas [Thu, 30 Aug 2007 22:10:55 +0000 (22:10 +0000)]
re PR fortran/31879 (ICE with function having array of character variables argument)

2007-08-31  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31879
PR fortran/31197
PR fortran/31258
PR fortran/32703
* gfortran.h : Add prototype for gfc_resolve_substring_charlen.
* resolve.c (gfc_resolve_substring_charlen): New function.
(resolve_ref): Call gfc_resolve_substring_charlen.
(gfc_resolve_character_operator): New function.
(gfc_resolve_expr): Call the new functions in cases where the
character length is missing.
* iresolve.c (cshift, eoshift, merge, pack, reshape, spread,
transpose, unpack): Call gfc_resolve_substring_charlen for
source expressions that are character and have a reference.
* trans.h (gfc_trans_init_string_length) Change name to
gfc_conv_string_length; modify references in trans-expr.c,
trans-array.c and trans-decl.c.
* trans-expr.c (gfc_trans_string_length): Handle case of no
backend_decl.
(gfc_conv_aliased_arg): Remove code for treating substrings
and replace with call to gfc_trans_string_length.
* trans-array.c (gfc_conv_expr_descriptor): Remove code for
treating strings and call gfc_trans_string_length instead.

2007-08-31  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31879
* gfortran.dg/char_length_7.f90: New test.
* gfortran.dg/char_length_9.f90: New test.
* gfortran.dg/char_assign_1.f90: Add extra warning.

PR fortran/31197
PR fortran/31258
* gfortran.dg/char_length_8.f90: New test.

From-SVN: r127939

16 years agoEnumSet.java: Documented.
Andrew John Hughes [Thu, 30 Aug 2007 19:57:30 +0000 (19:57 +0000)]
EnumSet.java: Documented.

2007-08-22  Andrew John Hughes  <gnu_andrew@member.fsf.org>

* java/util/EnumSet.java:
Documented.
(complementOf(EnumSet)): Fixed to flip only
the bits used by the enumset.

From-SVN: r127938

16 years agoMAINTAINERS (OS Port Maintainers): Add myself as NetBSD maintainer.
Krister Walfridsson [Thu, 30 Aug 2007 19:24:47 +0000 (21:24 +0200)]
MAINTAINERS (OS Port Maintainers): Add myself as NetBSD maintainer.

* MAINTAINERS (OS Port Maintainers): Add myself as NetBSD maintainer.
(Write After Approval): Remove myself.

From-SVN: r127936

16 years agoMove changelog
Richard Sandiford [Thu, 30 Aug 2007 18:31:57 +0000 (18:31 +0000)]
Move changelog

From-SVN: r127935

16 years agoppu_intrinsics.h: New file.
Andrew Pinski [Thu, 30 Aug 2007 18:28:13 +0000 (18:28 +0000)]
ppu_intrinsics.h: New file.

2007-08-30  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * config/rs6000/ppu_intrinsics.h: New file.
        * config.gcc (powerpc*-*-* <extra_headers>): Install
        ppu_intrinsics.h.

2007-08-30  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * gcc.target/powerpc/ppu-intrinsics.c: New testcase.

From-SVN: r127934

16 years agogij.cc (version): Update Copyright year.
Andreas Tobler [Thu, 30 Aug 2007 18:27:12 +0000 (18:27 +0000)]
gij.cc (version): Update Copyright year.

2007-08-30  Andreas Tobler  <a.tobler@schweiz.org>

* gij.cc (version): Update Copyright year.

From-SVN: r127933

16 years agocfg.c (dump_flow_info): Change to also print entry and exit block info.
Kenneth Zadeck [Thu, 30 Aug 2007 17:43:04 +0000 (17:43 +0000)]
cfg.c (dump_flow_info): Change to also print entry and exit block info.

2007-08-30  Kenneth Zadeck <zadeck@naturalbridge.com>

* cfg.c (dump_flow_info): Change to also print entry and exit
block info.
* print-rtl.c (print_rtl_single): Allow to print rtl with
-fdump-unnumbered.

From-SVN: r127932

16 years agodf-core.h (df_dump_region): New function.
Kenneth Zadeck [Thu, 30 Aug 2007 17:38:25 +0000 (17:38 +0000)]
df-core.h (df_dump_region): New function.

2007-08-30  Kenneth Zadeck <zadeck@naturalbridge.com>

* df-core.h (df_dump_region): New function.
* df.h (df_dump_region): New function.
* loop-invariant.c (find_defs): Add call to df_dump_region.
* loop-iv.c (iv_analysis_loop_init): Changed call from df_dump to
df_dump_region.

From-SVN: r127931

16 years agodecl.c (start_preparsed_function): Set DECL_DISREGARD_INLINE_LIMITS for GNU_INLINE_P...
Jakub Jelinek [Thu, 30 Aug 2007 16:46:23 +0000 (18:46 +0200)]
decl.c (start_preparsed_function): Set DECL_DISREGARD_INLINE_LIMITS for GNU_INLINE_P functions.

* decl.c (start_preparsed_function): Set
DECL_DISREGARD_INLINE_LIMITS for GNU_INLINE_P functions.

* gcc.dg/inline-24.c: New test.
* g++.dg/opt/inline11.C: New test.

From-SVN: r127929

16 years agore PR target/33168 (GCC Boot failure, building libstc++)
Jakub Jelinek [Thu, 30 Aug 2007 16:43:19 +0000 (18:43 +0200)]
re PR target/33168 (GCC Boot failure, building libstc++)

PR target/33168
* config/rs6000/rs6000.c (rs6000_elf_in_small_data_p): Return
true if any of the compare_section_name calls returned true,
rather than if any returned false.

From-SVN: r127928

16 years agore PR middle-end/33199 (tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc)
Richard Guenther [Thu, 30 Aug 2007 14:52:28 +0000 (14:52 +0000)]
re PR middle-end/33199 (tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc)

2007-08-30  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/33199
* tree-ssa-structalias.c (handle_lhs_call): New function.
(find_func_aliases): In non-IPA mode make sure that for
calls that return a pointer we add a constraint for the
result to point to anything.

From-SVN: r127927

16 years agoinvoke.texi (-mveclibabi): Document new target option.
Richard Guenther [Thu, 30 Aug 2007 13:55:42 +0000 (13:55 +0000)]
invoke.texi (-mveclibabi): Document new target option.

2007-08-30  Richard Guenther  <rguenther@suse.de>

* doc/invoke.texi (-mveclibabi): Document new target option.
* config/i386/i386.opt (-mveclibabi): New target option.
* config/i386/i386.c (ix86_veclib_handler): Handler for
vectorization library support.
(override_options): Handle the -mveclibabi option, initialize
the vectorization library handler.
(ix86_builtin_vectorized_function): As fallback call the
vectorization library handler, if set.
(ix86_veclibabi_acml): New static function for ACML ABI style
vectorization support.

* gcc.target/i386/vectorize5.c: New testcase.

From-SVN: r127926

16 years agore PR fortran/33228 (Accepts use-associated functions in MODULE PROCEDURE)
Tobias Burnus [Thu, 30 Aug 2007 13:44:47 +0000 (15:44 +0200)]
re PR fortran/33228 (Accepts use-associated functions in MODULE PROCEDURE)

2007-08-30  Tobias Burnus  <burnus@net-b.de>

PR fortran/33228
* interface.c (check_interface0): Improve error for external procs.
(check_sym_interfaces): Fix checking of module procedures.

2007-08-30  Tobias Burnus  <burnus@net-b.de>

PR fortran/33228
* gfortran.dg/generic_9.f90: Update error message.
* gfortran.dg/generic_14.f90: New.

From-SVN: r127925

16 years agore PR middle-end/32758 (ecj1 hangs)
Jakub Jelinek [Thu, 30 Aug 2007 08:27:33 +0000 (10:27 +0200)]
re PR middle-end/32758 (ecj1 hangs)

PR middle-end/32758
* dce.c (dce_process_block): Don't delete setters of
artificially used registers.

* gcc.dg/cleanup-12.c: New test.

From-SVN: r127923

16 years agors6000.c (rs6000_emit_sync): For QI or HI mode used_m...
Jakub Jelinek [Thu, 30 Aug 2007 08:25:36 +0000 (10:25 +0200)]
rs6000.c (rs6000_emit_sync): For QI or HI mode used_m...

* config/rs6000/rs6000.c (rs6000_emit_sync): For QI or HI mode
used_m, even if it is 32-bit aligned, adjust used_m MEM to have
SImode and update m.  Don't run gen_lowpart_common on arbitrary
memory address, force it to register first.

* gcc.dg/sync-2.c (AI_ALIGN): Define if not defined.
(AI): Add AI_ALIGN.
* gcc.dg/sync-3.c: New test.

From-SVN: r127922

16 years agos390.md ("*add<mode>3_alc_carry1_cc", [...]): New insn definitions.
Ulrich Weigand [Thu, 30 Aug 2007 06:51:53 +0000 (06:51 +0000)]
s390.md ("*add<mode>3_alc_carry1_cc", [...]): New insn definitions.

2007-08-30  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>

* config/s390/s390.md ("*add<mode>3_alc_carry1_cc",
"*add<mode>3_alc_carry1_cconly", "*add<mode>3_alc_carry2_cc",
"*add<mode>3_alc_carry2_cconly"): New insn definitions.

From-SVN: r127921

16 years agos390.c (s390_expand_addcc): Emit canonical alc pattern.
Ulrich Weigand [Thu, 30 Aug 2007 06:50:44 +0000 (06:50 +0000)]
s390.c (s390_expand_addcc): Emit canonical alc pattern.

2007-08-30  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>

* config/s390/s390.c (s390_expand_addcc): Emit canonical alc
pattern.
* config/s390/s390.md ("*add<mode>3_alc_cc", "*add<mode>3_alc",
"addti3", "*adddi3_31z", "*scond<mode>"): Make alc pattern canonical.

From-SVN: r127920

16 years agogcc-dg.exp (cleanup-profile-file): New procedure.
Uros Bizjak [Thu, 30 Aug 2007 05:23:02 +0000 (07:23 +0200)]
gcc-dg.exp (cleanup-profile-file): New procedure.

* lib/gcc-dg.exp (cleanup-profile-file): New procedure.
* gcc.dg/20021014-1.c: Use cleanup-profile-file.
* gcc.dg/gcc.dg/20021014-1.c: Ditto.
* gcc.dg/pr32450.c: Ditto.
* gcc.dg/nest.c: Ditto.
* gcc.dg/nested-func-4.c: Ditto.
* g++.old-deja/g++.law/profile1.C: Ditto.

From-SVN: r127919

16 years agoDaily bump.
GCC Administrator [Thu, 30 Aug 2007 00:17:27 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r127916

16 years agosystem.h: Activate -Wcast-qual as warning-only.
Kaveh R. Ghazi [Wed, 29 Aug 2007 20:28:33 +0000 (20:28 +0000)]
system.h: Activate -Wcast-qual as warning-only.

* system.h: Activate -Wcast-qual as warning-only.

From-SVN: r127913

16 years agoacinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ENODATA, ENOSR, ENOSTR, ETIME for...
Benjamin Kosnik [Wed, 29 Aug 2007 19:53:50 +0000 (19:53 +0000)]
acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ENODATA, ENOSR, ENOSTR, ETIME for freebsd.

2007-08-29  Benjamin Kosnik  <bkoz@redhat.com>

* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ENODATA, ENOSR,
ENOSTR, ETIME for freebsd.
* configure: Regenerate.
* include/std/system_error: Guard.
* testsuite/19_diagnostics/headers/system_error/
types_std_c++0x.cc: Same.
* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
line numbers.

From-SVN: r127912

16 years agore PR target/33168 (GCC Boot failure, building libstc++)
Paolo Bonzini [Wed, 29 Aug 2007 17:01:35 +0000 (17:01 +0000)]
re PR target/33168 (GCC Boot failure, building libstc++)

2007-08-29  Paolo Bonzini  <bonzini@gnu.org>

        PR target/33168
        * config/rs6000/rs6000.c (compare_section_name): New function.
        (rs6000_elf_in_small_data_p): Compare section prefixes instead
        of full name.

From-SVN: r127910

16 years agoxcoffout.c: #include debug.h.
Olivier Hainque [Wed, 29 Aug 2007 15:57:21 +0000 (15:57 +0000)]
xcoffout.c: #include debug.h.

2007-08-29  Olivier Hainque  <hainque@adacore.com>

* xcoffout.c: #include debug.h.
* Makefile.in (xcoffout.o): Add debug.h dependency.

From-SVN: r127906

16 years agore PR libfortran/32989 (GETARG intrinsic)
Francois-Xavier Coudert [Wed, 29 Aug 2007 15:22:55 +0000 (15:22 +0000)]
re PR libfortran/32989 (GETARG intrinsic)

PR fortran/32989

* iresolve.c (gfc_resolve_getarg): Handle non-default integer
kinds.
* check.c (gfc_check_getarg): New function
* intrinsic.h: Add prototype for gfc_check_getarg.
* intrinsic.c (add_subroutines): Add reference to gfc_check_getarg.
* intrinsic.texi (GETARG): Adjust documentation.

* gfortran.fortran-torture/execute/getarg_1.f90: Add check for
non-default integer kind arguments.

From-SVN: r127905

16 years ago* config.sub, config.guess: Update from upstream sources.
Nick Clifton [Wed, 29 Aug 2007 15:21:28 +0000 (15:21 +0000)]
* config.sub, config.guess: Update from upstream sources.

From-SVN: r127904

16 years agore PR fortran/33105 (F2003: Support is_iostat_end & is_iostat_eor intrinsics)
François-Xavier Coudert [Wed, 29 Aug 2007 15:16:00 +0000 (15:16 +0000)]
re PR fortran/33105 (F2003: Support is_iostat_end & is_iostat_eor intrinsics)

PR fortran/33105

* intrinsic.c (add_functions): Add IS_IOSTAT_END and
IS_IOSTAT_EOR intrinsics.
* gfortran.h (gfc_isym_id): Add GFC_ISYM_IS_IOSTAT_END and
GFC_ISYM_IS_IOSTAT_EOR.
* trans-intrinsic.c (gfc_conv_has_intvalue): New function.
(gfc_conv_intrinsic_function): Call gfc_conv_has_intvalue for
GFC_ISYM_IS_IOSTAT_END and GFC_ISYM_IS_IOSTAT_EOR.
* intrinsic.texi: Add IS_IOSTAT_END and IS_IOSTAT_EOR.

* gfortran.dg/is_iostat_end_eor_1.f90: New test.

From-SVN: r127903

16 years agosimplify-rtx.c (simplify_binary_operation_1): Change CONST_VECTOR_ELT to XVECEXP...
Uros Bizjak [Wed, 29 Aug 2007 15:00:38 +0000 (17:00 +0200)]
simplify-rtx.c (simplify_binary_operation_1): Change CONST_VECTOR_ELT to XVECEXP in elem calculation.

* simplify-rtx.c (simplify_binary_operation_1) [VEC_SELECT]:
Change CONST_VECTOR_ELT to XVECEXP in elem calculation.

From-SVN: r127902

16 years agoh8300-ice2.c: Remove target selector.
Uros Bizjak [Wed, 29 Aug 2007 14:54:37 +0000 (16:54 +0200)]
h8300-ice2.c: Remove target selector.

* gcc.dg/h8300-ice2.c: Remove target selector.

From-SVN: r127901

16 years agotree-pretty-print.c (dump_generic_node): Print label DECL_UID as D.%u.
Richard Guenther [Wed, 29 Aug 2007 14:16:15 +0000 (14:16 +0000)]
tree-pretty-print.c (dump_generic_node): Print label DECL_UID as D.%u.

2007-08-29  Richard Guenther  <rguenther@suse.de>

* tree-pretty-print.c (dump_generic_node): Print
label DECL_UID as D.%u.
* tree-dfa.c (dump_variable): Print DECL_UID as D.%u.

From-SVN: r127899

16 years agore PR fortran/33215 (Bind(C): Bugs with empty "name=": Creates wrong result and accep...
Tobias Burnus [Wed, 29 Aug 2007 13:08:55 +0000 (15:08 +0200)]
re PR fortran/33215 (Bind(C): Bugs with empty "name=": Creates wrong result and accepts invalid)

2007-08-29  Christopher D. Rickett  <crickett@lanl.gov>

PR fortran/33215
* decl.c (build_sym): Pass number of identifiers on line to
set_binding_label.
(set_binding_label): Verify that only one identifier given if
NAME= specified, even if the given binding label has zero length.
(gfc_match_bind_c): Remove declaration for has_name_equals because
it hides the static global one that is needed.

2007-08-29  Christopher D. Rickett  <crickett@lanl.gov>

PR fortran/33215
* gfortran.dg/binding_label_tests_15.f03: New test case.
* gfortran.dg/binding_label_tests_16.f03: Ditto.

From-SVN: r127898

16 years agobuiltin-types.def (BT_FN_PTR_PTR_SIZE): New type.
Francois-Xavier Coudert [Wed, 29 Aug 2007 12:44:32 +0000 (12:44 +0000)]
builtin-types.def (BT_FN_PTR_PTR_SIZE): New type.

* builtin-types.def (BT_FN_PTR_PTR_SIZE): New type.
* builtins.def (BUILT_IN_REALLOC): New builtin.

* trans-array.c (gfc_grow_array): Use gfc_call_realloc.
(gfc_array_allocate): Use gfc_allocate_with_status and
gfc_allocate_array_with_status.
(gfc_array_deallocate): Use gfc_deallocate_with_status.
(gfc_trans_dealloc_allocated): Use gfc_deallocate_with_status.
* trans-stmt.c (gfc_trans_allocate): Use gfc_allocate_with_status.
(gfc_trans_deallocate): Use gfc_deallocate_with_status.
* trans.c (gfc_allocate_with_status, gfc_allocate_array_with_status,
gfc_deallocate_with_status, gfc_call_realloc): New functions.
* trans.h (gfc_allocate_with_status, gfc_allocate_array_with_status,
gfc_deallocate_with_status, gfc_call_realloc): New prototypes.
(gfor_fndecl_internal_realloc, gfor_fndecl_allocate,
gfor_fndecl_allocate_array, gfor_fndecl_deallocate): Remove.
* f95-lang.c (gfc_init_builtin_functions): Create decl for
BUILT_IN_REALLOC.
* trans-decl.c (gfor_fndecl_internal_realloc,
gfor_fndecl_allocate, gfor_fndecl_allocate_array,
gfor_fndecl_deallocate): Remove function decls.
(gfc_build_builtin_function_decls): Likewise.

* runtime/memory.c (internal_realloc, allocate, allocate_array,
deallocate): Remove functions.
* gfortran.map (_gfortran_allocate, _gfortran_allocate_array,
_gfortran_deallocate, _gfortran_internal_realloc): Remove symbols.
* libgfortran.h (error_codes): Add comment.

* gfortran.dg/alloc_comp_basics_1.f90: Update check.
* gfortran.dg/alloc_comp_constructor_1.f90: Update check.

From-SVN: r127897

16 years agore PR c++/33194 (ICE: canonical types differ for identical types void ()(const char...
Douglas Gregor [Wed, 29 Aug 2007 12:25:01 +0000 (12:25 +0000)]
re PR c++/33194 (ICE: canonical types differ for identical types void ()(const char*, ...) and void ()(const char*, ...))

2007-08-29  Douglas Gregor  <doug.gregor@gmail.com>

PR c++/33194
* tree.c (build_type_attribute_qual_variant): Set canonical types
on the final, unqualified attribute variant before building the
qualified version.

2007-08-29  Douglas Gregor  <doug.gregor@gmail.com>

PR c++/33194
* g++.dg/other/canon-33194.C: New.

From-SVN: r127896

16 years agosimd-1.c: Use SImode vector elements.
Rask Ingemann Lambertsen [Wed, 29 Aug 2007 10:56:21 +0000 (12:56 +0200)]
simd-1.c: Use SImode vector elements.

* gcc.c-torture/execute/simd-1.c: Use SImode vector elements.
* gcc.c-torture/execute/pr23135.c: Likewise.

From-SVN: r127894

16 years ago* ChangeLog from my previous commit.
Uros Bizjak [Wed, 29 Aug 2007 09:56:39 +0000 (11:56 +0200)]
* ChangeLog from my previous commit.

From-SVN: r127893

16 years agoisnan_1.f90: Add -mieee for sh.
Kaz Kojima [Wed, 29 Aug 2007 09:45:18 +0000 (09:45 +0000)]
isnan_1.f90: Add -mieee for sh.

* gfortran.dg/isnan_1.f90: Add -mieee for sh.
* gfortran.dg/nan_1.f90: Likewise.

From-SVN: r127892

16 years agobfin.c (bfin_expand_builtin): Fix the argument order of __builtin_bfin_cmplx_mac...
Jie Zhang [Wed, 29 Aug 2007 09:35:52 +0000 (09:35 +0000)]
bfin.c (bfin_expand_builtin): Fix the argument order of __builtin_bfin_cmplx_mac and __builtin_bfin_cmplx_msu.

* config/bfin/bfin.c (bfin_expand_builtin): Fix the argument
order of __builtin_bfin_cmplx_mac and __builtin_bfin_cmplx_msu.

From-SVN: r127891

16 years agorevert: bfin.md (composev2hi): Put operands into vector with correct order.
Jie Zhang [Wed, 29 Aug 2007 09:34:15 +0000 (09:34 +0000)]
revert: bfin.md (composev2hi): Put operands into vector with correct order.

Revert
2007-08-29  Jie Zhang  <jie.zhang@analog.com>
* config/bfin/bfin.md (composev2hi): Put operands into vector
with correct order.

From-SVN: r127890

16 years agopr31344.c: Move to ...
Uros Bizjak [Wed, 29 Aug 2007 09:18:28 +0000 (11:18 +0200)]
pr31344.c: Move to ...

* gcc.dg/pr31344.c: Move to ...
* gcc.dg/dfp/pr31344.c: ... here.
* gcc.dg/sibcall-6.c: Simplify dg-skip-if directive.
* gcc.dg/20050503-1.c: Ditto.
* gcc.dg/20050111-1.c: Simplify i?86 and x86_64 dg-options directive.
* gcc.dg/20061127-1.c: Compile only for fpic targets.
* gcc.dg/20060801-1.c: Ditto.

From-SVN: r127889

16 years agobfin.md (composev2hi): Put operands into vector with correct order.
Jie Zhang [Wed, 29 Aug 2007 09:17:37 +0000 (09:17 +0000)]
bfin.md (composev2hi): Put operands into vector with correct order.

* config/bfin/bfin.md (composev2hi): Put operands into vector
with correct order.

From-SVN: r127888

16 years agobfin.c (bfin_expand_call): Inline PLT with l1_text attribute when appropriate.
Jie Zhang [Wed, 29 Aug 2007 09:15:14 +0000 (09:15 +0000)]
bfin.c (bfin_expand_call): Inline PLT with l1_text attribute when appropriate.

* config/bfin/bfin.c (bfin_expand_call): Inline PLT with l1_text
attribute when appropriate.
(bfin_handle_l1_text_attribute): New.
(bfin_handle_l1_data_attribute): New.
(bfin_attribute_table): Add attributes: l1_text, l1_data,
l1_data_A and l1_data_B.
* doc/extend.texi (node Function Attributes): Document l1_text
function attribute.
(Variable Attributes): Add Blackfin subsection. Document l1_data,
l1_data_A and l1_data_B variable attributes.

From-SVN: r127887

16 years agobfin.opt (minline-plt): Add.
Jie Zhang [Wed, 29 Aug 2007 09:13:16 +0000 (09:13 +0000)]
bfin.opt (minline-plt): Add.

* config/bfin/bfin.opt (minline-plt): Add.
* config/bfin/bfin.c (bfin_expand_call): Inline PLT when emit
call to global functions.
* doc/invoke.texi (Option Summary): Mention -minline-plt.
(Blackfin Options): Document -minline-plt.

From-SVN: r127886

16 years ago* config.sub: Add support for cr16 target.
M R Swami Reddy [Wed, 29 Aug 2007 08:58:00 +0000 (08:58 +0000)]
* config.sub: Add support for cr16 target.

From-SVN: r127885

16 years agoAdd test
Arnaud Charlet [Wed, 29 Aug 2007 08:41:04 +0000 (10:41 +0200)]
Add test

From-SVN: r127884

16 years agoFix ChangeLog.
Jerry DeLisle [Wed, 29 Aug 2007 04:09:20 +0000 (04:09 +0000)]
Fix ChangeLog.

From-SVN: r127883

16 years agoFix ChangeLog
Jerry DeLisle [Wed, 29 Aug 2007 04:08:02 +0000 (04:08 +0000)]
Fix ChangeLog

From-SVN: r127882

16 years agoFix ChangeLog.
Jerry DeLisle [Wed, 29 Aug 2007 04:05:42 +0000 (04:05 +0000)]
Fix ChangeLog.

From-SVN: r127881

16 years agom68k.c (m68k_get_function_kind): Assert we're never given a non-function.
Nathan Sidwell [Wed, 29 Aug 2007 03:53:41 +0000 (03:53 +0000)]
m68k.c (m68k_get_function_kind): Assert we're never given a non-function.

gcc/
* config/m68k/m68k.c (m68k_get_function_kind): Assert we're never
given a non-function.
(m68k_ok_for_sibcall_p): Only sibcall functions of the same kind.

gcc/testsuite/
* gcc.target/m68k/interrupt-1.c: New.

Co-Authored-By: Kazu Hirata <kazu@codesourcery.com>
From-SVN: r127880

16 years ago* config/sh/sh.c (sh_gimplify_va_arg_expr): Fix sh2a support.
DJ Delorie [Wed, 29 Aug 2007 03:37:01 +0000 (23:37 -0400)]
* config/sh/sh.c (sh_gimplify_va_arg_expr): Fix sh2a support.

From-SVN: r127879

16 years agosystem.h (CONST_CAST): Avoid union for gcc-4.0.x.
Kaveh R. Ghazi [Wed, 29 Aug 2007 02:34:22 +0000 (02:34 +0000)]
system.h (CONST_CAST): Avoid union for gcc-4.0.x.

* system.h (CONST_CAST): Avoid union for gcc-4.0.x.

From-SVN: r127878

16 years agore PR libfortran/33055 (Runtime error in INQUIRE unit existance with -fdefault-integer-8)
Jerry DeLisle [Wed, 29 Aug 2007 02:26:01 +0000 (02:26 +0000)]
re PR libfortran/33055 (Runtime error in INQUIRE unit existance with -fdefault-integer-8)

2007-08-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/33055
Revert previous patch.

From-SVN: r127877

16 years agoDaily bump.
GCC Administrator [Wed, 29 Aug 2007 00:17:42 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r127875

16 years ago* Make-lang.in (java.tags): Don't tag '*.y' files.
Tom Tromey [Wed, 29 Aug 2007 00:17:20 +0000 (00:17 +0000)]
* Make-lang.in (java.tags): Don't tag '*.y' files.

From-SVN: r127874

16 years agolimits-blockid.c: Reduce testcase size to 10000 for targets where "int" can't hold...
Rask Ingemann Lambertsen [Tue, 28 Aug 2007 21:01:37 +0000 (23:01 +0200)]
limits-blockid.c: Reduce testcase size to 10000 for targets where "int" can't hold at least 100000.

* gcc.c-torture/compile/limits-blockid.c: Reduce testcase size to
10000 for targets where "int" can't hold at least 100000.
* gcc.c-torture/compile/limits-enumconst.c: Likewise.
* gcc.dg/fold-eqandshift-1.c (INT_BITS): New.
(test5)(test6): Use it.
* gcc.dg/pr30744-1.c (r): Use pointer sized integer.
* gcc.dg/tree-ssa/foldaddr-1.c (foo): Likewise.
* gcc.dg/tree-ssa/loadpre6.c (main): Likewise.
* gcc.dg/tls/opt-5.c (__gen_tempname): Avoid overflowing 16-bit int.
* gcc.dg/attr-alloc_size.c (test): Likewise.

From-SVN: r127870

16 years agore PR c++/29000 (ICE on invalid use of template in statement-expr)
Jason Merrill [Tue, 28 Aug 2007 16:58:59 +0000 (12:58 -0400)]
re PR c++/29000 (ICE on invalid use of template in statement-expr)

        PR c++/29000
        * pt.c (build_non_dependent_expr, type_dependent_expression_p):
        Look inside STMT_EXPR.
        * semantics.c (stmt_expr_value_expr): New fn.
        * cp-tree.h: Declare it.
        * g++.dg/ext/stmtexpr12.C: New test.

From-SVN: r127868

16 years agore PR c++/33209 (Broken diagnostic: 'template_type_parm' not supported by dump_expr)
Paolo Carlini [Tue, 28 Aug 2007 16:41:56 +0000 (16:41 +0000)]
re PR c++/33209 (Broken diagnostic: 'template_type_parm' not supported by dump_expr)

/cp
2007-08-28  Paolo Carlini  <pcarlini@suse.de>

PR c++/33209
* error.c (dump_expr): Deal with TEMPLATE_TYPE_PARM and
BOUND_TEMPLATE_TEMPLATE_PARM.

/testsuite
2007-08-28  Paolo Carlini  <pcarlini@suse.de>

PR c++/33209
* g++.dg/template/error29.C: New.

From-SVN: r127866

16 years agotree.h (struct tree_function_decl): Increase size of function_code bitfield.
Richard Guenther [Tue, 28 Aug 2007 16:28:31 +0000 (16:28 +0000)]
tree.h (struct tree_function_decl): Increase size of function_code bitfield.

2007-08-28  Richard Guenther  <rguenther@suse.de>

        * tree.h (struct tree_function_decl): Increase size of
        function_code bitfield.

From-SVN: r127865

16 years agore PR fortran/22244 (dimension information is lost for multi-dimension array)
Jakub Jelinek [Tue, 28 Aug 2007 16:08:57 +0000 (18:08 +0200)]
re PR fortran/22244 (dimension information is lost for multi-dimension array)

PR fortran/22244
* Make-lang.in (fortran/trans-types.o): Depend on $(FLAGS_H).
* trans-types.c: Include flags.h.
(gfc_get_nodesc_array_type): Add TYPE_DECL TYPE_NAME with
correct bounds and dimensions for packed arrays.

From-SVN: r127864

16 years agore PR c++/32596 (ICE with inline template specialization in anonymous namespace)
Jakub Jelinek [Tue, 28 Aug 2007 16:08:02 +0000 (18:08 +0200)]
re PR c++/32596 (ICE with inline template specialization in anonymous namespace)

PR c++/32596
PR c++/32400
* pt.c (check_explicit_specialization): Set DECL_INTERFACE_KNOWN
and DECL_NOT_REALLY_EXTERN if tmpl_func is not public.

* g++.dg/ext/visibility/anon5.C: New test.

From-SVN: r127863

16 years agogamma_4.f90: Fix large-real kind selection.
Dominique d'Humieres [Tue, 28 Aug 2007 14:47:51 +0000 (16:47 +0200)]
gamma_4.f90: Fix large-real kind selection.

2007-07-28  Dominique d'Humieres  <dominiq@lps.ens.fr>

* gfortran.dg/gamma_4.f90: Fix large-real kind selection.

From-SVN: r127861

16 years agogamma_1.f90: Remove large-real tests.
Francois-Xavier Coudert [Tue, 28 Aug 2007 14:32:05 +0000 (14:32 +0000)]
gamma_1.f90: Remove large-real tests.

2007-08-28  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>

* gfortran.dg/gamma_1.f90: Remove large-real tests.
* gfortran.dg/gamma_2.f90: Remove large-real tests.
* gfortran.dg/gamma_4.f90: New: large-real tests.

From-SVN: r127860

16 years agore PR c++/28558 (Trouble with __attribute__ and non-PODs)
Jason Merrill [Tue, 28 Aug 2007 13:57:09 +0000 (09:57 -0400)]
re PR c++/28558 (Trouble with  __attribute__ and non-PODs)

        PR c++/28558
        * cp/decl.c (groktypename): Ignore attributes applied to class type.
        * testsuite/g++.dg/ext/attrib28.C: New test.

From-SVN: r127859

16 years ago* gcc/config/m68k/linux.h
Nathan Sidwell [Tue, 28 Aug 2007 13:51:20 +0000 (13:51 +0000)]
* gcc/config/m68k/linux.h
(M68K_HONOR_TARGET_STRICT_ALIGNMENT): Redefine as 0.
* config/m68k/m68k.c (TARGET_RETURN_IN_MEMORY): New.
(m68k_return_in_memory): New.
* gcc/config/m68k/m68k.h (M68K_HONOR_TARGET_STRICT_ALIGNMENT):
New.

Co-Authored-By: Kazu Hirata <kazu@codesourcery.com>
From-SVN: r127858

16 years agore PR target/32661 (__builtin_ia32_vec_ext suboptimal for pointer/ref args)
Uros Bizjak [Tue, 28 Aug 2007 09:52:06 +0000 (11:52 +0200)]
re PR target/32661 (__builtin_ia32_vec_ext suboptimal for pointer/ref args)

PR target/32661
* simplify-rtx.c (simplify_binary_operation_1) [VEC_SELECT]:
Simplify nested VEC_SELECT (with optional VEC_CONCAT operator as
operand) when top VEC_SELECT extracts scalar element.
* config/i386/sse.md (*vec_extract_v4si_mem): New.
(*vec_extract_v4sf_mem): Ditto.

testsuite/ChangeLog:

PR target/32661
* gcc.target/i386/pr32661.c: New test.

From-SVN: r127857

16 years agore PR middle-end/32370 (Segfault after rejecting bogus assembler)
Jakub Jelinek [Tue, 28 Aug 2007 09:50:04 +0000 (11:50 +0200)]
re PR middle-end/32370 (Segfault after rejecting bogus assembler)

PR middle-end/32370
* passes.c (init_optimization_passes): Move pass_df_finish
after pass_postreload sublist.

* gcc.dg/pr32370.c: New test.

From-SVN: r127856

16 years agore PR rtl-optimization/33148 (ICE in trunc_int_for_mode, at explow.c:56 during combine)
Jakub Jelinek [Tue, 28 Aug 2007 09:47:32 +0000 (11:47 +0200)]
re PR rtl-optimization/33148 (ICE in trunc_int_for_mode, at explow.c:56 during combine)

PR rtl-optimization/33148
* simplify-rtx.c (simplify_unary_operation_1): Only optimize
(neg (lt X 0)) if X has scalar int mode.

* gcc.c-torture/compile/20070827-1.c: New test.

From-SVN: r127855

16 years agore PR debug/32914 (ICE in rtl_for_decl_init with -g option)
Jakub Jelinek [Tue, 28 Aug 2007 09:44:57 +0000 (11:44 +0200)]
re PR debug/32914 (ICE in rtl_for_decl_init with -g option)

PR debug/32914
* dwarf2out.c (rtl_for_decl_init): If vector decl has CONSTRUCTOR
initializer, use build_vector_from_ctor if possible to create
VECTOR_CST out of it.  If vector initializer is not VECTOR_CST
even after this, return NULL.

* d++.dg/debug/const3.C: New test.
* d++.dg/debug/const4.C: New test.
* d++.dg/debug/dwarf2/const1.C: New test.
* d++.dg/debug/dwarf2/const2.C: New test.
* d++.dg/debug/dwarf2/const2b.C: New test.

From-SVN: r127854

16 years agoAdd new tests.
Arnaud Charlet [Tue, 28 Aug 2007 09:34:54 +0000 (11:34 +0200)]
Add new tests.

From-SVN: r127853

16 years ago* c-pretty-print.c (pp_c_constant): Handle COMPLEX_CST.
Gabriel Dos Reis [Tue, 28 Aug 2007 09:26:03 +0000 (09:26 +0000)]
* c-pretty-print.c (pp_c_constant): Handle COMPLEX_CST.

From-SVN: r127852

16 years agotree.h (DECL_DISREGARD_INLINE_LIMITS): New.
Richard Guenther [Tue, 28 Aug 2007 09:03:59 +0000 (09:03 +0000)]
tree.h (DECL_DISREGARD_INLINE_LIMITS): New.

2007-08-28  Richard Guenther  <rguenther@suse.de>

* tree.h (DECL_DISREGARD_INLINE_LIMITS): New.
(struct tree_function_decl): Make function_code a bitfield.
Add disregard_inline_limits flag.
* cgraphunit.c (cgraph_process_new_functions): Check
DECL_DISREGARD_INLINE_LIMITS instead of disregard_inline_limits_p.
(cgraph_preserve_function_body_p): Likewise.
* ipa-inline.c (compute_inline_parameters): Likewise.
* c-decl.c (finish_function): Set DECL_DISREGARD_INLINE_LIMITS
for GNU C extern inline functions.
(merge_decls): Merge DECL_DISREGARD_INLINE_LIMITS.
* tree-inline.c (disregard_inline_limits_p): Remove.
* tree-inline.h (disregard_inline_limits_p): Likewise.
* c-common.c (handle_always_inline_attribute): Set
DECL_DISREGARD_INLINE_LIMITS.
* langhooks.c (add_builtin_function): Verify the function code
fits in the bitfield.

cp/
* decl.c (duplicate_decls): Merge DECL_DISREGARD_INLINE_LIMITS.

From-SVN: r127851

16 years agore PR libstdc++/33128 (std::tr1::uniform_int returns value out of range)
Paolo Carlini [Tue, 28 Aug 2007 08:48:24 +0000 (08:48 +0000)]
re PR libstdc++/33128 (std::tr1::uniform_int returns value out of range)

2007-08-28  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/33128
* include/tr1_impl/random (uniform_int<>::_M_call): Deal with
__urng() returning negative values.
* testsuite/tr1/5_numerical_facilities/random/uniform_int/33128.cc:
New.

From-SVN: r127849

16 years agoModulo-scheduling improvements. Patch 2 of 2
Mircea Namolaru [Tue, 28 Aug 2007 06:52:16 +0000 (06:52 +0000)]
Modulo-scheduling improvements. Patch 2 of 2

Co-Authored-By: Andrey Belevantsev <abel@ispras.ru>
Co-Authored-By: Revital Eres <eres@il.ibm.com>
Co-Authored-By: Vladimir Yanovsky <yanov@il.ibm.com>
From-SVN: r127848

16 years agoerror.c (dump_expr): Handle COMPLEX_CST.
Gabriel Dos Reis [Tue, 28 Aug 2007 05:55:54 +0000 (05:55 +0000)]
error.c (dump_expr): Handle COMPLEX_CST.

* error.c (dump_expr): Handle COMPLEX_CST.
* cxx-pretty-print.c (pp_cxx_primary_expression): Likewise.
(pp_cxx_expression): Likewise.

From-SVN: r127847

16 years agowrite.c (stdbool.h): Add include.
Jerry DeLisle [Tue, 28 Aug 2007 00:56:05 +0000 (00:56 +0000)]
write.c (stdbool.h): Add include.

2007-08-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

* io/write.c (stdbool.h): Add include. (sign_t): Move typedef to
new file write_float.def. Include write_float.def.
(extract_real): Delete. (calculate_sign): Delete.
(calculate_exp): Delete. (calculate_G_format): Delete.
(output_float): Delete. (write_float): Delete.
* io/write_float.def (calculate_sign): Added.
(output_float): Refactored to be independent of kind and added to this
file for inclusion. (write_infnan): New function to write "Infinite" or
"NaN" depending on flags passed, independent of kind.
(CALCULATE_EXP): New macro to build kind specific functions. Use it.
(OUTPUT_FLOAT_FMT_G): New macro, likewise. Use it.
(DTOA, DTOAL): Macros to implement "decimal to ascii".
(WRITE_FLOAT): New macro for kind specific write_float functions.
(write_float): Revised function to determine kind and use WRITE_FLOAT
to implement kind specific output.

From-SVN: r127846

16 years agoDaily bump.
GCC Administrator [Tue, 28 Aug 2007 00:17:39 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r127844

16 years agoextend.texi (gnu_inline funtion attribute): Document C++ behavior.
Alexandre Oliva [Mon, 27 Aug 2007 20:40:00 +0000 (20:40 +0000)]
extend.texi (gnu_inline funtion attribute): Document C++ behavior.

gcc/ChangeLog:
* doc/extend.texi (gnu_inline funtion attribute): Document C++
behavior.
gcc/cp/ChangeLog:
* decl.c (GNU_INLINE_P): New.
(duplicate_decls): Handle gnu_inline.  Merge attributes and
some flags in overriding definitions.
(redeclaration_error_message): Handle gnu_inline.
(start_preparsed_function): Likewise.
gcc/testsuite/ChangeLog:
* g++.dg/ext/gnu-inline-common.h: New.
* g++.dg/ext/gnu-inline-global-reject.C: New.
* g++.dg/ext/gnu-inline-global.C: New.
* g++.dg/ext/gnu-inline-namespace.C: New.
* g++.dg/ext/gnu-inline-anon-namespace.C: New.
* g++.dg/ext/gnu-inline-class.C: New.
* g++.dg/ext/gnu-inline-class-static.C: New.
* g++.dg/ext/gnu-inline-template-class.C: New.
* g++.dg/ext/gnu-inline-template-func.C: New.

From-SVN: r127839

16 years agore PR c++/31337 (ICE with statement expression)
Jason Merrill [Mon, 27 Aug 2007 20:02:22 +0000 (16:02 -0400)]
re PR c++/31337 (ICE with statement expression)

        PR c++/31337
        * gimplify.c (gimplify_modify_expr): Discard the assignment of
        zero-sized types after calling gimplify_modify_expr_rhs.
        * testsuite/g++.dg/ext/stmtexpr11.C: New.

From-SVN: r127838

16 years agoregclass.c (init_reg_autoinc): Fix typo.
Sandra Loosemore [Mon, 27 Aug 2007 17:17:26 +0000 (13:17 -0400)]
regclass.c (init_reg_autoinc): Fix typo.

2007-08-27  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* regclass.c (init_reg_autoinc): Fix typo.

From-SVN: r127836

16 years agotarget-supports.exp (check_profiling_available): Set profiling_available_saved to...
Kazu Hirata [Mon, 27 Aug 2007 14:28:03 +0000 (14:28 +0000)]
target-supports.exp (check_profiling_available): Set profiling_available_saved to 0 on fido-*-elf.

* lib/target-supports.exp (check_profiling_available):
Set profiling_available_saved to 0 on fido-*-elf.

From-SVN: r127835

16 years agore PR tree-optimization/33173 (ICE in set_uids_in_ptset, at tree-ssa-structalias...
Daniel Berlin [Mon, 27 Aug 2007 14:18:36 +0000 (14:18 +0000)]
re PR tree-optimization/33173 (ICE in set_uids_in_ptset, at tree-ssa-structalias.c:4704)

2007-08-27  Daniel Berlin  <dberlin@dberlin.org>

Fix PR tree-optimization/33173
* tree-ssa-alias.c (find_used_portions): Fix reversed test.

From-SVN: r127834

16 years agore PR target/31385 (gcc fails to find spill register for decimal arithmetic)
H.J. Lu [Mon, 27 Aug 2007 14:14:31 +0000 (07:14 -0700)]
re PR target/31385 (gcc fails to find spill register for decimal arithmetic)

gcc/

2007-08-27  H.J. Lu  <hongjiu.lu@intel.com>

PR target/31385
* config/i386/i386.h (VALID_DFP_MODE_P): New.
* config/i386/i386.c (ix86_hard_regno_mode_ok): Allow DFP in
GPR.

gcc/testsuite/

2007-08-27  H.J. Lu  <hongjiu.lu@intel.com>

PR target/31385
* gcc.dg/dfp/pr31385.c: New.

From-SVN: r127833

16 years agoSeparate target-specific initialization from general back-end initialization.
Sandra Loosemore [Mon, 27 Aug 2007 13:34:14 +0000 (09:34 -0400)]
Separate target-specific initialization from general back-end initialization.

2007-08-27  Sandra Loosemore  <sandra@codesourcery.com>
    David Ung  <davidu@mips.com>
            Nigel Stephens <nigel@mips.com>

gcc/
Separate target-specific initialization from general
back-end initialization.

* toplev.c (init_alignments): New, split out from...
(process_options): ...here.
(backend_init_target):  New, split out from...
(backend_init): ...here.
(lang_dependent_init_target):  New, split out from...
(lang_dependent_init): ...here.
(target_reinit): New.
* toplev.h (target_reinit): Declare.
* expr.c (init_expr_target): Renamed from init_expr_once, since it
now can be called more than once.  Update comments.
* expr.h (init_expr_target): Likewise.
* alias.c (init_alias_target): Renamed from init_alias_once, since it
now can be called more than once.  Explicitly zero
static_reg_base_value.
* emit-rtl.c (init_emit_regs): New, split out from...
(init_emit_once): Here.
* regclass.c (initial_fixed_regs, initial_call_used_regs): Make
non-const, so that changes from command-line arguments can overwrite
values provided by the static initializers.
(initial_call_really_used_regs): New, used similarly to the above.
(initial_reg_names): Likewise.
(last_mode_for_init_move_cost): Promoted function-local static to
file-scope static to make it accessible outside init_move_cost.
(init_reg_sets): Do not initialize fixed_regs and call_used_regs yet.
Do not initialize inv_reg_alloc_order yet, either.  Do initialize
reg_names since it is needed for parsing command-line options.
(init_move_cost): Use last_mode_for_init_move_cost instead of
function-local static.
(init_reg_sets_1): Initialize fixed_regs, call_used_regs, and
call_really_used_regs now.  Reinitialize reg_names.  Also
initialize inv_reg_alloc_order.  Zero reg_class_subunion and
reg_class_superunion.  Clear losing_caller_save_reg_set.
Preserve global registers if called more than once.  Reset
move cost, may_move_in_cost, may_move_out_cost, and
last_mode_for_init_move_cost.
(init_reg_modes_target): Renamed from init_reg_modes_once, since it
can now be invoked more than once.  Update comments.
(init_regs): Update comments.
(fix_register): Update initial_fixed_regs, initial_call_used_regs,
and initial_call_really_used_regs, instead of the non-initial
        variables.  This allows us to save the command-line register settings
after target reinitialization.
(init_reg_autoinc): Zero forbidden_inc_dec_classes.
* rtl.h (init_emit_regs): Declare.
(init_reg_modes_target, init_alias_target): Renamed as described
above.
* reload1.c (init_reload): Update comments.
* optabs.c (init_optabs): Likewise.
* cfgloopanal.c (init_set_costs): Explicitly zero target_avail_regs.

Co-Authored-By: David Ung <davidu@mips.com>
Co-Authored-By: Nigel Stephens <nigel@mips.com>
From-SVN: r127832

16 years agounsigned-long-compare.c: Remove target selector.
Uros Bizjak [Mon, 27 Aug 2007 12:58:44 +0000 (14:58 +0200)]
unsigned-long-compare.c: Remove target selector.

* gcc.dg/unsigned-long-compare.c: Remove target selector.

From-SVN: r127831

16 years agoconfig.host: Add x86_64-elf target.
Hans Kester [Mon, 27 Aug 2007 11:15:54 +0000 (13:15 +0200)]
config.host: Add x86_64-elf target.

* config.host : Add x86_64-elf target.

From-SVN: r127830

16 years agosimplify.c (gfc_simplify_lgamma): Fix mpfr_lgamma call.
Tobias Burnus [Mon, 27 Aug 2007 10:03:22 +0000 (12:03 +0200)]
simplify.c (gfc_simplify_lgamma): Fix mpfr_lgamma call.

2007-08-27  Tobias Burnus  <burnus@net-b.de>

* simplify.c (gfc_simplify_lgamma): Fix mpfr_lgamma call.

From-SVN: r127829

16 years agoarm-eabi1.c, [...]: Move to gcc.target/arm directory.
Uros Bizjak [Mon, 27 Aug 2007 08:47:33 +0000 (10:47 +0200)]
arm-eabi1.c, [...]: Move to gcc.target/arm directory.

* gcc.dg/arm-eabi1.c, gcc.dg/symbian1.c, cc.dg/symbian2.c,
gcc.dg/symbian3.c, gcc.dg/symbian4.c, gcc.dg/symbian5.c,
gcc.dg/20051215-1.c: Move to gcc.target/arm directory.
* gcc.dg/const-compare.c, gcc.dg/non-lazy-ptr-test.c,
gcc.dg/unsigned-long-compare.c, gcc.dg/rs6000-leaf.c: Move to
gcc.target/powerpc directory.
* gcc.dg/m68k-pic-1.c, gcc.dg/m68k-slp-ice.c: Move to
gcc.target/m68k directory.
* gcc.dg/i386-darwin-fpmath.c: Move to gcc.target/i386 directory.
* gcc.dg/cris-peep2-andu1.c, gcc.dg/cris-peep2-andu2.c,
gcc.dg/cris-peep2-xsrand.c, gcc.dg/cris-peep2-xsrand2.c: Move to
gcc.target/cris directory.
* gcc.dg/20020620-1.c: Move to gcc.target/mips directory.
* gcc.dg/bfin-longcall-1.c, gcc.dg/bfin-longcall-2.c: Move to
gcc.target/bfin directory.

* gcc.target/sh: New directory.
* gcc.target/sh/sh.exp: New file.
* gcc.dg/pr21255-1.c, gcc.dg/pr21255-2-mb.c, gcc.dg/pr21255-2-ml.c,
gcc.dg/pr21255-3.c, gcc.dg/pr21255-4.c, gcc.dg/sh4a-bitmovua.c,
gcc.dg/sh4a-cos.c, gcc.dg/sh4a-cosf.c, gcc.dg/sh4a-fprun.c,
gcc.dg/sh4a-fsrra.c, gcc.dg/sh4a-memmovua.c, gcc.dg/sh4a-sin.c,
gcc.dg/sh4a-sincosf.c, gcc.dg/sh4a-sinf.c gcc.dg/sh-relax.c,
gcc.dg/sh-relax-vxworks.c: Move to gcc.target/sh directory.

From-SVN: r127828

16 years ago* gcc.target/i386/tailcall-1.c: Use dg-require-effective-target ilp32.
Uros Bizjak [Mon, 27 Aug 2007 07:36:24 +0000 (09:36 +0200)]
* gcc.target/i386/tailcall-1.c: Use dg-require-effective-target ilp32.

From-SVN: r127827

16 years agopow-1.c: Fix scan-assembler-not.
Uros Bizjak [Mon, 27 Aug 2007 07:23:34 +0000 (09:23 +0200)]
pow-1.c: Fix scan-assembler-not.

* gcc.target/i386/pow-1.c: Fix scan-assembler-not.
* gcc.target/i386/asm-3.c: Skip -fpic ilp32 targets only.
* gcc.target/i386/tailcall-1.c: Ditto.
* gcc.target/i386/20020523-1.c: Require nonpic effective target.
* gcc.target/i386/local2.c: Ditto.
* gcc.target/i386/stack-prot-kernel.c: Ditto.
* gcc.target/i386/20011119-1.c: Ditto.
* gcc.target/i386/fastcall-1.c: Fix target selector.

From-SVN: r127826

16 years agortl.h (XCNMPFV): Preserve const-ness of parameters through use of __typeof().
Chao-ying Fu [Mon, 27 Aug 2007 04:38:03 +0000 (04:38 +0000)]
rtl.h (XCNMPFV): Preserve const-ness of parameters through use of __typeof().

* rtl.h (XCNMPFV): Preserve const-ness of parameters through use of
__typeof().

From-SVN: r127825

16 years agoalias.c (memory_modified_1, [...]): Constify.
Kaveh R. Ghazi [Mon, 27 Aug 2007 03:45:06 +0000 (03:45 +0000)]
alias.c (memory_modified_1, [...]): Constify.

* alias.c (memory_modified_1, memory_modified_in_insn_p):
Constify.
* basic-block.h (tree_predicted_by_p, rtl_predicted_by_p):
Likewise.
* bb-reorder.c (copy_bb_p): Likewise.
* cfghooks.c (can_remove_branch_p, can_merge_blocks_p,
predicted_by_p, can_duplicate_block_p, block_ends_with_call_p,
block_ends_with_condjump_p): Likewise.
* cfghooks.h (can_remove_branch_p, can_merge_blocks_p,
predicted_by_p, can_duplicate_block_p, block_ends_with_call_p,
block_ends_with_condjump_p): Likewise.
* cfglayout.c (cfg_layout_can_duplicate_bb_p): Likewise.
* cfgrtl.c (can_delete_note_p, can_delete_label_p,
rtl_can_merge_blocks, cfg_layout_can_merge_blocks_p,
rtl_block_ends_with_call_p, rtl_block_ends_with_condjump_p,
need_fake_edge_p, rtl_can_remove_branch_p): Likewise.
* dbxout.c (dbx_debug_hooks, xcoff_debug_hooks): Use
debug_true_const_tree instad of debug_true_tree.
* debug.c (do_nothing_debug_hooks): Likewise.
* debug.h (ignore_block, debug_true_const_tree): Constify.
* dwarf2out.c (stack_adjust_offset, clobbers_queued_reg_save,
dwarf2out_ignore_block, is_pseudo_reg, is_tagged_type,
decl_ultimate_origin, block_ultimate_origin, lookup_decl_loc,
same_dw_val_p, add_ranges, is_subrange_type, type_is_enum,
dbx_reg_number, is_based_loc, field_type,
simple_type_align_in_bits, simple_decl_align_in_bits,
simple_type_size_in_bits, field_byte_offset, insert_float,
type_tag, member_declared_type, is_redundant_typedef,
secname_for_decl, is_inlined_entry_point): Likewise.
* emit-rtl.c (const_next_insn, const_previous_insn,
const_next_nonnote_insn, const_prev_nonnote_insn,
const_next_real_insn, const_prev_real_insn,
const_next_active_insn, const_prev_active_insn, const_next_label,
const_prev_label): Likewise.
* except.h (lookup_stmt_eh_region_fn, lookup_stmt_eh_region):
Likewise.
* haifa-sched.c (may_trap_exp, haifa_classify_insn,
find_set_reg_weight, no_real_insns_p, find_set_reg_weight,
sched_insn_is_legitimate_for_speculation_p): Likewise.
* jump.c (reversed_comparison_code_parts,
reversed_comparison_code, reversed_comparison, condjump_label):
Likewise.
* predict.c (rtl_predicted_by_p, tree_predicted_by_p): Likewise.
* reg-stack.c (stack_regs_mentioned_p, stack_regs_mentioned):
Likewise.
* rtl.h (const_previous_insn, const_next_insn,
const_prev_nonnote_insn, const_next_nonnote_insn,
const_prev_real_insn, const_next_real_insn,
const_prev_active_insn, const_next_active_insn, const_prev_label,
const_next_label, modified_between_p, modified_in_p,
const_note_storeskeep_with_call_p, condjump_label,
reversed_comparison, reversed_comparison_code,
reversed_comparison_code_parts, memory_modified_in_insn_p,
stack_regs_mentioned): Likewise.
* rtlanal.c (modified_between_p, modified_in_p, const_note_stores,
keep_with_call_p): Likewise.
* sched-deps.c (deps_may_trap_p, sched_get_condition,
conditions_mutex_p, sched_insns_conditions_mutex_psd_next_list,
sd_lists_size, sd_lists_empty_p): Likewise.
* sched-int.h (sched_insns_conditions_mutex_p,
haifa_classify_insn, no_real_insns_p,
sched_insn_is_legitimate_for_speculation_p, sd_next_list,
sd_lists_size, sd_lists_empty_p): Likewise.
* sdbout.c (sdb_debug_hooks): Likewise.
* tree-cfg.c (tree_can_merge_blocks_p, is_ctrl_altering_stmt,
stmt_ends_bb_p, tree_can_remove_branch_p, tree_can_duplicate_bb_p,
-tree_block_ends_with_call_p, tree_block_ends_with_condjump_p):
Likewise.
* tree-eh.c (lookup_stmt_eh_region_fn, lookup_stmt_eh_region,
tree_can_throw_internal): Likewise.
* tree-flow-inline.h (phi_nodes): Likewise.
* tree-flow.h (phi_nodesstmt_ends_bb_p, is_ctrl_altering_stmt,
tree_can_throw_internal, lookup_stmt_eh_region): Likewise.
* tree-gimple.c (const_get_call_expr_in): Likewise.
* tree-gimple.h (const_get_call_expr_in): Likewise.
* tree.c (const_lookup_attribute, attribute_list_equal,
attribute_list_contained): Likewise.
* tree.h (attribute_list_equal, attribute_list_contained,
const_lookup_attribute): Likewise.
* vmsdbgout.c (vmsdbgout_ignore_block): Likewise.

From-SVN: r127824