69395 Commits

Author SHA1 Message Date
Jakub Jelinek
d9725c411c re PR middle-end/17965 (ice in expand_call)
PR middle-end/17965
	* calls.c (expand_call, emit_library_call_value_1): Use xmalloc/free
	instead of alloca for really big argument sizes.

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

From-SVN: r101333
2005-06-26 07:27:14 +02:00
Jakub Jelinek
19dbbf3697 re PR middle-end/22028 (ICE after invalid struct declaration)
PR middle-end/22028
	* gimplify.c (gimplify_type_sizes): Check for type == error_mark_node
	earlier in the function.

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

From-SVN: r101332
2005-06-26 07:23:48 +02:00
Jakub Jelinek
7a1df4e2d7 trans-stmt.c (gfc_trans_forall_1): Prefer to use smaller logical type than boolean_type_node.
* trans-stmt.c (gfc_trans_forall_1): Prefer to use smaller logical
	type than boolean_type_node.

From-SVN: r101331
2005-06-26 07:21:25 +02:00
Jakub Jelinek
03fd9aa2c7 regrename.c (copy_value): Don't replace fixed or global regs with older regs.
* regrename.c (copy_value): Don't replace fixed or global
	regs with older regs.

From-SVN: r101330
2005-06-26 07:20:30 +02:00
Jakub Jelinek
f62c8a5c79 defaults.h (FRAME_GROWS_DOWNWARD): Define to 0 if not defined.
* defaults.h (FRAME_GROWS_DOWNWARD): Define to 0 if not defined.
	* function.c (get_func_frame_size): Use if (FRAME_GROWS_DOWNWARD)
	instead of preprocessor conditionals.
	(assign_stack_local_1, assign_stack_temp_for_type): Likewise.
	* cfgexpand.c (FRAME_GROWS_DOWNWARD): Don't redefine to 1 or 0
	depending on if it was or was not defined previously.
	* doc/rtl.texi (VIRTUAL_STACK_VARS_REGNUM): Mention that only non-zero
	definition of FRAME_GROWS_DOWNWARD means frame grows downward.
	* doc/tm.texi (FRAME_GROWS_DOWNWARD): Likewise.
	* config/m68hc11/m68hc11.h (FRAME_GROWS_DOWNWARD): Define to 0.  Update
	comment.
	* config/pa/pa.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/rs6000/rs6000.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/stormy16/stormy16.h (FRAME_GROWS_DOWNWARD): Define to 0.
	* config/c4x/c4x.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/sh/sh.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/ia64/ia64.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/iq2000/iq2000.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/pdp11/pdp11.h (FRAME_GROWS_DOWNWARD): Define to 1.  Update
	comment.
	* config/i860/i860.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/h8300/h8300.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/arc/arc.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/vax/vax.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/sparc/sparc.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/i386/i386.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/fr30/fr30.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/frv/frv.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/mn10300/mn10300.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/bfin/bfin.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/ns32k/ns32k.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/v850/v850.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/alpha/alpha.h (FRAME_GROWS_DOWNWARD): Update comment.
	* config/s390/s390.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/arm/arm.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/alpha/unicosmk.h (FRAME_GROWS_DOWNWARD): Define to 1.
	* config/cris/cris.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/m68k/m68k.h (FRAME_GROWS_DOWNWARD): Likewise.
	* config/mmix/mmix.h (FRAME_GROWS_DOWNWARD): Likewise.

From-SVN: r101329
2005-06-26 07:18:53 +02:00
Kazu Hirata
567fb6602c re PR tree-optimization/22026 (ACATS FAIL C45331A fixed point wrong code (VRP related))
gcc/
	PR tree-optimization/22026
	* tree-vrp.c (extract_range_from_binary_expr): Drop to
	VR_VARYING if a binary expression involving VR_ANTI_RANGE is
	PLUS_EXPR, MINUS_EXPR, or unsigned MULT_EXPR.

testsuite/
	PR tree-optimization/22026
	* gcc.dg/tree-ssa/pr22026.c: New.

From-SVN: r101328
2005-06-26 03:49:20 +00:00
Kazu Hirata
e4ca1c958e Makefile.in (OBJS-common): Remove duplicate object file names.
* Makefile.in (OBJS-common): Remove duplicate object file
	names.

From-SVN: r101327
2005-06-26 03:26:49 +00:00
GCC Administrator
59d1dc9ef0 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r101325.2
2005-06-26 00:16:19 +00:00
Jakub Jelinek
60df4c1cd5 Move misplaced ChangeLog entry.
From-SVN: r101323
2005-06-25 23:06:46 +02:00
Jan Hubicka
afc970a415 tree-ssa-phiopt.c (replace_phi_edge_with_variable): Update profile.
* tree-ssa-phiopt.c (replace_phi_edge_with_variable): Update profile.
	* cfg.c (update_bb_profile_for_threading): Fix rescaling.

