Commit Graph

71419 Commits

Author SHA1 Message Date
Mark Mitchell
393e756da7 re PR c++/21089 (C++ front-end does not "inline" the static const double)
PR c++/21089
	* call.c (convert_like_real): Use decl_constant_value, not
	integral_constant_value.
	* init.c (constant_value_1): New function.
	(integral_constant_value): Use it.
	(decl_constant_value): Likewise.
	* typeck.c (decay_conversion): Use decl_constant_value, not
	integral_constant_value.
	PR c++/21089
	* g++.dg/init/float1.C: New test.

From-SVN: r105256
2005-10-11 20:58:46 +00:00
Mark Mitchell
8f4c0ef6a4 Fix typo
From-SVN: r105255
2005-10-11 20:57:16 +00:00
Mark Mitchell
c0b16a7045 re PR c++/21369 (Template function definition rejected if function return type begins with 'struct')
PR c++/21369
	* g++.dg/init/member1.C: Tweak error markers.

From-SVN: r105252
2005-10-11 20:53:55 +00:00
Richard Henderson
4989673889 re PR tree-optimization/24300 (segfault in operand_equal_p with -ftree-vectorize)
PR tree-opt/24300
        * Makefile.in (tree-ssa-dce.o): Depend on CFGLOOP_H.
        * tree-ssa-dce.c: Include cfgloop.h.
        (tree_ssa_dce_loop, pass_dce_loop): New.
        * tree-pass.h (pass_dce_loop): Declare it.
        * passes.c (init_optimization_passes): Use it.

From-SVN: r105250
2005-10-11 12:18:24 -07:00
Eric Botcazou
5e8b5b0868 re PR middle-end/24263 (gcc.dg/torture/builtin-convert-1.c fails)
PR middle-end/24263
	* convert.c (convert_to_real): Revert 2005-10-05 patch.
	Only apply the optimization for rounding builtins if the inner
	cast is also an extension.

From-SVN: r105249
2005-10-11 18:14:57 +00:00
Janis Johnson
8c07e3d7a7 re PR testsuite/24281 (WARNING: Could not execute gcc.dg/compat/struct-layout-1 generator)
PR testsuite/24281
	* gcc.dg/compat/struct-layout-1_generator.c (generate_fields):
	Check for null pointer.

From-SVN: r105243
2005-10-11 17:04:45 +00:00
Mark Mitchell
ca85f65910 re PR c++/21369 (Template function definition rejected if function return type begins with 'struct')
PR c++/21369
	* parser.c (cp_parser_elaborated_type_specifier): Don't treat
	class types as templates if the type is not appearing as part of a
	type definition or declaration.
	PR c++/21369
	* g++.dg/parse/ret-type3.C: New test.

From-SVN: r105241
2005-10-11 16:38:52 +00:00
Andrew Pinski
386cfa6f3f re PR tree-optimization/23946 (ICE: verify_ssa failed ("definition ... follows the use"))
2005-10-11  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/23946
        * gcc.c-torture/compile/pr23946.c: New test.

2005-10-11  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/23946
        * tree-ssa-ccp.c (execute_fold_all_builtins): Call
        mark_new_vars_to_rename instead of update_stmt.

From-SVN: r105239
2005-10-11 08:11:02 -07:00
Bernd Schmidt
ace0544ad6 * config/bfin/crti.s (__init, __fini): Renamed from _init, _fini.
From-SVN: r105234
2005-10-11 11:15:50 +00:00
Jakub Jelinek
eef9096257 i386.md (movsi_1, [...]): Use mmxadd type for setting MMX register to 0 rather than mmx.
* config/i386/i386.md (movsi_1, movdi_1_rex64): Use mmxadd type
	for setting MMX register to 0 rather than mmx.

	* g++.dg/opt/mmx2.C: New test.

From-SVN: r105230
2005-10-11 10:42:25 +02:00
Mark Mitchell
4bff36d306 re PR c++/24277 (Boost causes ICE in build_c_cast, at cp/typeck.c:5231)
PR c++/24277
	* pt.c (instantiate_decl): Call finish_static_data_member_decl for
	static data members.
	PR c++/24277
	* g++.dg/template/static20.C: New test.

