Commit Graph

69758 Commits

Author SHA1 Message Date
Vincent Celier
33420a449f bindgen.adb (Gen_Output_File_C): When switch -a was specified...
2005-07-07  Vincent Celier  <celier@adacore.com>

	* bindgen.adb (Gen_Output_File_C): When switch -a was specified, put
	the destructor/constructor attributes for <lib>final/<lib>init.

	* gnatbind.adb (Gnatbind): Allow -a to be used in conjunction with -C

From-SVN: r101692
2005-07-07 11:41:44 +02:00
Pascal Obry
2366e7c600 g-socthi-mingw.adb (C_Inet_Addr): New body used to convert the returned type on Windows.
2005-07-07  Pascal Obry  <obry@adacore.com>

	* g-socthi-mingw.adb (C_Inet_Addr): New body used to convert the
	returned type on Windows.

	* g-socthi-mingw.ads (C_Inet_Addr): Remove pragma Import for this
	routine.

	* g-socket.adb (Inet_Addr): Check for empty Image and raises an
	exception in this case.
	Simplify the code as "Image (Image'Range)" = "Image".

From-SVN: r101691
2005-07-07 11:41:29 +02:00
Jakub Jelinek
41f12ed0a9 sparc.md (stack_protect_testsi): Put clobbers after all sets in the pattern.
* config/sparc/sparc.md (stack_protect_testsi): Put clobbers after
	all sets in the pattern.
	* config/rs6000/rs6000.md (stack_protect_testsi,
	stack_protect_testdi): Likewise.