From-SVN: r101322
2005-06-25 11:59:55 +00:00
Jan Hubicka
5d9f607b1b passes.c (rest_of_handle_branch_prob): Do not rebuild profiling info when not neecesary
* passes.c (rest_of_handle_branch_prob): Do not rebuild profiling info
	when not neecesary
	(rest_of_compilation): Fix conditional on branch prob pass.
	* predict.c (tree_estimate_probability): Enable strip_builtin_expect
	when not loop optimizing.

From-SVN: r101321
2005-06-25 11:57:53 +00:00
Bernd Schmidt
49373252db bfin.md (ror_one, [...]): New patterns.
* config/bfin/bfin.md (ror_one, rol_one, ashrdi3, ashldi3, lshrdi3):
	New patterns.
	(movbi): Add alternative to set CC to zero.
	(compare_eq, compare_ne, compare_le, compare_lt, compare_leu,
	compare_ltu): Now named patterns.

From-SVN: r101320
2005-06-25 11:52:32 +00:00
Jan Hubicka
6e0fbdd978 builtins.c (define_builtin): Accept new flags parameter.
* builtins.c (define_builtin): Accept new flags parameter.
	(initialize_builtins): Mark the builtins const and nothrow accordingly.

From-SVN: r101319
2005-06-25 11:22:50 +00:00
Thomas Koenig
0e6d033bc8 [multiple changes]
2005-06-25  Thomas Koenig  <Thomas.Koenig@online.de>

        PR libfortran/22144
        * m4/cshift1.m4: Remove const from argument ret.
        Populate return array descriptor if ret->data is NULL.
        * m4/eoshift1.m4: Likewise.
        * m4/eoshift3.m4: Likewise.
        * generated/cshift1_4.c:  Regenerated.
        * generated/cshift1_8.c:  Regenerated.
        * generated/eoshift1_4.c:  Regenerated.
        * generated/eoshift1_8.c:  Regenerated.
        * generated/eoshift3_4.c:  Regenerated.
        * generated/eoshift3_8.c:  Regenerated.

2005-06-25  Thomas Koenig <Thomas.Koenig@online.de>

        PR libfortran/21144
        * gfortran.dg/shift-alloc.f90:  New testcase.

From-SVN: r101318
2005-06-25 09:56:37 +00:00
Kelley Cook
366ccddb2b Update FSF address.
From-SVN: r101317
2005-06-25 02:02:01 +00:00
Kelley Cook
f115b6539d Update FSF address.
From-SVN: r101316
2005-06-25 01:45:27 +00:00
Kelley Cook
a8aa023e43 Update FSF address
From-SVN: r101315
2005-06-25 01:32:49 +00:00
R. Kelley Cook
39d14ddaac Update FSF address.
From-SVN: r101314
2005-06-25 01:22:41 +00:00
R. Kelley Cook
6c912b0cb6 Update FSF address.
From-SVN: r101313
2005-06-25 01:11:52 +00:00
Kelley Cook
1788952fea Update FSF address.
From-SVN: r101312
2005-06-25 00:59:41 +00:00
Kelley Cook
356f9ab377 gengtype.c: Update FSF address in copyright header.
2005-06-25  Kelley Cook  <kcook@gcc.gnu.org>

	* gengtype.c: Update FSF address in copyright header.
	(create_file): Update FSF in outputed copyright header.

From-SVN: r101311
2005-06-25 00:55:40 +00:00
Kelley Cook
ab57747bb0 Update FSF address.
From-SVN: r101310
2005-06-25 00:40:37 +00:00
Kelley Cook
f12c30a8f1 Update FSF address.
From-SVN: r101309
2005-06-25 00:33:05 +00:00
GCC Administrator
41fbc02fda Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r101307.2
2005-06-25 00:16:21 +00:00
Geoffrey Keating
246e0bd879 inclhack.def (AAB_darwin7_9_long_double_funcs): New.
* inclhack.def (AAB_darwin7_9_long_double_funcs): New.
	(AAB_darwin7_9_long_double_funcs_2): New.
	* fixincl.x: Regenerate.