From-SVN: r105228
2005-10-11 06:26:04 +00:00
Mark Mitchell
eb2182e299 re PR c++/24302 (anonymous global union segfault with g++ 3.4.x)
PR c++/24302
	* toplev.c (check_global_declaration_1): Robustify.
	PR c++/24302
	* g++.dg/warn/Wunused-12.C: New test.

From-SVN: r105222
2005-10-11 06:19:55 +00:00
Ian Lance Taylor
18c75543a8 re PR libstdc++/13583 (__use_cache not threadsafe)
PR libstdc++/13583
	* include/bits/locale_classes.h (locale::_Impl::_M_install_cache):
	Move out of line.
	* src/locale.cc: Define here, add mutex.
	* configure.ac (libtool_VERSION): To 6:7:0.
	* configure: Regenerate.
	* testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.7.
	* config/linker-map.gnu: Export locale::_Impl::_M_install_cache.

From-SVN: r105221
2005-10-11 06:19:13 +00:00
GCC Administrator
e0c48a517e Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r105204.2
2005-10-11 00:16:13 +00:00
Steve Ellcey
dbad5e7280 re PR target/12098 (gcc build fails without gas on ia64-hpux: error: invalid switch '-x')
PR target/12098
	* configure.ac: Move gas check from mips specific case to common case.
	Do check for GNU as for mips*-*-* and *-*-hpux* targets.
	* configure: Regenerate
	* doc/install.texi: Update.

From-SVN: r105200
2005-10-10 23:45:18 +00:00
Mark Mitchell
5e9edb0f6f Mark Mitchell <mark@codesourcery.com> PR c++/23437
Mark Mitchell  <mark@codesourcery.com>
        PR c++/23437
	* parser.c (cp_parser_template_argument_list): Do not treat
	contents of argument list as part of a constant expression.
	PR c++/23437
	* g++.dg/template/arg4.C: New test.

From-SVN: r105199
2005-10-10 22:30:17 +00:00
Eric Botcazou
542155d708 re PR target/24284 (ICE (Segmentation fault))
PR target/24284
	* config/sparc/sparc.c (sparc_expand_prologue): Remove bogus PATTERN.

From-SVN: r105195
2005-10-10 22:24:49 +00:00
Tom Tromey
ab711ed3c2 ExtraClassLoader.out: New file.
* testsuite/libjava.lang/ExtraClassLoader.out: New file.
	* testsuite/libjava.lang/TestProxy.java (MyInvocationHandler):
	Now static.

From-SVN: r105185
2005-10-10 19:18:26 +00:00
Eric Botcazou
96109dcb4b * gcc.dg/tree-ssa/gen-vect-25.c (main): Return a value.
From-SVN: r105184
2005-10-10 19:00:20 +00:00
Eric Botcazou
f35675981e ucnid-2.c: XFAIL on Solaris.
* gcc.dg/ucnid-2.c: XFAIL on Solaris.
	* gcc.dg/ucnid-3.c: Likewise.
	* gcc.dg/ucnid-4.c: Likewise.
	* g++.dg/other/ucnid-1.C: Likewise.

From-SVN: r105181
2005-10-10 16:58:53 +00:00
Maciej W. Rozycki
a92dd2358c gcc.c (do_spec_1): Accept numeric characters in file name suffixes.
* gcc.c (do_spec_1): Accept numeric characters in file name
suffixes.

From-SVN: r105178
2005-10-10 15:02:52 +00:00
Mark Mitchell
27a725e293 re PR c++/24275 (Previously accepted code fails with 4.0.2)
PR c++/24275
	* pt.c (instantiate_decl): Instantiate the initializer of
	a static data member in the namespace containing the class
	containing the static data member.
	PR c++/24275
	* g++.dg/template/static19.C: New test.