From-SVN: r101690
2005-07-07 10:26:18 +02:00
Feng Wang
bc192c773e Real commit for Hollerith constants.
From-SVN: r101689
2005-07-07 07:56:46 +00:00
Feng Wang
d3642f893a For the 60th anniversary of Chinese people��s Anti-Japan war victory.
2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

	PR fortran/16531
	PR fortran/15966
	PR fortran/18781
	* arith.c (gfc_hollerith2int, gfc_hollerith2real,
	gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
	New functions.
	(eval_intrinsic): Don't evaluate if Hollerith constant arguments exist.
	* arith.h (gfc_hollerith2int, gfc_hollerith2real,
	gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
	Add prototypes.
	* expr.c (free_expr0): Free memery allocated for Hollerith constant.
	(gfc_copy_expr): Allocate and copy string if Expr is from Hollerith.
	(gfc_check_assign): Enable conversion from Hollerith to other.
	* gfortran.h (bt): Add BT_HOLLERITH.
	(gfc_expr): Add from_H flag.
	* intrinsic.c (gfc_type_letter): Return 'h' for BT_HOLLERITH.
	(add_conversions): Add conversions from Hollerith constant to other.
	(do_simplify): Don't simplify if  Hollerith constant arguments exist.
	* io.c (resolve_tag): Enable array in FORMAT tag under GFC_STD_GNU.
	* misc.c (gfc_basetype_name): Return "HOLLERITH" for BT_HOLLERITH.
	(gfc_type_name): Print "HOLLERITH" for BT_HOLLERITH.
	* primary.c (match_hollerith_constant): New function.
	(gfc_match_literal_constant): Add match Hollerith before Integer.
	* simplify.c (gfc_convert_constant): Add conversion from Hollerith
	to other.
	* trans-const.c (gfc_conv_constant_to_tree): Use VIEW_CONVERT_EXPR to
	convert Hollerith constant to tree.
	* trans-io.c (gfc_convert_array_to_string): Get array's address and
	length to set string expr.
	(set_string): Deal with array assigned Hollerith constant and character
	array.
	* gfortran.texi: Document Hollerith constants as extention support.

2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

	PR fortran/16531
	PR fortran/15966
	PR fortran/18781
	* gfortran.dg/hollerith.f90: New.
	* gfortran.dg/hollerith2.f90: New.
	* gfortran.dg/hollerith3.f90: New.
	* gfortran.dg/hollerith4.f90: New.
	* gfortran.dg/hollerith_f95.f90: New.
	* gfortran.dg/hollerith_legacy.f90: New.
	* gfortran.dg/g77/cpp4.F: New. Port from g77.

2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

	PR fortran/16531
	* io/transfer.c (formatted_transfer): Enable FMT_A on other types to
	support Hollerith constants.

From-SVN: r101688
2005-07-07 07:54:58 +00:00
Feng Wang
378f73afe0 re PR fortran/16531 ([4.0 only, gfortran] Hollerith Data not supported)
2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

        PR fortran/16531
        PR fortran/15966
        PR fortran/18781
        * arith.c (gfc_hollerith2int, gfc_hollerith2real,
        gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
        New functions.
        (eval_intrinsic): Don't evaluate if Hollerith constant arguments exist.
        * arith.h (gfc_hollerith2int, gfc_hollerith2real,
        gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
        Add prototypes.
        * expr.c (free_expr0): Free memery allocated for Hollerith constant.
        (gfc_copy_expr): Allocate and copy string if Expr is from Hollerith.
        (gfc_check_assign): Enable conversion from Hollerith to other.
        * gfortran.h (bt): Add BT_HOLLERITH.
        (gfc_expr): Add from_H flag.
        * intrinsic.c (gfc_type_letter): Return 'h' for BT_HOLLERITH.
        (add_conversions): Add conversions from Hollerith constant to other.
        (do_simplify): Don't simplify if  Hollerith constant arguments exist.
        * io.c (resolve_tag): Enable array in FORMAT tag under GFC_STD_GNU.
        * misc.c (gfc_basetype_name): Return "HOLLERITH" for BT_HOLLERITH.
        (gfc_type_name): Print "HOLLERITH" for BT_HOLLERITH.
        * primary.c (match_hollerith_constant): New function.
        (gfc_match_literal_constant): Add match Hollerith before Integer.
        * simplify.c (gfc_convert_constant): Add conversion from Hollerith
        to other.
        * trans-const.c (gfc_conv_constant_to_tree): Use VIEW_CONVERT_EXPR to
        convert Hollerith constant to tree.
        * trans-io.c (gfc_convert_array_to_string): Get array's address and
        length to set string expr.
        (set_string): Deal with array assigned Hollerith constant and character
        array.
        * gfortran.texi: Document Hollerith constants as extention support.

2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

        PR fortran/16531
        PR fortran/15966
        PR fortran/18781
        * gfortran.dg/hollerith.f90: New.
        * gfortran.dg/hollerith2.f90: New.
        * gfortran.dg/hollerith3.f90: New.
        * gfortran.dg/hollerith4.f90: New.
        * gfortran.dg/hollerith_f95.f90: New.
        * gfortran.dg/hollerith_legacy.f90: New.
        * gfortran.dg/g77/cpp4.F: New. Port from g77.

2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

        PR fortran/16531
        * io/transfer.c (formatted_transfer): Enable FMT_A on other types to
        support Hollerith constants.

From-SVN: r101687
2005-07-07 07:54:40 +00:00
Ziemowit Laski
f5d21c4ca1 re PR objc/22274 (string[1-4].m, const-str-5.m fails with the gnu runtime)
/objc/ChangeLog]
2005-07-07  Ziemowit Laski  <zlaski@apple.com>

        PR objc/22274
        * objc-act.c (objc_build_string_object): For GNU-style constants,
        use the @interface type rather than the built-in type.

[gcc/testsuite/ChangeLog]
2005-07-07  Ziemowit Laski  <zlaski@apple.com>

        PR objc/22274
        * obj-c++.dg/gnu-runtime-[1-2].mm: New.
        * objc.dg/gnu-runtime-2.m: New.

From-SVN: r101686
2005-07-07 06:25:49 +00:00
Jeff Law
1a5577239f tree-vrp.c (simplify_using_ranges): Kill.
* tree-vrp.c (simplify_using_ranges): Kill.
        (vrp_finalize): Remove call to simplify_using_ranges.
        (simplify_stmt_using_ranges): New function extracted from
        simplify_using_ranges.
        (simplify_div_or_mod_using_ranges): Likewise.
        (simplify_abs_using_ranges): Likewise.
        (simplify_cond_using_ranges): New function.
        * tree-flow.h (simplify_stmt_using_ranges): Prototype.
        * tree-ssa-propagate.c (substitute_and_fold): Call
        simplify_stmt_using_ranges if we have range information.

        * gcc.dg/tree-ssa/vrp17.c: New test.

From-SVN: r101685
2005-07-06 23:40:49 -06:00
Kelley Cook
769b009eac config.table: Delete file.
2005-07-07  Kelley Cook  <kcook@gcc.gnu.org>

	* config.table: Delete file.  Move former contents into ...
	* configure.ac: ... here and escape any brackets for m4.
	* Makefile.in (config.status): Remove dependency on config.table.
	* configure: Regenerate.

From-SVN: r101684
2005-07-07 02:14:19 +00:00
Kelley Cook
f379ddd1e3 config.in: Regenerate for 6/20 change.
2005-07-07  Kelley Cook  <kcook@gcc.gnu.org>

	* config.in: Regenerate for 6/20 change.

From-SVN: r101683
2005-07-07 02:09:25 +00:00
Feng Wang
9f9d4c5f50 re PR fortran/22327 ([4.0 only] Wrong code in array constructor)
2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

	PR fortran/22327
	* trans-array.c (gfc_trans_array_constructor_value): Fix index of data.

2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

	PR fortran/22327
	* gfortran.dg/array_constructor_5.f90: New test.

From-SVN: r101682
2005-07-07 01:56:04 +00:00
Geoffrey Keating
9c8f9ec21b configure.in: Don't build sim or rda when targetting darwin.
* configure.in: Don't build sim or rda when targetting darwin.
	* configure: Regenerate.

From-SVN: r101680
2005-07-07 01:12:59 +00:00
James E Wilson
ae4d3291c0 Fix ia64-hpux ABI bug with varargs __float80 argument.
* config/ia64/ia64.c (ia64_expand_movxf_movrf): Don't word swap when
reading/writing general registers.
(ia64_function_arg): Revert 2005-06-18 change.

From-SVN: r101679
2005-07-06 17:20:49 -07:00
GCC Administrator
5840193b82 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r101677.2
2005-07-07 00:16:15 +00:00
James E Wilson
1ad159f91b Fix -O0 -fschedule-insns2 ICE.
* ia64.c (ia64_reorg): Check optimize before ia64_flag_schedule_isns2.

From-SVN: r101675
2005-07-06 17:10:54 -07:00
John David Anglin
06ae7eb13e pa.c (legitimize_pic_address): Use gcc_assert instead of abort.
* pa.c (legitimize_pic_address): Use gcc_assert instead of abort.
	(legitimize_tls_address): Use gcc_unreachable instead of abort.

From-SVN: r101674
2005-07-06 23:56:39 +00:00
Kaz Kojima
0b59e81ecb function.c (expand_function_end): Revert part of 2005-06-27 patch.
* function.c (expand_function_end): Revert part of 2005-06-27
	patch.  Do sjlj_emit_function_exit_after after return_label.

From-SVN: r101673
2005-07-06 23:13:51 +00:00
Jakub Jelinek
3c2d01f108 decl.c (gfc_match_entry): Allow ENTRY without parentheses even in FUNCTIONs.
* decl.c (gfc_match_entry): Allow ENTRY without parentheses
	even in FUNCTIONs.

	* gfortran.fortran-torture/execute/entry_9.f90: New test.

From-SVN: r101672
2005-07-07 00:12:25 +02:00
Kazu Hirata
ef0087a7a0 configure.in: Add --enable-libssp and --disable-libssp.
* configure.in: Add --enable-libssp and --disable-libssp.
	* configure: Regenerate with autoconf-2.13.

	* gcc/doc/install.texi (--disable-libssp): New.

From-SVN: r101668
2005-07-06 21:26:23 +00:00
Fariborz Jahanian
1d8eeb6305 Removal of -fforce-mem.
OKed by Richard Henderson.

From-SVN: r101666
2005-07-06 21:08:02 +00:00
Paul Brook
c42adccb1a aclocal.m4: Work around a bug in AC_PATH_PROGS when its last argument is empty.
* aclocal.m4: Work around a bug in AC_PATH_PROGS when its last
	argument is empty.
	* configure: Regenerate.

From-SVN: r101664
2005-07-06 20:12:53 +00:00
Tom Tromey
6dfb90cf55 InputStreamReader.java (refill): Handle no-progress case correctly.
* java/io/InputStreamReader.java (refill): Handle no-progress
	case correctly.
	* gnu/gcj/convert/IOConverter.java: Add 'utf8' alias.

From-SVN: r101663
2005-07-06 20:10:41 +00:00
J"orn Rennecke
4b7d2f0796 * sh.c (final_prescan_insn): Undo bogus change from 2005-05-09.
From-SVN: r101662
2005-07-06 20:19:18 +01:00
Daniel Berlin
4e422b8bf1 Fix PR tree-optimization/22319 Fix PR tree-optimization/22140 Fix PR tree-optimization/22310
2005-07-06  Daniel Berlin  <dberlin@dberlin.org>

	Fix PR tree-optimization/22319
	Fix PR tree-optimization/22140
	Fix PR tree-optimization/22310

	* tree-ssa-structalias.c (do_structure_copy): Give up earlier on
	variable sized types.
	Use correct type for intermediate structure on *a = *b structure
	copies.

From-SVN: r101658
2005-07-06 16:49:57 +00:00
Tom Tromey
af72a49b30 * testsuite/libjava.jacks/jacks.xfail: Removed 9.1.3-body-5.
From-SVN: r101657
2005-07-06 15:07:46 +00:00
Jakub Jelinek
5b667039e9 rs6000.h (RS6000_VARARGS_AREA, [...]): Remove.
* config/rs6000/rs6000.h (RS6000_VARARGS_AREA, RS6000_VARARGS_SIZE):
	Remove.
	(STARTING_FRAME_OFFSET): Don't add RS6000_VARARGS_AREA.
	(machine_function): Move typedef to...
	* config/rs6000/rs6000.c (machine_function): ... here.  Add
	varargs_save_offset field.
	(rs6000_stack_t): Remove varargs_size field.
	(setup_incoming_varargs): Allocate varargs save area using
	assign_stack_local, try to make it as small as possible.
	Save offset from virtual_stack_vars_rtx to the save area
	in cfun->machine->varargs_save_offset.  Use UNITS_PER_FP_WORD
	instead of magic 8 when fp word byte size is used.
	(rs6000_va_start): Use cfun->machine->varargs_save_offset
	instead of -RS6000_VARARGS_SIZE.
	(rs6000_stack_info, debug_stack_info,
	rs6000_initial_elimination_offset): Remove all traces of
	varargs_size.
	* config/rs6000/sysv4.h (RS6000_VARARGS_AREA): Remove.
	* config/rs6000/darwin.h (STARTING_FRAME_OFFSET): Don't add
	RS6000_VARARGS_AREA.

From-SVN: r101655
2005-07-06 11:16:53 +02:00
Zdenek Dvorak
c456a94a49 re PR tree-optimization/21963 (ICE (seg fault) with -m64 (in IV-OPTS))
PR tree-optimization/21963
	* tree-ssa-loop-ivopts.c (get_computation_aff): Use
	constant_multiple_of in the same way get_computation_cost_at does.

From-SVN: r101654
2005-07-06 08:13:13 +00:00
Jakub Jelinek
8ec11fe9b8 sparc.h (sparc_compare_emitted): New extern.
* config/sparc/sparc.h (sparc_compare_emitted): New extern.
	* config/sparc/sparc.c (sparc_compare_emitted): New variable.
	(gen_compare_reg): If sparc_compare_emitted is set, clear it
	and return its previous value.
	(emit_v9_brxx_insn): Assert sparc_compare_emitted is NULL.
	* config/sparc/sparc.md (UNSPEC_SP_SET, UNSPEC_SP_TEST): New
	constants.
	(stack_protect_set, stack_protect_test): New expanders.
	(stack_protect_setsi, stack_protect_setdi, stack_protect_testsi,
	stack_protect_testdi): New insns.
	* config/sparc/linux.h (TARGET_THREAD_SSP_OFFSET): Define.
	* config/sparc/linux64.h (TARGET_THREAD_SSP_OFFSET): Define.

From-SVN: r101653
2005-07-06 09:49:05 +02:00
Jeff Law
9da4058c14 tree-ssa-dce.c (cfg_altered): New global.
* tree-ssa-dce.c (cfg_altered): New global.
        (tree_dce_init): Initialize cfg_altered.
        (remove_dead_stmt): If we remove an edge in the CFG, then set
        CFG_ALTERED.
        (perform_tree_ssa_dce): If we altered the CFG, then invalidate
        the dominators.

        * gcc.c-torture/compile/pr21356.c: New test.

From-SVN: r101652
2005-07-05 23:25:57 -06:00
Kazu Hirata
1538fc3c3e Makefile.in (stamp-collect-ld): Use $(ORIGINAL_LD_FOR_TARGET) instead of $<.
* Makefile.in (stamp-collect-ld): Use
	$(ORIGINAL_LD_FOR_TARGET) instead of $<.  Don't remove
	./collect-ld if it already exists.
	(stamp-nm): Use $(ORIGINAL_NM_FOR_TARGET) instead of $<.
	Don't remove ./nm if it already exists.

From-SVN: r101651
2005-07-06 05:17:00 +00:00
Randolph Chung
b65da30441 ffi.c (ffi_struct_type): Rename FFI_TYPE_SMALL_STRUCT1 as FFI_TYPE_SMALL_STRUCT3.
* src/pa/ffi.c (ffi_struct_type): Rename FFI_TYPE_SMALL_STRUCT1
	as FFI_TYPE_SMALL_STRUCT3.  Break out handling for 5-7 byte
	structures.  Kill compilation warnings.
	(ffi_closure_inner_LINUX): Print return values as hex in debug
	message.  Rename FFI_TYPE_SMALL_STRUCT1 as FFI_TYPE_SMALL_STRUCT3.
	Properly handle 5-7 byte structure returns.
	* src/pa/ffitarget.h (FFI_TYPE_SMALL_STRUCT1)
	(FFI_TYPE_SMALL_STRUCT2): Remove.
	(FFI_TYPE_SMALL_STRUCT3, FFI_TYPE_SMALL_STRUCT5)
	(FFI_TYPE_SMALL_STRUCT6, FFI_TYPE_SMALL_STRUCT7): Define.
	* src/pa/linux.S: Mark source file as using PA1.1 assembly.
	(checksmst1, checksmst2): Remove.
	(checksmst3): Optimize handling of 3-byte struct returns.
	(checksmst567): Properly handle 5-7 byte struct returns.

From-SVN: r101650
2005-07-06 03:37:20 +00:00
Devang Patel
00518cb117 tree-vectorizer.h (struct _loop_vec_info): Remove loop_line_number.
* tree-vectorizer.h (struct _loop_vec_info): Remove loop_line_number.
        (LOOP_VINFO_LOC, LOOP_LOC): Remove.
        * tree-vectorizer.c (vect_loop_location): New.
        (vect_print_dump_info): Use vect_loop_location.
        (new_loop_vec_info): Do not set LOOP_VINFO_LOC.
        (vectorize_loops): Set vect_loop_location.
        * tree-vect-analyze.c (vect_analyze_offset_expr,
        vect_determin_vectorization_factor, vect_analyze_operations,
        vect_analyze_scalar_cycles, vect_analyze_data_ref_dependence,
        vect_analyze_data_ref_dependences, vect_compute_data_ref_alignment,
        vect_analyze_data_refs_alignment, vect_analyze_data_ref_access,
        vect_analyze_data_ref_accesses, vect_analyze_pointer_ref_access,
        vect_object_analysis, vect_analyze_data_refs, vect_mark_relevant,
        vect_stmt_relevant_p, vect_mark_stmts_to_be_vectorized,
        vect_can_advance_ivs_p, vect_get_loop_niters, vect_analyze_loop_form,
        vect_analyze_loop): Adjust vect_print_dump_info API.
        * tree-vect-transform.c (vect_create_addr_base_for_vector_ref,
        vect_create_data_ref_ptr, vect_init_vector, vect_get_vec_def_for_operand,
        vect_finish_stmt_generation, vectorizable_assignment,
        vectorizable_operation, vectorizable_store, vectorizable_load,
        vectorizable_live_operation, vectorizable_condition, vect_transform_stmt,
        vect_update_ivs_after_vectorizer, vect_do_peeling_for_loop_bound,
        vect_gen_ninters_for_prolog_loop, vect_do_peeling_for_alignment,
        vect_transform_loop): Same.
        * tree-vectorizer.c (get_vectype_for_scalar_type, vect_is_simple_use,
        vect_is_simple_reduction, vect_is_simple_iv_evolution, vectorize_loops):
        Same.

From-SVN: r101649
2005-07-05 19:25:08 -07:00
Randolph Chung
51076f9604 configure.ac (hppa*-*-linux*): Check for a TLS capable gas.
* configure.ac (hppa*-*-linux*: Check for a TLS capable gas.
	* configure: Regenerate.
	* config/pa/pa-protos.h (tls_symbolic_operand): Declare.
	(pa_tls_referenced_p): Declare.
	* config/pa/pa.c (legitimize_pic_address): Reject TLS operands.
	(gen_tls_tga, gen_tls_get_addr, hppa_tls_call): New.
	(legitimize_tls_address): New.
	(hppa_legitimize_address): Handle TLS addresses.
	(pa_tls_symbol_ref_1, pa_tls_referenced_p): New.
	(TARGET_CANNOT_FORCE_CONST_MEM): Define.
	(emit_move_sequence): Handle TLS addresses.
	(pa_encode_section_info): Call default handler to handle common
	sections.
	* config/pa/pa.h (PA_SYMBOL_REF_TLS_P): New.
	(CONSTANT_ADDRESS_P): Reject TLS operands.
	(TARGET_HAVE_TLS) [HAVE_AS_TLS]: Define.
	* config/pa/pa.md (UNSPEC_TP, UNSPEC_TLSGD, UNSPEC_TLSLDM)
	(UNSPEC_TLSLDO, UNSPEC_TLSLDBASE, UNSPEC_TLSIE)
	(UNSPEC_TLSLE): Define new constants.
	(tgd_load, tld_load, tld_offset_load, tp_load, tie_load, tle_load): New.
	* config/pa/predicates.md (symbolic_operand): Reject TLS operands.
	(tls_symbolic_operand, tgd_symbolic_operand, tld_symbolic_operand)
	(tie_symbolic_operand, tle_symbolic_operand): New

From-SVN: r101648
2005-07-06 02:18:21 +00:00
Kelley Cook
f04f1d2c63 aclocal.m4: Update macros for autoconf 2.59 style.
2005-07-06  Kelley Cook  <kcook@gcc.gnu.org>

	* aclocal.m4: Update macros for autoconf 2.59 style.
	* configure.ac: Likewise.

From-SVN: r101647
2005-07-06 01:56:56 +00:00
John David Anglin
2a04824b9f pa.c (function_value): Handle small aggregates on 32-bit targets.
* pa.c (function_value): Handle small aggregates on 32-bit targets.
	(function_arg): Pass small aggregates in general registers on 32-bit
	targets.
	* som.h (MEMBER_TYPE_FORCES_BLK): Delete define.

From-SVN: r101646
2005-07-06 01:22:55 +00:00
GCC Administrator
4bf8e11853 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r101643.2
2005-07-06 00:16:26 +00:00
Paolo Carlini
872d8fea40 Add class __versa_string, a versatile "basic_string-type" class...
2005-07-05  Paolo Carlini  <pcarlini@suse.de>

	Add class __versa_string, a versatile "basic_string-type" class:
	an additional, non-standard, template parameter allows to specify
	the preferred base class. Two are provided: __rc_string_base,
	which implements a behavior very similar to our standard string,
	and __sso_string_base, not reference-counted and optimized for
	short strings.
	* include/ext/rc_string_base.h: New.
	* include/ext/sso_string_base.h: Likewise.
	* include/ext/vstring.h: Likewise.
	* include/ext/vstring.tcc: Likewise.
	* include/ext/vstring_fwd.h: Likewise.
	* include/ext/vstring_util.h: Likewise.
	* include/Makefile.am: Add.
	* include/Makefile.in: Regenerate.
	* testsuite/ext/vstring/explicit_instantiation/1.cc: New.
	* testsuite/ext/vstring/explicit_instantiation/2.cc: Likewise.
	* testsuite/ext/vstring/explicit_instantiation/char/1.cc: Likewise.
	* testsuite/ext/vstring/explicit_instantiation/wchar_t/1.cc: Likewise.

	* Makefile.in: Regenerate with autotools 1.9.3 (to date, the version
	officially used by v3).
	* aclocal.m4: Likewise.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* po/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.

From-SVN: r101639
2005-07-05 23:07:18 +00:00
Andrew Pinski
83522e1870 Makefile.in (final.o): Fix dependencies.
2005-07-05  Andrew Pinski  <pinskia@physics.uc.edu>

        * Makefile.in (final.o): Fix dependencies.

From-SVN: r101638
2005-07-05 15:37:50 -07:00
Bryce McKinlay
b226520a2d re PR java/19674 (Empty declaration through semicolon (;) causes compile failure)
2005-07-05  Bryce McKinlay  <mckinlay@redhat.com>

        PR java/19674
        * parse.y (interface_member_declaration): Allow empty statements in
        interface declarations.

2005-07-05  Bryce McKinlay  <mckinlay@redhat.com>

	* testsuite/libjava.compile/PR19674.java: New test.

From-SVN: r101634
2005-07-05 22:09:57 +01:00
Joseph Myers
73f397d429 re PR c/22013 (ICE in gimple_add_tmp_var, at gimplify.c:535)
PR c/22013
	PR c/22098
	* langhooks.h (struct lang_hooks): Add expr_to_decl.
	* langhooks.c (lhd_expr_to_decl): New.
	* langhooks-def.h (lhd_expr_to_decl, LANG_HOOKS_EXPR_TO_DECL):
	New.
	(LANG_HOOKS_INITIALIZER): Update.
	* tree.c (recompute_tree_invarant_for_addr_expr): Call
	expr_to_decl langhook.
	* c-tree.h (c_expr_to_decl): Declare.
	* c-typeck.c (c_expr_to_decl): New.
	(build_unary_op): Do not handle ADDR_EXPR of COMPOUND_LITERAL_EXPR
	specially.
	* c-objc-common.h (LANG_HOOKS_EXPR_TO_DECL): Define.

testsuite:
	* gcc.c-torture/compile/pr22013-1.c,
	gcc.c-torture/execute/pr22098-1.c,
	gcc.c-torture/execute/pr22098-2.c,
	gcc.c-torture/execute/pr22098-3.c: New tests.

From-SVN: r101630
2005-07-05 18:50:24 +01:00
Joseph Myers
692a7aa3a5 re PR c/22308 (Failure to diagnose violation of constraint 6.516p2)
PR c/22308
	* c-decl.c (finish_struct): Also copy C_TYPE_FIELDS_READONLY,
	C_TYPE_FIELDS_VOLATILE and C_TYPE_VARIABLE_SIZE to type variants.

testsuite:
	* gcc.dg/pr22308-1.c: New test.

From-SVN: r101629
2005-07-05 18:34:29 +01:00
Aaron Luchko
2d95cce3c9 StringReferenceCommandSet.java: New file.
* gnu/classpath/jdwp/processor/StringReferenceCommandSet.java:
        New file.

From-SVN: r101628
2005-07-05 17:26:38 +00:00
Paolo Bonzini
ef3303124e Makefile.in: Adjust dependencies.
2005-07-05  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.in: Adjust dependencies.
	* tree-pass.h: Add new passes and passes formerly in tree-optimize.c.
	* basic-block.h (duplicate_computed_gotos): Remove, it is now static.
	* alias.c (rest_of_handle_cfg, pass_cfg): New.
	* bb-reorder.c (duplicate_computed_gotos): Make it static.
	* cfgexpand.c (tree_expand_cfg): Add code formerly at the beginning of
	rest_of_compilation.

	* bb-reorder.c (gate_duplicate_computed_gotos,
	pass_duplicate_computed_gotos, gate_handle_reorder_blocks,
	rest_of_handle_reorder_blocks, pass_reorder_blocks,
	gate_handle_partition_blocks, rest_of_handle_partition_blocks,
	pass_partition_blocks): New.
	* bt-load.c (gate_handle_branch_target_load_optimize,
	rest_of_handle_branch_target_load_optimize,
	pass_branch_target_load_optimize): New.
	* cfgcleanup.c (rest_of_handle_jump, pass_jump, rest_of_handle_jump2,
	pass_jump2): New.
	* cfglayout.c (pass_insn_locators_initialize): New.
	* cfgrtl.c (pass_free_cfg): New.
	* combine.c (gate_handle_combine, rest_of_handle_combine,
	pass_combine): New.
	* cse.c (gate_handle_cse, rest_of_handle_cse, pass_cse,
	gate_handle_cse2, rest_of_handle_cse2, pass_cse2): New.
	* emit-rtl.c (pass_unshare_all_rtl, pass_remove_unnecessary_notes): New.
	* except.c (pass_set_nothrow_function_flags,
	pass_convert_to_eh_region_ranges, gate_handle_eh, rest_of_handle_eh,
	pass_rtl_eh): New.
	* final.c (pass_compute_alignments, rest_of_handle_final, pass_final,
	rest_of_handle_shorten_branches, pass_shorten_branches,
	rest_of_clean_state, pass_clean_state): New.
	* flow.c (pass_recompute_reg_usage, gate_remove_death_notes,
	rest_of_handle_remove_death_notes, pass_remove_death_notes,
	rest_of_handle_life, pass_life, rest_of_handle_flow2,
	pass_flow2): New.
	* function.c (pass_instantiate_virtual_regs, pass_init_function,
	rest_of_handle_check_leaf_regs, pass_leaf_regs): New.
	* gcse.c (gate_handle_jump_bypass, rest_of_handle_jump_bypass,
	pass_jump_bypass, gate_handle_gcse, rest_of_handle_gcse,
	pass_gcse): New.
	* global.c (rest_of_handle_global_alloc, pass_global_alloc): New.
	* ifcvt.c (gate_handle_if_conversion, rest_of_handle_if_conversion,
	pass_rtl_ifcvt, gate_handle_if_after_combine,
	rest_of_handle_if_after_combine, pass_if_after_combine,
	gate_handle_if_after_reload, rest_of_handle_if_after_reload,
	pass_if_after_reload): New.
	* integrate.c (pass_initial_value_sets): New.
	* jump.c (pass_cleanup_barriers, purge_line_number_notes,
	pass_purge_lineno_notes): New.
	* mode-switching.c (rest_of_handle_mode_switching,
	pass_mode_switching): New.
	* local-alloc.c (rest_of_handle_local_alloc, pass_local_alloc): New.
	* loop-init.c (gate_handle_loop2, rest_of_handle_loop2,
	pass_loop2): New.
	* loop.c (gate_handle_loop_optimize, rest_of_handle_loop_optimize,
	pass_loop_optimize): New.
	* modulo-sched.c (gate_handle_sms, rest_of_handle_sms,
	pass_sms): New.
	* postreload-gcse.c (gate_handle_gcse2, rest_of_handle_gcse2,
	pass_gcse2): New.
	* postreload.c (gate_handle_postreload, rest_of_handle_postreload,
	pass_postreload_cse): New.
	* profile.c (gate_handle_profiling, pass_profiling,
	rest_of_handle_branch_prob, pass_branch_prob): New.
	* recog.c (pass pass_split_for_shorten_branches, gate_do_final_split,
	pass_split_before_regstack, gate_handle_split_before_regstack,
	gate_handle_peephole2, rest_of_handle_peephole2, pass_peephole2,
	rest_of_handle_split_all_insns, pass_split_all_insns): New.
	* reg-stack.c (gate_handle_stack_regs, rest_of_handle_stack_regs,
	pass_stack_regs): New.
	* regmove.c (gate_handle_regmove, rest_of_handle_regmove, pass_regmove,
	gate_handle_stack_adjustments, rest_of_handle_stack_adjustments,
	pass_stack_adjustments): New.
	* regrename.c (gate_handle_regrename, rest_of_handle_regrename,
	pass_regrename): New.
	* reorg.c (gate_handle_delay_slots, rest_of_handle_delay_slots,
	pass_delay_slots, gate_handle_machine_reorg,
	rest_of_handle_machine_reorg, pass_machine_reorg): New.
	* rtl.h (extern void purge_line_number_notes): New.
	* sched-rgn.c (gate_handle_sched, rest_of_handle_sched,
	gate_handle_sched2, rest_of_handle_sched2, pass_sched,
	pass_sched2): New.
	* tracer.c (gate_handle_tracer, rest_of_handle_tracer,
	pass_tracer): New.
	* value-prof.c (gate_handle_value_profile_transformations,
	rest_of_handle_value_profile_transformations,
	pass_value_profile_transformations): New.
	* var-tracking.c (gate_handle_var_tracking,
	pass_variable_tracking): New.
	* web.c (gate_handle_web, rest_of_handle_web, pass_web): New.

	* passes.c (open_dump_file, close_dump_file, rest_of_handle_final,
	rest_of_handle_delay_slots, rest_of_handle_stack_regs,
	rest_of_handle_variable_tracking, rest_of_handle_machine_reorg,
	rest_of_handle_old_regalloc, rest_of_handle_regrename,
	rest_of_handle_reorder_blocks, rest_of_handle_partition_blocks,
	rest_of_handle_sms, rest_of_handle_sched, rest_of_handle_sched2,
	rest_of_handle_gcse2, rest_of_handle_regmove,
	rest_of_handle_tracer, rest_of_handle_if_conversion,
	rest_of_handle_if_after_combine, rest_of_handle_if_after_reload,
	rest_of_handle_web, rest_of_handle_branch_prob,
	rest_of_handle_value_profile_transformations, rest_of_handle_cfg,
	rest_of_handle_jump_bypass, rest_of_handle_combine,
	rest_of_handle_life, rest_of_handle_cse, rest_of_handle_cse2,
	rest_of_handle_gcse, rest_of_handle_loop_optimize,
	rest_of_handle_loop2, rest_of_handle_branch_target_load_optimize,
	rest_of_handle_mode_switching, rest_of_handle_jump,
	rest_of_handle_eh, rest_of_handle_stack_adjustments,
	rest_of_handle_flow2, rest_of_handle_jump2,
	rest_of_handle_peephole2, rest_of_handle_postreload,
	rest_of_handle_shorten_branches, rest_of_clean_state,
	rest_of_compilation): Remove.

	* cgraphunit.c (ipa_passes): Moved from tree-optimize.c.
	* passes.c (dump_flags, in_gimple_form, all_passes,
	all_ipa_passes, all_lowering_passes, register_one_dump_file,
	register_dump_files, next_pass_1, last_verified, execute_todo,
	execute_one_pass, execute_pass_list, execute_ipa_pass_list): Moved
	from tree-optimize.c.
	(init_optimization_passes): Moved from tree-optimize.c,
	adding the RTL optimizations.
	* tree-dump.h (dump_info_p, dump_flag): Moved from tree.h.
	* tree-optimize.c (dump_flags, in_gimple_form, all_passes,
	all_ipa_passes, all_lowering_passes, register_one_dump_file,
	register_dump_files, next_pass_1, last_verified, execute_todo,
	execute_one_pass, execute_pass_list, execute_ipa_pass_list,
	init_tree_optimization_passes, ipa_passes): Delete.
	* tree-pass.h (enum tree_dump_index): Moved from tree.h, removing
	the RTL dumps.
	(TDF_*, get_dump_file_name, dump_enabled_p, dump_initialized_p,
	dump_begin, dump_end, dump_node, dump_switch_p, dump_flag_name): Moved
	from tree.h.
	(ipa_passes): Remove.
	(all_passes, all_ipa_passes, all_lowering_passes): Now extern.
	* tree.h (enum tree_dump_index, TDF_*, get_dump_file_name,
	dump_enabled_p, dump_initialized_p, dump_begin, dump_end, dump_node,
	dump_switch_p, dump_flag_name): Moved to tree-pass.h.
	(dump_info_p, dump_flag): Moved to tree-dump.h.

	* Makefile.in: Adjust dependencies for tree-pretty-print.c,
	cgraph.c, opts.c.
	* passes.c (finish_optimization_passes): Use dump_begin
	and dump_end, TDI_end.
	(gate_rest_of_compilation): New.
	(pass_rest_of_compilation): Use it.
	(gate_postreload, pass_postreload): New.
	* toplev.c (general_init): Rename init_tree_optimization_passes.
	* toplev.h (init_tree_optimization_passes): Rename to
	init_optimizations_passes.
	* tree-dump.c (dump_flag): Make static.
	(dump_files): Remove RTL dumps.
	* tree-optimize.c (pass_all_optimizations, pass_early_local_passes,
	pass_cleanup_cfg, pass_free_cfg_annotations,
	pass_cleanup_cfg_post_optimizing, pass_free_datastructures,
	pass_init_datastructures, pass_fixup_cfg): Make non-static.
	* tree-pretty-print.c: Include tree-pass.h.
	* cgraph.c: Include tree-dump.h.

cp:
2005-07-05  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.in (class.o, decl2.o): Adjust dependencies.
	* class.c: Include tree-dump.h.
	* decl2.c: Include tree-dump.h.

java:
2005-07-05  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.in (parse.o): Adjust dependencies.
	* parse.y: Include tree-dump.h.

From-SVN: r101627
2005-07-05 16:20:53 +00:00
Daniel Berlin
47bcb538b4 tree-ssa-structalias.c (get_constraint_exp_from_ssa_var): Only fall back to saying it points to readonly memory if we can't do better.
2005-07-04  Daniel Berlin  <dberlin@dberlin.org>

	* tree-ssa-structalias.c (get_constraint_exp_from_ssa_var):
	Only fall back to saying it points to readonly memory if
	we can't do better.

From-SVN: r101625
2005-07-05 15:31:17 +00:00
Kazuhiro Inaoka
cdc9bfe6aa m32r-protos.h: Remove m32r_finalize_pic.
* config/m32r/m32r-protos.h: Remove m32r_finalize_pic.
	* config/m32r/m32r.c (m32r_compute_frame_size,
	m32r_expand_prologue): Take current_function_profile into
	account whenever we reference
	current_function_uses_pic_offset_table.
	(m32r_finalize_pic): Remove.
	* config/m32r/m32r.h (FINALIZE_PIC): Likewise.

From-SVN: r101624
2005-07-05 14:16:06 +00:00
Paolo Bonzini
064be44503 ChangeLog for January-June 2005 rotated into ChangeLog-2005.
From-SVN: r101623
2005-07-05 12:14:51 +00:00
Kazu Hirata
96f527526a Makefile.in (stamp-as): Use $(ORIGINAL_AS_FOR_TARGET) instead of $<.
* Makefile.in (stamp-as): Use $(ORIGINAL_AS_FOR_TARGET)
	instead of $<.  Don't remove ./as if it already exists.

From-SVN: r101621
2005-07-05 06:57:40 +00:00
Kazu Hirata
e21ba9318a Makefile.in (stamp-as): Use $(ORIGINAL_AS_FOR_TARGET) instead of $<.
* Makefile.in (stamp-as): Use $(ORIGINAL_AS_FOR_TARGET)
	instead of $<.  Don't remove ./as if it already exists.

From-SVN: r101620
2005-07-05 06:56:55 +00:00
Eric Botcazou
9bae279793 Add due credit.
From-SVN: r101619
2005-07-05 06:30:27 +00:00
John David Anglin
47971fa72d re PR target/21723 (ICE while building libgfortran)
PR target/21723
	* pa.md: Remove fcpy alternative from movhi and movqi patterns.
	* pa32-regs.h (HARD_REGNO_NREGS): Return two floating point registers
	for complex modes when generating code for PA 1.0.
	(VALID_FP_MODE_P): New macro.
	(HARD_REGNO_MODE_OK): Use VALID_FP_MODE_P.  Use non-overlapping register
	sets for all general and floating point modes.  Align wide floating
	point modes to even register boundaries to comply with architectural
	requirements.
	(CLASS_MAX_NREGS): Update to align with change to HARD_REGNO_NREGS.
	* pa64-regs.h (HARD_REGNO_NREGS): Update comment and formatting.
	(VALID_FP_MODE_P): New macro.
	(HARD_REGNO_MODE_OK): Use VALID_FP_MODE_P.  Use non-overlapping register
	sets for all general and floating point modes.  Align wide floating
	point modes to even register boundaries to comply with architectural
	requirements.

From-SVN: r101613
2005-07-05 01:57:01 +00:00