From-SVN: r101305
2005-06-24 23:43:15 +00:00
Jerry DeLisle
1e399e2331 re PR fortran/21915 ([4.0 only] Would like atanh etc. as intrinsics)
2005-06-24  Jerry DeLisle <jvdelisle@verizon.net>

    PR fortran/21915
    * gfortran.h: Add symbols for new intrinsics
    * intrinsic.c: Add acosh, asinh, and atanh
    * intrinsic.h: Add prototypes
    * iresolve.c (gfc_resolve_acosh): New function
    (gfc_resolve_asinh): New
    (gfc_resolve_atanh): New
    * mathbuiltins.def: Add defines
    * simplify.c (gfc_simplify_acosh): New function
    (gfc_simplify_asinh): New
    (gfc_simplify_atanh): New

From-SVN: r101304
2005-06-24 23:12:32 +00:00
Jerry DeLisle
e138a19f6b re PR fortran/21915 ([4.0 only] Would like atanh etc. as intrinsics)
2005-06-24  Jerry DeLisle <jvdelisle@verizon.net>

    PR libfortran/21915
    * intrinsics/hyper.c: New file, adds wrapper functions

From-SVN: r101303
2005-06-24 23:09:47 +00:00
Jerry DeLisle
f02d008e26 re PR fortran/21915 ([4.0 only] Would like atanh etc. as intrinsics)
2005-06-24  Jerry DeLisle <jvdelisle@verizon.net>

    PR libfortran/21915
    * Makefile.am: include intrinsics/hyper.c
    * c99_protos.h: add prototypes for single precision versions of
    acosh, asinh, and atanh for platforms that do not have these
    * config.h.in: add #undef for wrappers
    * configure.ac: add checks for single precision versions
    * aclocal.m4: generated
    * Makefile.in: generated
    * configure: generated

From-SVN: r101302
2005-06-24 23:07:13 +00:00
Tom Tromey
42c5169549 natClassLoader.cc (_Jv_UnregisterClass): Handle case where class' name is NULL.
* java/lang/natClassLoader.cc (_Jv_UnregisterClass): Handle case
	where class' name is NULL.
	(_Jv_FindClass): Don't wait for class state.
	* java/lang/natVMClassLoader.cc (defineClass): Only unregister if
	name found.
	* include/java-interp.h (_Jv_DefineClass): Updated.
	* defineclass.cc (_Jv_DefineClass): Added 'name_result' argument.
	(struct _Jv_ClassReader): Likewise.
	(found_name): New field.
	(handleClassBegin): Set *found_name.
	(_Jv_VerifyMethodSignature): Handle case where ptr==NULL.
	(handleClassBegin): Throw error if super class not set.
	(read_methods): Correctly call check_tag and prepare_pool_entry.

From-SVN: r101301
2005-06-24 22:48:33 +00:00
Tom Tromey
b7938f087d * boehm.cc (_Jv_MarkObj): Handle case where field's type is NULL.
From-SVN: r101300
2005-06-24 22:14:03 +00:00
Tom Tromey
aca02b7e00 verify-impl.c (verify_instructions_0): Correctly handle situation where PC falls off end.
gcc/java/:
	* verify-impl.c (verify_instructions_0): Correctly handle
	situation where PC falls off end.
libjava/:
	* verify.cc (verify_instructions_0): Correctly handle situation
	where PC falls off end.

From-SVN: r101299
2005-06-24 22:09:15 +00:00
Tom Tromey
6a05987083 interpret.cc (compile): Handle case where table entry is outside of PC range.
* interpret.cc (compile): Handle case where table entry is
	outside of PC range.

From-SVN: r101298
2005-06-24 22:04:11 +00:00
Kazu Hirata
011646f5ef cfglayout.c (block_locators_locs, [...]): Change the type to VEC(int,heap)*.
* cfglayout.c (block_locators_locs, line_locators_locs,
	line_locators_lines, file_locators_locs): Change the type to
	VEC(int,heap)*.
	(insn_locators_initialize, change_scope, insn_scope,
	locator_line, insn_line, locator_file): Use VEC instead of
	VARRAY.

From-SVN: r101297
2005-06-24 21:55:32 +00:00
Jason Merrill
0620800904 tree-nrv.c (tree_nrv): Fix to check assignments to the RESULT_DECL rather than just RETURN_EXPRs.
* tree-nrv.c (tree_nrv): Fix to check assignments to the
        RESULT_DECL rather than just RETURN_EXPRs.
        (finalize_nrv_r): Adjust.