From-SVN: r105173
2005-10-10 14:42:14 +00:00
Mark Mitchell
f0d60e2210 re PR c++/24139 (Rejects definition of member of specialized inner class)
PR c++/24139
	* decl.c (grokdeclarator): Do not require template parameter lists
	for explicitly specialized class.
	* error.c (dump_aggr_type): Do not dump template arguments for
	non-primary specializations.
	(dump_function_name): Likewise.
	PR c++/24139
	* g++.dg/template/spec27.C: New test.

From-SVN: r105172
2005-10-10 14:41:52 +00:00
Nick Clifton
e0b923193a arm.c: Remove extraneous whitespace.
* config/arm/arm.c: Remove extraneous whitespace.  Remove comment describing
  the deleted arm_gen_rotated_half_load function.

From-SVN: r105169
2005-10-10 07:57:21 +00:00
Kaz Kojima
a5f5c6be7f sh.c (emit_fpu_switch): Set TREE_PUBLIC for __fpscr_values.
* config/sh/sh.c (emit_fpu_switch): Set TREE_PUBLIC for
	__fpscr_values.

From-SVN: r105164
2005-10-10 01:52:10 +00:00
Daniel Jacobowitz
d399ae674b config.gcc (arm*-*-linux*): Remove redundant extra_parts and gnu_ld assignments.
* config.gcc (arm*-*-linux*): Remove redundant extra_parts and
	gnu_ld assignments.
	* config/arm/t-linux-eabi (LIB1ASMFUNCS)
	(EXTRA_MULTILIB_PARTS): Define.
	* config/arm/linux-elf.h (NO_IMPLICIT_EXTERN_C, CPLUSPLUS_CPP_SPEC)
	(STARTFILE_SPEC, ENDFILE_SPEC, CC1_SPEC)
	(LINK_GCC_C_SEQUENCE_SPEC, USE_LD_AS_NEEDED): Move to...
	* config/arm/uclinux-elf.h (NO_IMPLICIT_EXTERN_C, CPLUSPLUS_CPP_SPEC)
	(STARTFILE_SPEC, ENDFILE_SPEC, CC1_SPEC)
	(LINK_GCC_C_SEQUENCE_SPEC, USE_LD_AS_NEEDED): ... here.

From-SVN: r105162
2005-10-10 01:04:31 +00:00
GCC Administrator
5034722629 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r105157.2
2005-10-10 00:16:12 +00:00
Zdenek Dvorak
c9639aaea9 re PR tree-optimization/24226 (ICE: Segmentation fault in operand_equal_p (complete loop unrolling))
PR tree-optimization/24226
	* tree-cfg.c (remove_bb): Clean up unreachable loops.
	* tree-flow.h (free_numbers_of_iterations_estimates_loop): Declare.
	* tree-ssa-loop-niter.c (free_numbers_of_iterations_estimates_loop):
	Export.

From-SVN: r105151
2005-10-09 22:50:01 +00:00
Eric Botcazou
ed883fe3d8 * g++.dg/warn/miss-format-1.C: XFAIL vscanf test on Solaris 2.5.1 to 8.
From-SVN: r105144
2005-10-09 12:59:17 +00:00
Eric Botcazou
ad6cc85a18 * config/sparc/gmon-sol2.c (internal_mcount): Mark as used.
From-SVN: r105140
2005-10-09 12:33:11 +00:00
Paolo Carlini
3c9b5053e0 PR libstdc++/24061 (issue 6.19)
2005-10-09  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24061 (issue 6.19)
	* include/tr1/hashtable (struct node_const_iterator, struct
	hashtable_const_iterator): New, add const variants to enable separate
	overloadings for iterator and const_iterator in unordered_set and
	unordered_multiset (as required by issue 6.19).
	(class hashtable): Change the mutable_iterators template parameter
	to constant_iterators and adjust throughout the logic.
	(hashtable::insert(iterator, const value_type&), erase(iterator)
	erase(iterator, iterator)): New, as per issue 6.19.
	(hashtable::m_erase(node*, node**)): New, called by erase(iterator)
	and erase(const_iterator).
	(hashtable::Insert_Conv_Type): New, used by insert(iterator,
	const value_type&) and insert(const_iterator, const value_type&)
	to delegate the work to insert(const value_type&).
	* include/tr1/unordered_map (class unordered_map, unordered_multimap):
	Adjust typedefs.
	* include/tr1/unordered_set (class unordered_set, unordered_multiset):
	Likewise.
	* testsuite/tr1/6_containers/unordered/erase/24061-map.cc: New.
	* testsuite/tr1/6_containers/unordered/erase/24061-multimap.cc: New.
	* testsuite/tr1/6_containers/unordered/erase/24061-multiset.cc: New.
	* testsuite/tr1/6_containers/unordered/erase/24061-set.cc: New.
	* testsuite/tr1/6_containers/unordered/insert/24061-map.cc: New.
	* testsuite/tr1/6_containers/unordered/insert/24061-multimap.cc: New.
	* testsuite/tr1/6_containers/unordered/insert/24061-multiset.cc: New.
	* testsuite/tr1/6_containers/unordered/insert/24061-set.cc: New.