From-SVN: r101296
2005-06-24 15:30:20 -04:00
Jan Hubicka
ce91e74c18 tree-optimize.c (init_tree_optimization_passes): Fix flags of all_passes and all_ipa_passes.
* tree-optimize.c (init_tree_optimization_passes): Fix flags of
	all_passes and all_ipa_passes.

	* c-common.c: Include cgraph.h
	(handle_externally_visible_attribute): New function.
	(c_common_att): Add "externally_visible" attribute.
	* cgraph.c (decide_is_variable_needed): Obey externally
	visible flag.
	(cgraph_varpool_finalize_decl): Avoid redundant checking.
	* cgraph.h (struct cgraph_node): New flag externally_visible.
	(decide_is_function_needed): Obey externally visible flag.
	(cgraph_finalize_function): Avoid redundant checks.
	(cgraph_function_and_variable_visibility): Bring symbols local
	when asked for.
	* common.opt (fwhole-program): New flag.

	* doc/invoke.texi (-fwhole-program): Document.

From-SVN: r101295
2005-06-24 15:14:04 +00:00
Jason Merrill
62765fb14a tweak comment
From-SVN: r101294
2005-06-24 10:21:13 -04:00
Mark Mitchell
707db096bc re PR tree-optimization/22171 (gcc-4.0-20050623 internal compiler error in linux/drivers/serial/8250.c)
PR 22171
	* tree-ssa-operands (get_expr_operands): Check s_ann for NULL
	before use.

From-SVN: r101293
2005-06-24 13:52:35 +00:00
Mark Mitchell
68c1abf1e0 re PR tree-optimization/22171 (gcc-4.0-20050623 internal compiler error in linux/drivers/serial/8250.c)
PR 22171
	* tree-ssa-operands.c (get_expr_operands): Check s_ann for NULL
	before use.

	PR 22171
	* gcc.dg/tree-ssa/pr22171.c: New test.

From-SVN: r101292
2005-06-24 13:27:25 +00:00
Mark Mitchell
305a132148 re PR tree-optimization/22000 (Read from volatile member of struct is optimized away)
PR 22000
	* tree-ssa-operands.c (get_expr_operands): Check the volatility of
	the FIELD_DECL and set s_ann->has_volatile_ops accordingly.

From-SVN: r101289
2005-06-24 03:38:05 +00:00
Feng Wang
a3504e64ab simplify.c (gfc_simplify_modulo): Don't clear before get result.
2005-06-24  Feng Wang  <fengwang@nudt.edu.cn>

        * simplify.c (gfc_simplify_modulo): Don't clear before get result.


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

        * gfortran.dg/simplify_modulo.f90: New.

From-SVN: r101288
2005-06-24 03:23:04 +00:00
Jan Hubicka
b8807f054b * opts.c (decode_options): Enable unit-at-a-time by default at -O1.
From-SVN: r101287
2005-06-24 03:09:54 +00:00
Ziemowit Laski
ee18782ffc proto-lossage-[1-4].mm: New.
[gcc/testsuite/ChangeLog]
2005-06-23  Ziemowit Laski  <zlaski@apple.com>

        * obj-c++.dg/proto-lossage-[1-4].mm: New.

From-SVN: r101284
2005-06-24 01:03:21 +00:00
Ziemowit Laski
0c9b7e9b5a typedef-alias-1.mm: New.
[gcc/testsuite/ChangeLog]
2005-06-23  Ziemowit Laski  <zlaski@apple.com>

        * obj-c++.dg/typedef-alias-1.mm: New.
        * objc.dg/typedef-alias-1.m: New.

From-SVN: r101281
2005-06-24 00:22:52 +00:00
GCC Administrator
602174abff Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r101279.2
2005-06-24 00:16:16 +00:00
Jeff Law
9490876243 tree-optimize.c (init_tree_optimization_passes): Move copy prop pass to run just before VRP.
* tree-optimize.c (init_tree_optimization_passes): Move
        copy prop pass to run just before VRP.
        * tree-vrp.c (remove_range_assertions): Remove copies created
        by ASSERT_EXPR removal.

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