From-SVN: r105138
2005-10-09 10:34:47 +00:00
Eric Botcazou
d8aa859602 * gcc.dg/20050922-1.c: Skip on Solaris 2.5.1 to 9.
From-SVN: r105137
2005-10-09 10:21:14 +00:00
GCC Administrator
2669f8a7d1 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r105127.2
2005-10-09 00:16:11 +00:00
Andrew Pinski
c5dce79bc3 [multiple changes]
2005-10-08  Andrew Pinski  <pinskia@physics.uc.edu>

        PR target/24136
        * config/rs6000/darwin.md (movdf_low_si): Remove early clobber.
        Rewrite for no need for the early clobber.
2005-10-07  Andrew Pinski  <pinskia@physics.uc.edu>

        PR target/24136
        * gfortran.fortran-torture/compile/pr24136.f: New test.

From-SVN: r105123
2005-10-08 14:41:50 -07:00
Kazu Hirata
077fc835e5 configure.in (arm-*-linux-gnueabi): Add to noconfigdirs target-libffi...
/
	* configure.in (arm-*-linux-gnueabi): Add to noconfigdirs
	target-libffi, target-qthreads, target-libjava, and
	targetlibobjc.
	* configure: Regenerate.

gcc/
	Merge from csl-arm-branch:
	2005-09-07  Paul Brook  <paul@codesourcery.com>
	* config/arm/linux-eabi.h (SUBTARGET_EXTRA_LINK_SPEC): Prepend a
	space to string.

	2005-04-30  Paul Brook  <paul@codesourcery.com>
	* config/arm/bpabi.h (TARGET_DEFAULT): Define.
	* config/arm/linux-eabi.h (SUBTARGET_CPU_DEFAULT): Define.

	2005-03-07  Daniel Jacobowitz  <dan@codesourcery.com>
	* config/arm/arm.c (arm_all_abis): Add aapcs-linux.
	(arm_override_options): Use TARGET_AAPCS_BASED.
	* config/arm/arm.h (enum arm_abi_type): Add ARM_ABI_AAPCS_LINUX.
	(PTRDIFF_TYPE): Use int for AAPCS.
	(DEFAULT_SHORT_ENUMS): Use false for aapcs-linux.
	* config/arm/linux-eabi.h (ARM_DEFAULT_ABI, WCHAR_TYPE): Define.
	(DEFAULT_SHORT_ENUMS): Delete.
	* doc/invoke.texi (ARM Options): Document -mabi=aapcs-linux.

	2004-12-15  Daniel Jacobowitz  <dan@codesourcery.com>
	* config/arm/arm.h (DEFAULT_SHORT_ENUMS): Wrap in #ifndef.
	* config/arm/linux-eabi.h (DEFAULT_SHORT_ENUMS): Define to 0.
	* config/arm/t-linux-eabi (TARGET_LIBGCC2_CFLAGS): Set to -fPIC.

	2004-12-03  Mark Mitchell  <mark@codesourcery.com>
	* config/arm/linux-eabi.h (LIBGCC_SPEC): Do not define.

	2004-11-22  Mark Mitchell  <mark@codesourcery.com>
	* config.gcc (arm*-*-linux-gnueabi): Use __cxa_atexit.

	2004-11-19  Mark Mitchell  <mark@codesourcery.com>
	* config.gcc (arm*-*-linux-gnueabi): Add it.
	* config/arm/bpabi.h (FPUTYPE_DEFAULT): Undefine it before
	redefining it.
	(TARGET_OS_CPP_BUILTINS): Likeiwse.
	* config/arm/linux-eabi.h: New file.
	* config/arm/linux-elf.h (LINUX_TARGET_INTERPRETER): New macro.
	(LINUX_TARET_LINK_SPEC): Likewise.
	(LINK_SPEC): Use it.
	* config/arm/t-linux-eabi: New file.

libcpp/
	* configure.ac: Require 64-bit int for arm*-*-*eabi*.
	* configure: Regenerate.

libstdc++/
	Merge from csl-arm-branch:
	2004-12-15  Daniel Jacobowitz  <dan@codesourcery.com>
	* libstdc++-v3/config/linker-map.gnu: Add ARM EABI symbols.

From-SVN: r105121
2005-10-08 18:17:20 +00:00
James A. Morrison
31e832d1f4 re PR c++/22172 (Internal compiler error, seg fault.)
2005-10-08  James A. Morrison  <phython@gcc.gnu.org>

        PR c++/22172
        * parser.c (cp_parser_postfix_expression) <RID_TYPENAME>: Treat nontype
        scopes as nondependent.

From-SVN: r105120
2005-10-08 18:11:02 +00:00
Steven Bosscher
5fa534e39e re PR other/22202 (Superfluous space in description of max-variable-expansions-in-unroller)
PR other/22202
	* params.def (PARAM_MAX_VARIABLE_EXPANSIONS): Remove superfluous
	spaces.
	(PARAM_SMS_DFA_HISTORY): Likewise.

From-SVN: r105115
2005-10-08 07:15:59 +00:00
Kazu Hirata
07eef8164a re PR middle-end/23150 (20050713-1.c fails on arm-none-eabi with -O2 or -Os.)
PR middle-end/23150
	* calls.c (mem_overlaps_already_clobbered_arg_p): New.
	(load_register_parameters): Call it.
	(check_sibcall_argument_overlap_1): Likewise.
	(store_one_arg): Likewise.

From-SVN: r105114
2005-10-08 03:33:46 +00:00
James E Wilson
3dbb4dcecd Fix gcc.dg/vect/vect-shift-1.c failure.
* config/ia64/vect.md (ashl<mode>3, ashr<mode>3, lshr<mode>3): Use
DImode not VECINT24 for operand 2.

From-SVN: r105113
2005-10-07 17:39:09 -07:00
GCC Administrator
4383bf26c3 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r105108.2
2005-10-08 00:16:13 +00:00
James E Wilson
7f9dc8236e Fix typo in docs.
PR target/23644
* doc/invoke.texi (IA-64 Options, item -mtune): Renamed from
-mtune-arch.

From-SVN: r105105
2005-10-07 16:57:36 -07:00
Janne Blomqvist
0dc4346159 re PR libfortran/16339 (Unformatted i/o on large arrays inefficient)
2005-10-07  Janne Blomqvist <jblomqvi@cc.hut.fi>

	PR fortran/16339
	PR fortran/23363
	* io/io.h: Add read and write members to stream, define access
	macros.
	* io/transfer.c (read_block_direct): New function.
	(write_block_direct): New function.
	(unformatted_read): Change to use read_block_direct.
	(unformatted_write): Change to use write_block_direct.
	* io/unix.c: Remove mmap includes and defines.
	(writen): Remove.
	(readn): Remove.
	(reset_stream): New function.
	(do_read): New function.
	(do_write): New function.
	(fd_flush): Change to use do_write() instead of writen().
	(fd_alloc_r_at): Change to use do_read().
	(fd_seek): Change return type to try, as the prototype. Add check
	to avoid syscall overhead if possible.
	(fd_read): New function.
	(fd_write): New function.
	(fd_open): Set pointers for new functions.
	(mem_read): New function.
	(mem_write): New function.
	(open_internal): Set pointers for new functions.
	(is_seekable): Clean up comment.