From-SVN: r101277
2005-06-23 16:00:44 -06:00
Francois-Xavier Coudert
32aa3bffc3 c99_functions.c (log10l): New log10l function for systems where this is not available.
* intrinsics/c99_functions.c (log10l): New log10l function for
	systems where this is not available.
	* c99_protos.h: Prototype for log10l function.
	* libgfortran.h: Use generated kinds.h to define GFC_INTEGER_*,
	GFC_UINTEGER_*, GFC_LOGICAL_*, GFC_REAL_*, GFC_COMPLEX_*. Update
	prototypes for gfc_itoa and xtoa.
	* io/io.h: Update prototypes for set_integer and max_value.
	* io/list_read.c (convert_integer): Use new
	GFC_(INTEGER|REAL)_LARGEST type.
	* io/read.c (set_integer): Likewise.
	(max_value): Likewise.
	(convert_real): Likewise.
	(real_l): Likewise.
	(next_char): Likewise.
	(read_decimal): Likewise.
	(read_radix): Likewise.
	(read_f): Likewise.
	* io/write.c (extract_int): Use new GFC_INTEGER_LARGEST type.
	(extract_real): Use new GFC_REAL_LARGEST type.
	(calculate_exp): Likewise.
	(calculate_G_format): Likewise.
	(output_float): Likewise. Use log10l for long double values.
	Add comment for sprintf format. Use GFC_REAL_LARGEST_FORMAT.
	(write_l): Use new GFC_INTEGER_LARGEST type.
	(write_float): Use new GFC_REAL_LARGEST type.
	(write_int): Remove useless special case for (len < 8).
	(write_decimal): Use GFC_INTEGER_LARGEST.
	(otoa): Use GFC_UINTEGER_LARGEST as argument.
	(btoa): Use GFC_UINTEGER_LARGEST as argument.
	* runtime/error.c (gfc_itoa): Use GFC_INTEGER_LARGEST as
	argument.
	(xtoa): Use GFC_UINTEGER_LARGEST as argument.
	* Makefile.am: Use mk-kinds-h.sh to generate header kinds.h
	with all Fortran kinds available.
	* configure.ac: Check for strtold and log10l.
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config.h.in: Regenerate.
	* mk-kinds-h.sh: Configuration script for available integer
	and real kinds.
	* lib/target-supports.exp: Add
	check_effective_target_fortran_large_real and
	check_effective_target_fortran_large_int to check for
	corresponding effective targets.
	* gfortran.dg/large_integer_kind_1.f90: New test.
	* gfortran.dg/large_real_kind_1.f90: New test.

From-SVN: r101274
2005-06-23 18:50:25 +00:00
Jakub Jelinek
462ec41561 re PR libstdc++/22109 (/home/dave/opt/gnu/bin/ld: BFD 2.16.91 20050612 internal error)
PR libstdc++/22109
	* src/compatibility.cc (_GLIBCXX_SYMVER_COMPATIBILITY): Remove.
	(istreambuf_iterator, basic_fstream, basic_ifstream, basic_ofstream,
	_M_copy, _M_move, _M_assign, _M_disjunct, _M_check_length,
	_M_set_length_and_sharable, ignore, eq): Define to XX suffixed
	variants.
	(ignore (streamsize)): Remove _W prefixed aliases.
	(_GLIBCXX_3_4_SYMVER_SPECIAL, _GLIBCXX_3_4_5_SYMVER_SPECIAL,
	_GLIBCXX_APPLY_SYMVER_SPECIAL): Remove.
	(_GLIBCXX_3_4_SYMVER, _GLIBCXX_3_4_5_SYMVER): Add XXname argument.
	Use #XXname instead of #name as the alias argument.
	* config/abi/compatibility.h: Replace uses of
	_GLIBCXX_APPLY_SYMVER_SPECIAL with _GLIBCXX_APPLY_SYMVER.  Always
	pass 2 arguments to the _GLIBCXX_APPLY_SYMVER macro.
	* include/bits/char_traits.h (char_traits::eq): Revert 2005-06-15
	change.
	* acinclude.m4: Decrease glibcxx_min_gnu_ld_version back to 21400.
	* configure: Rebuilt.

From-SVN: r101273
2005-06-23 18:49:00 +02:00
Kazu Hirata
e57f2b4144 re PR tree-optimization/22117 (VRP thinks <ptr type> + <ptr type> is always nonnull.)
gcc/
	PR tree-optimization/22117
	* tree-vrp.c (extract_range_from_binary_expr): Compute a
	correct range when adding two pointers.

testsuite/
	PR tree-optimization/22117
	* gcc.dg/tree-ssa/pr22117.c: New.

From-SVN: r101272
2005-06-23 16:04:09 +00:00
James A. Morrison
a31de5014b re PR testsuite/22123 (gcc.dg/fold-mod-1.c scan-tree-dump a % 4294967288 fails)
2005-06-23  James A. Morrison  <phython@gcc.gnu.org>

        PR testsuite/22123
        * gcc.dg/fold-mod-1.c: Accept fffffff8 as well.

From-SVN: r101271
2005-06-23 15:08:38 +00:00
Bryce McKinlay
c0f6dc941d re PR java/20697 (Invalid Can't find method error on call to super)
PR java/20697
	* parse.y (find_most_specific_methods_list): Remove special case for
	inner classes.

From-SVN: r101270
2005-06-23 16:00:50 +01:00