From-SVN: r105101
2005-10-07 20:02:28 +00:00
James E Wilson
b6fb7d460c Fix libgfortran build failure, stX insns don't allow post_inc addr w/ reg inc.
PR target/24193
* config/ia64/ia64.md (movbi, movti_internal, gr_spill_internal,
fr_spill): Use destination_operand for operand 0.

From-SVN: r105100
2005-10-07 12:27:37 -07:00
DJ Delorie
3eb0d7c515 varasm.c (output_constant): Limit error to expanding conversions.
* varasm.c (output_constant): Limit error to expanding
conversions.

From-SVN: r105099
2005-10-07 14:44:26 -04:00
Richard Guenther
4c17e28838 re PR middle-end/24227 (ICE in compare_values, at tree-vrp.c:415)
2005-10-07  Richard Guenther  <rguenther@suse.de>

	PR middle-end/24227
	* fold-const.c (fold_binary): Fix operand types during folding
	of X op (A, Y).  Evaluation order of the side-effects of
	X and A are frontend-defined, so ensure we honour that even for
	tcc_comparison class operands; eased by removing duplicate code.

	* gcc.c-torture/compile/pr24227.c: New testcase.

From-SVN: r105096
2005-10-07 18:12:11 +00:00
Steve Ellcey
002a9071e6 stor-layout.c (layout_type): Do not allow alignment of array elements to be greater than their size.
* stor-layout.c (layout_type): Do not allow alignment of array
	elements to be greater than their size.

From-SVN: r105095
2005-10-07 17:41:11 +00:00
Steve Ellcey
79a1aca797 struct-layout-1_generate.c (generate_fields): Do not put aligned attributes on array elements.
* gcc.dg/compat/struct-layout-1_generate.c (generate_fields):
	Do not put aligned attributes on array elements.

From-SVN: r105094
2005-10-07 17:34:18 +00:00
Steve Ellcey
9bff16b865 config.host (hppa*-*-hpux*): Change out_host_hook_obj and host_xmake_file.
* config.host (hppa*-*-hpux*): Change out_host_hook_obj and
	host_xmake_file.
	(hppa*-*-linux*): Ditto.
	(ia64-*-hpux*): Add out_host_hook_obj and host_xmake_file.
	config/host-hpux.c: New.
	config/x-hpux: New.
	config/pa/x-hpux: Remove.
	config/pa/x-linux: Remove.
	config/pa/pa-host.c: Remove.

From-SVN: r105093
2005-10-07 17:16:31 +00:00
Jerry DeLisle
aed6ee2453 transfer.c (write_block): Add test for end-of-file condition, removed from mem_alloc_w_at.
2005-10-07  Jerry DeLisle  <jvdelisle@verizon.net>

        * io/transfer.c (write_block): Add test for end-of-file condition,
        removed from mem_alloc_w_at. (next_record_w): Clean up checks for
        NULL pointer returns from s_alloc_w.
        * io/unix.c (mem_alloc_w_at): Remove call to generate_error end-of-file.
        * io/write.c (write_float): Add checks for NULL pointer returns from
        write_block calls. (write_integer): Same.

From-SVN: r105092
2005-10-07 17:01:48 +00:00
Jeff Law
3e352c00e1 tree-ssa-dom.c (dom_opt_finalize_block): Fix conditions to determine whether or not to try and thread outgoing edges.
* tree-ssa-dom.c (dom_opt_finalize_block): Fix conditions to
	determine whether or not to try and thread outgoing edges.

From-SVN: r105091
2005-10-07 10:05:37 -06:00