Jan Hubicka [Wed, 10 Sep 2003 23:46:26 +0000 (01:46 +0200)]
decl2.c (var_finalized_p): New.
* decl2.c (var_finalized_p): New.
(maybe_emit_vtables, write_out_vars, finish_file): Use it.
From-SVN: r71284
Jan Hubicka [Wed, 10 Sep 2003 23:45:05 +0000 (01:45 +0200)]
c-objc-common.c (c_cannot_inline_tree_fn): Warn on why function is not inlinable; do not check the body.
* c-objc-common.c (c_cannot_inline_tree_fn): Warn
on why function is not inlinable; do not check
the body.
(inline_forbidden_p): Move to...
* tree-inline.c (inline_forbidden_p_1): ... here; Add warnings;
deal with alloca, longjmp.
(inline_forbidden_p): New static function.
(find_alloca_call_1, find_alloca_call, find_builtin_longjmp_call_1,
find_builtin_longjmp_call): Kill.
From-SVN: r71283
Richard Henderson [Wed, 10 Sep 2003 19:16:20 +0000 (12:16 -0700)]
cgraph.h (struct cgraph_node): Rename lowered to analyzed.
* cgraph.h (struct cgraph_node): Rename lowered to analyzed.
* cgraphunit.c: Update to match.
(record_call_1): Rearrange. Call lang hook for language nodes.
(cgraph_analyze_function): Don't call lower_function.
* langhooks.h (struct lang_hooks_for_callgraph): Replace
lower_function with analyze_expr.
* langhooks-def.h: Update to match.
* langhooks.c (lhd_callgraph_analyze_expr): New.
* decl2.c (cxx_callgraph_analyze_expr): New, from corpse of
mark_member_pointers.
(lower_function): Remove.
* cp-tree.h: Update to match.
* cp-lang.c (LANG_HOOKS_CALLGRAPH_ANALYZE_EXPR): New.
(LANG_HOOKS_CALLGRAPH_LOWER_FUNCTION): Remove.
From-SVN: r71277
Michael Koch [Wed, 10 Sep 2003 18:50:47 +0000 (18:50 +0000)]
acconfig.h (__NO_MATH_INLINES): Removed.
2003-09-10 Michael Koch <konqueror@gmx.de>
* acconfig.h (__NO_MATH_INLINES): Removed.
* configure.in: Removed check for g++ math inlining bug from 2000.
* configure.host: Removed -D__NO_MATH_INLINES in libgcj_cflags and
libgcj_cxxflags.
* configure: Regenerated.
From-SVN: r71276
David Daney [Wed, 10 Sep 2003 18:11:05 +0000 (18:11 +0000)]
Arrays.java (equals(all variants)): Quit using NullPointerException catching to detect null valued parameters.
2003-09-10 David Daney <ddaney@avtrex.com>
* java/util/Arrays.java (equals(all variants)): Quit using
NullPointerException catching to detect null valued parameters.
From-SVN: r71275
Michael Koch [Wed, 10 Sep 2003 17:39:20 +0000 (17:39 +0000)]
DatagramSocket.java, [...]: Use gnu.java.net.Plain*SocketImpl instead of java.net.PlainSocketImpl.
2003-09-10 Michael Koch <konqueror@gmx.de>
* java/net/DatagramSocket.java,
java/net/MulticastSocket.java,
java/net/ServerSocket.java,
java/net/Socket.java:
Use gnu.java.net.Plain*SocketImpl instead of
java.net.PlainSocketImpl.
* java/net/PlainDatagramSocketImpl.java,
java/net/PlainSocketImpl.java,
java/net/SocketInputStream.java,
java/net/SocketOutputStream.java,
java/net/natPlainDatagramSocketImplNoNet.cc,
java/net/natPlainDatagramSocketImplPosix.cc,
java/net/natPlainDatagramSocketImplWin32.cc,
java/net/natPlainSocketImplNoNet.cc,
java/net/natPlainSocketImplPosix.cc,
java/net/natPlainSocketImplWin32.cc:
Removed.
* gnu/java/net/PlainDatagramSocketImpl.java,
gnu/java/net/PlainSocketImpl.java,
gnu/java/net/SocketInputStream.java,
gnu/java/net/SocketOutputStream.java,
gnu/java/net/natPlainDatagramSocketImplNoNet.cc,
gnu/java/net/natPlainDatagramSocketImplPosix.cc,
gnu/java/net/natPlainDatagramSocketImplWin32.cc,
gnu/java/net/natPlainSocketImplNoNet.cc,
gnu/java/net/natPlainSocketImplPosix.cc,
gnu/java/net/natPlainSocketImplWin32.cc:
New files (moved from java/net).
* configure.in: Create links for gnu/java/net/natPlain*SocketImpl.cc
instead of java/net/natPlain*SocketImpl.cc.
* configure: Regenerated.
* Makefile.am: Moved files from java/net to gnu/java/net.
* Makefile.in: Regenerated.
From-SVN: r71274
Jeffrey D. Oldham [Wed, 10 Sep 2003 15:41:48 +0000 (15:41 +0000)]
vec.cc (__cxa_vec_new2): If the allocator returns NULL, return NULL.
2003-09-10 Jeffrey D. Oldham <oldham@codesourcery.com>
* libsupc++/vec.cc (__cxa_vec_new2): If the allocator returns
NULL, return NULL. This reflects a C++ ABI change 2003 Sep 05.
(__cxa_vec_new3): Likewise.
From-SVN: r71273
Petur Runolfsson [Wed, 10 Sep 2003 13:43:15 +0000 (13:43 +0000)]
fstream.tcc (basic_filebuf::seekoff): Use codecvt::length to handle variable-width stateless encodings correctly.
2003-09-10 Petur Runolfsson <peturr02@ru.is>
* include/bits/fstream.tcc (basic_filebuf::seekoff):
Use codecvt::length to handle variable-width stateless encodings
correctly.
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: New test.
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: New test.
From-SVN: r71271
Eric Botcazou [Wed, 10 Sep 2003 12:59:36 +0000 (12:59 +0000)]
re PR target/11965 (invalid assembler code for a shift << 32 operation)
PR target/11965
* config/sparc/sparc.c (sparc_v8plus_shift): Protect against
constants greater than 63.
* config/sparc/sparc.md (ashlsi3, ashrsi3, lshrsi3): Protect
against constants greater than 31.
(*ashldi3_sp64, *ashrdi3_sp64, *lshrdi3_sp64): Protect against
constants greater than 63.
From-SVN: r71266
Alan Modra [Wed, 10 Sep 2003 12:02:51 +0000 (12:02 +0000)]
basic_file_stdio.cc (_M_open_mode): Assign __p_mode rather than or'ing.
* config/io/basic_file_stdio.cc (_M_open_mode): Assign __p_mode
rather than or'ing.
From-SVN: r71265
Richard Henderson [Wed, 10 Sep 2003 03:06:32 +0000 (20:06 -0700)]
cgraphunit.c (cgraph_finalize_function): Remove unused argument.
* cgraphunit.c (cgraph_finalize_function): Remove unused argument.
* cgraph.h (cgraph_finalize_function): Update.
* c-decl.c (finish_function): Update.
cp/
* semantics.c (expand_or_defer_fn): Update call to
cgraph_finalize_function.
java/
* parse.y (source_end_java_method): Update call to
cgraph_finalize_function.
From-SVN: r71263
Richard Henderson [Wed, 10 Sep 2003 02:46:35 +0000 (19:46 -0700)]
semantics.c (expand_or_defer_fn): Use cgraph_finalize_function always.
* semantics.c (expand_or_defer_fn): Use cgraph_finalize_function
always.
From-SVN: r71262
Richard Henderson [Wed, 10 Sep 2003 02:41:43 +0000 (19:41 -0700)]
decl2.c (finish_file): Avoid out-of-bounds array reference during memmove.
* decl2.c (finish_file): Avoid out-of-bounds array reference
during memmove.
From-SVN: r71261
Devang Patel [Wed, 10 Sep 2003 00:43:38 +0000 (17:43 -0700)]
darwin.h (LINK_SPEC): Pass -nofixprebinding to linker.
gcc
* config/darwin.h (LINK_SPEC): Pass -nofixprebinding to linker.
* doc/invoke.texi: Document new Darwin linker option -nofixprebinding.
testsuite
* gcc.dg/darwin-ld-6.c: New test.
From-SVN: r71259
GCC Administrator [Wed, 10 Sep 2003 00:16:07 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r71257
Eric Christopher [Wed, 10 Sep 2003 00:13:11 +0000 (00:13 +0000)]
configure.in: Change usage of 'head' to 'sed 1q'.
2003-09-09 Eric Christopher <echristo@redhat.com>
* configure.in: Change usage of 'head' to 'sed 1q'.
* configure: Regenerate.
From-SVN: r71255
Richard Henderson [Wed, 10 Sep 2003 00:09:09 +0000 (17:09 -0700)]
except.c: Include cgraph.h.
* except.c: Include cgraph.h.
(output_function_exception_table): Invoke
cgraph_varpool_mark_needed_node.
* Makefile.in (except.o): Update.
* decl2.c (mark_member_pointers): Rename from
mark_member_pointers_and_eh_handlers and don't check eh handlers.
From-SVN: r71254
Kelley Cook [Tue, 9 Sep 2003 22:19:56 +0000 (22:19 +0000)]
Makefile.in: Define REMAKEFLAGS for LANGUAGES & BOOT_CFLAGS and use it throughout.
* Makefile.in: Define REMAKEFLAGS for LANGUAGES & BOOT_CFLAGS
and use it throughout.
From-SVN: r71253
Kaveh R. Ghazi [Tue, 9 Sep 2003 22:10:32 +0000 (22:10 +0000)]
builtins.c (real_dconstp, [...]): New, split out from fold_builtin.
* builtins.c (real_dconstp, fold_builtin_logarithm,
fold_builtin_exponent): New, split out from fold_builtin. Also
generalize to add log2, log10, exp2 and exp10/pow10 equivalents.
* emit-rtl.c (dconst3, dconst10, dconstthird): New.
(init_emit_once): Initialize new dconsts, use ARRAY_SIZE in lieu
of hardcoded array size.
* fold-const.c (fold): Add cases for exp2, exp10 and pow10.
(tree_expr_nonnegative_p): Likewise.
* real.h (dconst3, dconst10, dconstthird): New.
testsuite:
* gcc.dg/torture/builtin-explog-1.c: New testcase.
From-SVN: r71252
Ian Lance Taylor [Tue, 9 Sep 2003 20:30:34 +0000 (20:30 +0000)]
* MAINTAINERS: Update my e-mail address.
From-SVN: r71246
Jan Hubicka [Tue, 9 Sep 2003 20:27:52 +0000 (22:27 +0200)]
cgraphunit.c (cgraph_finalize_function): Fix handling of extern inline functions.
* cgraphunit.c (cgraph_finalize_function): Fix handling of extern
inline functions.
(cgraph_finalize_compilation_unit): Fix crash when dealing with lost
DECL_SAVED_TREE.
From-SVN: r71245
Roger Sayle [Tue, 9 Sep 2003 19:20:42 +0000 (19:20 +0000)]
builtins.c (fold_builtin_cabs): Protect the complex argument against multiple evaluation when...
* builtins.c (fold_builtin_cabs): Protect the complex argument
against multiple evaluation when optimizing cabs* into sqrt*.
From-SVN: r71242
Andreas Tobler [Tue, 9 Sep 2003 17:37:53 +0000 (19:37 +0200)]
2003-09-09 Andreas Tobler <a.tobler@schweiz.ch>
* src/powerpc/ffi.c (ffi_closure_helper_SYSV) Handle struct
passing correctly.
From-SVN: r71238
Jan Hubicka [Tue, 9 Sep 2003 13:37:17 +0000 (15:37 +0200)]
* varasm.c (notice_global_symbol): Properly deal with weak symbols.
From-SVN: r71236
Kelley Cook [Tue, 9 Sep 2003 11:44:03 +0000 (11:44 +0000)]
Revert change from yesterday due to parallel make issues.
From-SVN: r71235
Christian Ehrhardt [Tue, 9 Sep 2003 08:47:35 +0000 (08:47 +0000)]
re PR bootstrap/12168 (ICE (bus error) in set_mem_attributes_minus_bitpos)
PR bootstrap/12168
* method.c (use_thunk): Clear DECL_RTL of copied nodes.
From-SVN: r71234
Bernardo Innocenti [Tue, 9 Sep 2003 06:47:19 +0000 (08:47 +0200)]
coff.h (REGISTER_NAMES): Add fake register `argptr'
* config/m68k/coff.h (REGISTER_NAMES): Add fake register `argptr'
* config/m68k/hp320.h (REGISTER_NAMES): Likewise.
* config/m68k/linux.h (REGISTER_NAMES): Likewise.
* config/m68k/m68kelf.h (REGISTER_NAMES): Likewise.
* gcc/config/m68k/sgs.h (REGISTER_NAMES): Likewise.
* config/m68k/m68k-protos.h (m68k_initial_elimination_offset): Add prototype.
* config/m68k/m68k.c (m68k_frame): New struct, simular to ix86 back-end.
(m68k_compute_frame_layout): New function.
(m68k_initial_elimination_offset): New function.
(m68k_output_function_prologue): ColdFire-specific movem handling.
(m68k_output_function_epilogue): Likewise.
* config/m68k/m68k.h (FIRST_PSEOUDO_REGISTER): Make room for argptr reg.
(ARG_POINTER_REGNUM): Add new definition.
(INITIAL_FRAME_POINTER_OFFSET): Remove macro.
(ELIMINABLE_REGS): Define new macro, like in ix86 back-end.
(CAN_ELIMINATE): Likewise.
(INITIAL_ELIMINATION_OFFSET): Likewise.
Co-Authored-By: Peter Barada <peter@baradas.org>
From-SVN: r71231
Bernardo Innocenti [Tue, 9 Sep 2003 06:40:46 +0000 (08:40 +0200)]
m68k.c (m68k_output_function_prologue): Simplify by removing redundant variable cfa_store_offset.
* config/m68k/m68k.c (m68k_output_function_prologue): Simplify
by removing redundant variable cfa_store_offset.
From-SVN: r71230
Alan Modra [Tue, 9 Sep 2003 06:24:39 +0000 (06:24 +0000)]
* libtool.m4 (LD): Correct powerpc64 host match.
From-SVN: r71229
Mark Mitchell [Tue, 9 Sep 2003 03:51:56 +0000 (03:51 +0000)]
Fix thinko in last patch.
From-SVN: r71228
Mark Mitchell [Tue, 9 Sep 2003 03:35:31 +0000 (03:35 +0000)]
langhooks-def.h (lhd_register_builtin_type): New function.
* langhooks-def.h (lhd_register_builtin_type): New function.
(LANG_HOOKS_REGISTER_BUILTIN_TYPE): New macro.
(LANG_HOOKS_FOR_TYPES_INITIALIZER): Update.
* langhooks.h (lang_hooks_for_types): Add register_builtin_type.
* langhooks.c (lhd_register_builtin_type): New function.
* c-common.h (c_register_builtin_type): Declare.
* c-common.c (c_register_builtin_type): New function.
* c-lang.c (LANG_HOOKS_REGISTER_BUILTIN_TYPE): Define to
c_register_builtin_type.
* config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Remove __fpreg,
__float80, and __float128 macros.
* config/ia64/ia64.c (ia64_init_builtins): Create __fpreg,
__float80, and __float128 types.
* cp-lang.c (LANG_HOOKS_REGISTER_BUILTIN_TYPE): Define to
c_register_builtin_type.
* gcc.dg/ia64-types1.c: New test.
* gcc.dg/ia64-types2.c: Likewise.
From-SVN: r71227
Kaveh R. Ghazi [Tue, 9 Sep 2003 03:29:18 +0000 (03:29 +0000)]
builtin-types.def (BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE, [...]): New.
* builtin-types.def
(BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE,
BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE_COMPLEX_DOUBLE,
BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT_COMPLEX_FLOAT): New.
* builtins.def (BUILT_IN_CACOS, BUILT_IN_CACOSF, BUILT_IN_CACOSH,
BUILT_IN_CACOSHF, BUILT_IN_CACOSHL, BUILT_IN_CACOSL,
BUILT_IN_CARG, BUILT_IN_CARGF, BUILT_IN_CARGL, BUILT_IN_CASIN,
BUILT_IN_CASINF, BUILT_IN_CASINH, BUILT_IN_CASINHF,
BUILT_IN_CASINHL, BUILT_IN_CASINL, BUILT_IN_CATAN,
BUILT_IN_CATANF, BUILT_IN_CATANH, BUILT_IN_CATANHF,
BUILT_IN_CATANHL, BUILT_IN_CATANL, BUILT_IN_CCOS, BUILT_IN_CCOSF,
BUILT_IN_CCOSH, BUILT_IN_CCOSHF, BUILT_IN_CCOSHL, BUILT_IN_CCOSL,
BUILT_IN_CEXP, BUILT_IN_CEXPF, BUILT_IN_CEXPL, BUILT_IN_CPOW,
BUILT_IN_CPOWF, BUILT_IN_CPOWL, BUILT_IN_CPROJ, BUILT_IN_CPROJF,
BUILT_IN_CPROJL, BUILT_IN_CSIN, BUILT_IN_CSINF, BUILT_IN_CSINH,
BUILT_IN_CSINHF, BUILT_IN_CSINHL, BUILT_IN_CSINL, BUILT_IN_CSQRT,
BUILT_IN_CSQRTF, BUILT_IN_CSQRTL, BUILT_IN_CTAN, BUILT_IN_CTANF,
BUILT_IN_CTANH, BUILT_IN_CTANHF, BUILT_IN_CTANHL, BUILT_IN_CTANL):
New.
* doc/extend.texi: Document new builtins.
testsuite:
* gcc.dg/builtins-1.c: Add more _Complex tests.
* gcc.dg/torture/builtin-attr-1.c: Likewise.
From-SVN: r71226
Kaveh R. Ghazi [Tue, 9 Sep 2003 03:13:45 +0000 (03:13 +0000)]
builtins-1.c: Test existing _Complex functions.
* gcc.dg/builtins-1.c: Test existing _Complex functions.
* gcc.dg/torture/builtin-attr-1.c: Likewise.
From-SVN: r71225
David Edelsohn [Tue, 9 Sep 2003 01:08:48 +0000 (21:08 -0400)]
ios.cc (ios_base::Init::Init): Remove unnecessary qualifier from _S_synced_with_stdio.
* src/ios.cc (ios_base::Init::Init): Remove unnecessary
qualifier from _S_synced_with_stdio.
From-SVN: r71224
Jan Hubicka [Tue, 9 Sep 2003 00:31:39 +0000 (02:31 +0200)]
cgraph.c (cgraph_varpool_finalize_decl): Sanity check duplicated finalization.
* cgraph.c (cgraph_varpool_finalize_decl): Sanity check duplicated
finalization.
* cgraphunit.c (decide_is_fnction_needed): Avoid special case of nested
functions, check for COMDAT.
(cgraph_assemble_pending_functions): Break out from...
(cgraph_finalize_function): ... here; allow redefinig of extern inline
functions.
(record_call_1): Record function references only in non-unit-at-a-time
mode.
(cgraph_analyze_function): Reset current_function_decl.
(cgraph_finalize_compilation_unit): Assemble pending functions.
From-SVN: r71221
GCC Administrator [Tue, 9 Sep 2003 00:16:08 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r71219
Mark Mitchell [Mon, 8 Sep 2003 23:48:58 +0000 (23:48 +0000)]
mklibgcc.in (libcc.a): Depend on stmp-dirs.
* mklibgcc.in (libcc.a): Depend on stmp-dirs.
(libgov.a): Likewise.
(libgcc_eh.a): Likewise.
From-SVN: r71217
Roger Sayle [Mon, 8 Sep 2003 18:57:32 +0000 (18:57 +0000)]
* fold-const.c (operand_equal_p): Clarify documentation.
From-SVN: r71214
Mark Mitchell [Mon, 8 Sep 2003 18:46:20 +0000 (18:46 +0000)]
re PR c++/11786 (operator() call on variable in other namespace not recognized)
PR c++/11786
* decl2.c (add_function): Do not complain about seeing the same
non-function twice.
* semantics.c (perform_koenig_lookup): Improve documentation.
PR c++/11786
* g++.dg/lookup/koenig2.C: New test.
From-SVN: r71213
Richard Henderson [Mon, 8 Sep 2003 16:54:13 +0000 (09:54 -0700)]
* optimize.c (maybe_clone_body): Inc/dec function_depth.
From-SVN: r71210
Mark Mitchell [Mon, 8 Sep 2003 16:53:05 +0000 (16:53 +0000)]
re PR c++/5296 ([DR115] Pointers to functions and template functions behave different in deduction)
PR c++/5296
* pt.c (try_one_overload): Add addr_p parameter.
(resolve_overloaded_unification): Pass it.
PR c++/5296
* g++.dg/rtti/typeid2.C: New test.
From-SVN: r71209
Richard Henderson [Mon, 8 Sep 2003 15:56:27 +0000 (08:56 -0700)]
c-decl.c (c_expand_body_1): Push and pop function context here.
gcc/
* c-decl.c (c_expand_body_1): Push and pop function context here.
* tree-optimize.c (tree_rest_of_compilation): ... not here. Take
nested argument instead of computing nesting ourselves.
gcc/cp/
* decl.c (finish_function): Clear current_function_decl.
* decl2.c (mark_used): Don't push/pop gc context.
* optimize.c (optimize_function): Likewise.
* tree.c (cp_cannot_inline_tree_fn): Likewise.
* pt.c (instantiate_decl): Inc/dec function_depth instead.
* semantics.c (expand_body): Update for tree_rest_of_compilation
nested argument.
From-SVN: r71208
Jakub Jelinek [Mon, 8 Sep 2003 07:23:34 +0000 (09:23 +0200)]
toplev.c (rest_of_compilation): Call split_all_insns before regstack if optimizing but not scheduling after reload.
* toplev.c (rest_of_compilation): Call split_all_insns before
regstack if optimizing but not scheduling after reload.
* gcc.c-torture/compile/
20030904-1.c: New test.
From-SVN: r71203
Jakub Jelinek [Mon, 8 Sep 2003 06:57:05 +0000 (08:57 +0200)]
sparc.c (struct machine_function): New type.
* config/sparc/sparc.c (struct machine_function): New type.
(TARGET_HAVE_TLS, TARGET_CANNOT_FORCE_CONST_MEM): Define.
(sparc_override_options): Initialize init_machine_status.
(tls_symbolic_operand, tgd_symbolic_operand, tld_symbolic_operand,
tie_symbolic_operand, tle_symbolic_operand): New functions.
(symbolic_operand): Disallow tls_symbolic_operand.
(symbolic_memory_operand): Likewise.
(tls_call_delay, sparc_cannot_force_const_mem, legitimate_constant_p,
constant_address_p, legitimate_pic_operand_p, legitimate_address_p):
New functions.
(sparc_tls_symbol): New variable.
(sparc_tls_get_addr, sparc_tls_got, legitimize_tls_address,
legitimize_address): New functions.
(print_operand): Handle %&.
(sparc_init_machine_status, get_some_local_dynamic_name,
get_some_local_dynamic_name_1): New functions.
(sparc_output_dwarf_dtprel): New function.
* config/sparc/sparc.h (CONSTANT_ADDRESS_P): Moved into
constant_address_p.
(LEGITIMATE_PIC_OPERAND_P): Moved into legitimate_pic_operand_p.
(LEGITIMATE_CONSTANT_P): Moved into legitimate_constant_p.
(GO_IF_LEGITIMATE_ADDRESS): Moved into legitimate_address_p.
(LEGITIMIZE_ADDRESS): Moved into legitimize_address.
(PRINT_OPERAND_PUNCT_VALID_P): Add '&'.
(TARGET_TLS, TARGET_SUN_TLS, TARGET_GNU_TLS): Define.
(ASM_OUTPUT_DWARF_DTPREL): Define.
(PREDICATE_CODES): Add tgd_symbolic_operand, tld_symbolic_operand,
tie_symbolic_operand, tle_symbolic_operand.
* config/sparc/sparc.md (UNSPEC_TLSGD, UNSPEC_TLSLDM, UNSPEC_TLSLDO,
UNSPEC_TLSIE, UNSPEC_TLSLE, UNSPEC_TLSLD_BASE): New constants.
(tls_call_delay): New attribute.
(in_call_delay): Use it.
(movqi, movhi, movsi, movdi): Call legitimize_tls_address if needed.
(tgd_hi22, tgd_lo10, tgd_add32, tgd_add64, tgd_call32, tgd_call64,
tldm_hi22, tldm_lo10, tldm_add32, tldm_add64, tldm_call32, tldm_call64,
tldo_hix22, tldo_lox10, tldo_add32, tldo_add64, tie_hi22, tie_lo10,
tie_ld32, tie_ld64, tie_add32, tie_add64, tle_hix22_sp32,
tle_lox10_sp32, tle_hix22_sp64, tle_lox10_sp64): New insns.
(tldo_ldub_sp32, tldo_ldub1_sp32, tldo_ldub2_sp32, tldo_ldsb1_sp32,
tldo_ldsb2_sp32, tldo_ldub_sp64, tldo_ldub1_sp64, tldo_ldub2_sp64,
tldo_ldub3_sp64, tldo_ldsb1_sp64, tldo_ldsb2_sp64, tldo_ldsb3_sp64,
tldo_lduh_sp32, tldo_lduh1_sp32, tldo_ldsh1_sp32, tldo_lduh_sp64,
tldo_lduh1_sp64, tldo_lduh2_sp64, tldo_ldsh1_sp64, tldo_ldsh2_sp64,
tldo_lduw_sp32, tldo_lduw_sp64, tldo_lduw1_sp64, tldo_ldsw1_sp64,
tldo_ldx_sp64, tldo_stb_sp32, tldo_stb_sp64, tldo_sth_sp32,
tldo_sth_sp64, tldo_stw_sp32, tldo_stw_sp64, tldo_stx_sp64): New
insns.
* config/sparc/sparc-protos.h (legitimate_constant_p,
constant_address_p, legitimate_pic_operand_p, legitimate_address_p,
legitimize_tls_address, legitimize_address, tls_symbolic_operand,
tls_call_delay, sparc_output_dwarf_dtprel): New prototypes.
* config/sparc/linux.h (TARGET_GNU_TLS, TARGET_SUN_TLS): Define.
* config/sparc/linux64.h (TARGET_GNU_TLS, TARGET_SUN_TLS): Likewise.
* configure.in (sparc*-*-*): Add TLS check.
* configure: Rebuilt.
From-SVN: r71202
Eric Botcazou [Mon, 8 Sep 2003 06:41:49 +0000 (08:41 +0200)]
re PR target/11689 (g++3.3 emits un-assembleable code for k6 architecture)
PR target/11689
* config/i386/i386.c (memory_address_length): Fix computation when
the base is esp or ebp.
From-SVN: r71198
Andrew Pinski [Mon, 8 Sep 2003 06:00:46 +0000 (06:00 +0000)]
* g++.dg/template/crash10.C: Only compile it.
From-SVN: r71197
Andrew Pinski [Mon, 8 Sep 2003 03:05:52 +0000 (03:05 +0000)]
re PR middle-end/11665 (ICE in struct initializer when taking address)
2003-09-07 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/11665
* gcc.c-torture/compile/
20030907-1.c: New test.
* g++.dg/init/array11.C: New test.
From-SVN: r71193
GCC Administrator [Mon, 8 Sep 2003 00:16:06 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r71191
Mark Mitchell [Sun, 7 Sep 2003 23:48:33 +0000 (23:48 +0000)]
re PR c++/11852 (ICE: g++ with bad struct initializer.)
PR c++/11852
* varasm.c (initializer_constant_valid_p): Correct logic for
CONSTRUCTORs.
PR c++/11852
* g++.dg/init/struct1.C: New test.
From-SVN: r71187
Mark Mitchell [Sun, 7 Sep 2003 20:54:11 +0000 (20:54 +0000)]
re PR c++/12181 (Wrong code with comma operator and c++)
PR c++/12181
* g++.dg/expr/comma1.C: New test.
From-SVN: r71182
Roger Sayle [Sun, 7 Sep 2003 20:34:13 +0000 (20:34 +0000)]
expr.c (expand_operands): New function to expand an operand pair.
* expr.c (expand_operands): New function to expand an operand pair.
(expand_expr): Call expand_operands whenever we need to expand both
operands of a binary operator.
(do_store_flag): Likewise for operands of comparison operations.
From-SVN: r71179
Roger Sayle [Sun, 7 Sep 2003 20:32:16 +0000 (20:32 +0000)]
combine.c (combine_simplify_rtx): Don't convert -(A*B) into (-A)*B if we care about sign-dependent rounding.
* combine.c (combine_simplify_rtx): Don't convert -(A*B) into
(-A)*B if we care about sign-dependent rounding.
From-SVN: r71178
Mark Mitchell [Sun, 7 Sep 2003 19:21:05 +0000 (19:21 +0000)]
Fix typo.
From-SVN: r71177
Gabriel Dos Reis [Sun, 7 Sep 2003 18:52:53 +0000 (18:52 +0000)]
re PR c++/11762 (namespace aliasing ICE in warn_extern_redeclared_static)
* c-pretty-print.h (pp_c_left_brace): Declare.
(pp_c_right_brace): Likewise.
* c-pretty-print.c (pp_c_left_brace): Now a function
(pp_c_right_brace): Likewise.
cp/
PR c++/11762
* error.c (dump_decl): Handle namespace-alias-definition.
* decl.c (warn_extern_redeclared_static): There is no point in
checking changes in storage class specifier for a namespace
declaration.
(duplicate_decls): Tidy diagnostic message.
* cxx-pretty-print.c (pp_cxx_left_brace): New macro.
(pp_cxx_right_brace): Likewise.
(pp_cxx_original_namespace_definition): New function.
(pp_cxx_namespace_alias_definition): Likewise.
(pp_cxx_declaration): Use them. Handle NAMESPACE_DECLs.
From-SVN: r71175
Jan Hubicka [Sun, 7 Sep 2003 16:23:41 +0000 (18:23 +0200)]
* cfgcleanup.c (try_simplify_condjump): Fix again the preivous patch.
From-SVN: r71172
Gabriel Dos Reis [Sun, 7 Sep 2003 11:59:52 +0000 (11:59 +0000)]
* diagnostic.c (warn_deprecated_use): Move to toplev.c
From-SVN: r71168
Jan Hubicka [Sun, 7 Sep 2003 11:15:46 +0000 (13:15 +0200)]
decl2.c (maybe_emit_vtables, [...]): Avoid re-emitting variables in unit-at-a-time mode.
* decl2.c (maybe_emit_vtables, write_out_vars, finish_file):
Avoid re-emitting variables in unit-at-a-time mode.
From-SVN: r71167
Gabriel Dos Reis [Sun, 7 Sep 2003 10:11:28 +0000 (10:11 +0000)]
langhooks.c (lhd_print_error_function): Move from diagnostic.c.
* langhooks.c (lhd_print_error_function): Move from diagnostic.c.
* Makefile.in (langhooks.o): Depend on diagnostic.h
From-SVN: r71165
Andrew Pinski [Sun, 7 Sep 2003 05:57:10 +0000 (22:57 -0700)]
Forgot to commit the Changelog for the new tests.
From-SVN: r71162
James E Wilson [Sun, 7 Sep 2003 05:52:40 +0000 (22:52 -0700)]
* MAINTAINTERS: Update my affiliation and email address.
From-SVN: r71161
James E Wilson [Sun, 7 Sep 2003 05:21:35 +0000 (22:21 -0700)]
loop.c (loop_regs_update): Delete else clause for PATTERN rtx and simplify.
* loop.c (loop_regs_update): Delete else clause for PATTERN rtx and
simplify.
From-SVN: r71160
Mark Mitchell [Sun, 7 Sep 2003 04:10:10 +0000 (04:10 +0000)]
re PR c++/11867 (static_cast ignores ambiguity)
PR c++/11687
* call.c (standard_conversion): Improve comments.
(perform_direct_initialization): Make sure we return an expression
of the correct type.
* typeck.c (build_static_cast): Check for ambiguity and
accessibility when performing conversions.
PR c++/11687
* g++.dg/expr/static_cast5.C: New test.
From-SVN: r71157
Andrew Pinski [Sun, 7 Sep 2003 03:43:15 +0000 (20:43 -0700)]
re PR c++/11507 (parser fails to recognize namespace)
2003-09-06 Andrew Pinski <pinskia@physics.uc.edu>
PR c++/11507
* g++.dg/lookup/scoped7.C: New test.
PR c++/9574
* g++.dg/other/static1.C: New test.
PR c++/11490
* g++.dg/warn/template-1.C: New test.
PR c++/11432
* g++.dg/template/crash10.C: New test.
PR c++/2478
* g++.dg/overload/VLA.C: New test.
PR c++/10804
* g++.dg/template/call1.C: New test.
From-SVN: r71156
R. Kelley Cook [Sun, 7 Sep 2003 02:11:40 +0000 (02:11 +0000)]
Makefile.in: Define $REMAKE to be $MAKE with LANGUAGES & BOOT_CFLAGS and use it throughout.
2003-09-07 Kelley Cook <kelleycook@wideopenwest.com>
* Makefile.in: Define $REMAKE to be $MAKE with LANGUAGES & BOOT_CFLAGS
and use it throughout.
From-SVN: r71155
Jan Hubicka [Sun, 7 Sep 2003 00:51:53 +0000 (02:51 +0200)]
* cfgcleanup.c (try_simplify_condjump): Fix my previous patch.
From-SVN: r71153
GCC Administrator [Sun, 7 Sep 2003 00:16:07 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r71151
Jan Hubicka [Sat, 6 Sep 2003 22:47:19 +0000 (00:47 +0200)]
cgraph.c (cgraph_mark_reachable_node): Only enqueue finalized functions.
* cgraph.c (cgraph_mark_reachable_node): Only enqueue finalized
functions.
(cgraph_varpool_finalize_decl): Notice global symbol when needed.
From-SVN: r71149
Jan Hubicka [Sat, 6 Sep 2003 22:23:51 +0000 (00:23 +0200)]
toplev.c (rest_of_decl_compilation): Do not finalize external virables.
* toplev.c (rest_of_decl_compilation): Do not finalize external
virables.
From-SVN: r71148
Jan Hubicka [Sat, 6 Sep 2003 21:50:20 +0000 (23:50 +0200)]
re PR target/12070 (ICE converting between double and long double with -msoft-float)
PR target/12070
* calls.c (emit_library_call_value_1): Fix saving of BLKmode arguments.
PR opt/12082
* cfgcleanup.c (try_simplify_condjump): Avoid unreachable code warning.
From-SVN: r71147
Gabriel Dos Reis [Sat, 6 Sep 2003 21:33:46 +0000 (21:33 +0000)]
* diagnostic.c (announce_function): Move to toplev.c.
From-SVN: r71146
Gabriel Dos Reis [Sat, 6 Sep 2003 19:03:44 +0000 (19:03 +0000)]
cp-tree.h (add_binding): Remove declaration.
* cp-tree.h (add_binding): Remove declaration.
* name-lookup.h (supplement_binding): Declare.
* decl.c (add_binding): Move to name-lookup.c.
(push_local_binding): Adjust.
(push_class_binding): Likewise.
(set_identifier_type_value_with_scope): Likewise.
* name-lookup.c (supplement_binding): Rename from add_binding.
Return a bool. Improve documentation.
(set_namespace_binding): Adjust.
* Make-lang.in (cp/name-lookup.o): Depend on toplev.h
From-SVN: r71144
Nathan Sidwell [Sat, 6 Sep 2003 18:37:57 +0000 (18:37 +0000)]
re PR c++/11794 (using declaration inside nested class seems ignored)
cp:
PR c++/11794
* class.c (pushclass): Push dependent using decls for nested
classes of templates too.
testsuite:
PR c++/11794
* g++.dg/parse/using3.C: New test.
From-SVN: r71143
Zdenek Dvorak [Sat, 6 Sep 2003 17:37:09 +0000 (19:37 +0200)]
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r71142
Zdenek Dvorak [Sat, 6 Sep 2003 17:05:02 +0000 (19:05 +0200)]
gcse.c (expr_equiv_p): Don't consider anything to be equal to volatile mem.
* gcse.c (expr_equiv_p): Don't consider anything to be equal to
volatile mem.
From-SVN: r71140
Roger Sayle [Sat, 6 Sep 2003 16:14:30 +0000 (16:14 +0000)]
re PR c++/11409 (using declarations and fabs built-in)
PR c++/11409
* class.c (resolve_address_of_overloaded_function): When building
list of matching non-template function decls, ignore anticipated
declarations of undeclared or shadowed GCC builtins.
* g++.dg/overload/builtin3.C: New test case.
From-SVN: r71139
Steven Bosscher [Sat, 6 Sep 2003 15:44:34 +0000 (15:44 +0000)]
re PR c++/11595 (crash on duplicate label definition)
PR c++/11595
* decl.c (define_label): Remove unreachable timevar pop.
Always return the decl, even if the definition is invalid.
From-SVN: r71138
Kaveh R. Ghazi [Sat, 6 Sep 2003 15:06:36 +0000 (15:06 +0000)]
ggc-common.c (init_ggc_heuristics): Don't use the heuristics when gc checking is enabled.
* ggc-common.c (init_ggc_heuristics): Don't use the heuristics
when gc checking is enabled.
From-SVN: r71137
Steven Bosscher [Sat, 6 Sep 2003 13:34:00 +0000 (13:34 +0000)]
re PR c/9862 (spurious warnings with -W -finline-functions)
PR c/9862
* c-decl.c (c_expand_body_1): Move return warning from here...
(finish_function): ...to here.
* gcc.dg/
20030906-1.c: New test.
* gcc.dg/
20030906-2.c: Likewise.
From-SVN: r71134
Nathan Sidwell [Sat, 6 Sep 2003 11:29:17 +0000 (11:29 +0000)]
re PR c++/12167 (ICE on default argument of class member function if non-simple)
cp:
PR c++/12167
* parser.c (cp_parser_late_parsing_default_args): Push & pop the
unparsed functions queue.
testsuite:
PR c++/12167
* g++.dg/parse/defarg5.C: New test.
* g++.dg/template/non-type-template-argument-1.C: Tweak expected error.
From-SVN: r71133
Josef Zlomek [Sat, 6 Sep 2003 05:28:03 +0000 (07:28 +0200)]
fibheap.c (fibheap_replace_key_data): Change type of OKEY to FIBHEAPKEY_T.
* fibheap.c (fibheap_replace_key_data): Change type of OKEY to
FIBHEAPKEY_T.
From-SVN: r71129
Geoffrey Keating [Sat, 6 Sep 2003 04:07:18 +0000 (04:07 +0000)]
darwin.h (PREFERRED_RELOAD_CLASS): Always return a subset of the input class.
* config/rs6000/darwin.h (PREFERRED_RELOAD_CLASS): Always return
a subset of the input class.
From-SVN: r71128
Bernardo Innocenti [Sat, 6 Sep 2003 01:01:01 +0000 (03:01 +0200)]
* include/c_std/std_cstdlib.h: Avoid using missing C library symbols.
From-SVN: r71127
Kazu Hirata [Sat, 6 Sep 2003 00:22:49 +0000 (00:22 +0000)]
i860.c: Follow spelling conventions.
* config/i860/i860.c: Follow spelling conventions.
* config/i860/i860.h: Likewise.
* config/sh/sh.h: Likewise.
From-SVN: r71126
GCC Administrator [Sat, 6 Sep 2003 00:16:08 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r71124
Nitin Yewale [Fri, 5 Sep 2003 20:00:03 +0000 (20:00 +0000)]
h8300-protos.h: Declare h8300_hard_regno_rename_ok
* config/h8300/h8300-protos.h: Declare h8300_hard_regno_rename_ok
* config/h8300/h8300.h (HARD_REGNO_RENAME_OK): New.
* config/h8300/h8300.c (h8300_hard_regno_rename_ok): New.
From-SVN: r71119
Roger Sayle [Fri, 5 Sep 2003 18:28:48 +0000 (18:28 +0000)]
re PR rtl-optimization/1823 (-ftrapv aborts with pointer difference due to division optimization)
PR optimization/1823
* expmed.c (expand_divmod <EXACT_DIV_EXPR>): Use an unsigned
multiplication to implement division by constant integer.
Co-Authored-By: Richard Henderson <rth@redhat.com>
From-SVN: r71116
Mark Mitchell [Fri, 5 Sep 2003 18:04:21 +0000 (18:04 +0000)]
re PR c++/12163 (static_cast + explicit ctor regression)
PR c++/12163
* call.c (perform_direct_initialization): Correct logic for
direct-initialization of a class type.
PR c++/12146
* pt.c (lookup_template_function): Robustify.
PR c++/12163
* g++.dg/expr/static_cast4.C: New test.
PR c++/12146
* g++.dg/template/crash9.C: New test.
From-SVN: r71115
Andrew Pinski [Fri, 5 Sep 2003 15:36:37 +0000 (15:36 +0000)]
pretty2.C: Update for change in __FUNCTION__.
2003-09-05 Andrew Pinski <pinskia@physics.uc.edu>
* g++.old-deja/g++.ext/pretty2.C: Update for change
in __FUNCTION__.
* g++.old-deja/g++.ext/pretty3.C: Likewise.
From-SVN: r71114
Nick Clifton [Fri, 5 Sep 2003 15:34:46 +0000 (15:34 +0000)]
Oops - I forgot to commit the change to this file along with the v850e1 patch yesterday.
Oops - I forgot to commit the change to this file along with the v850e1 patch
yesterday. This part of the patch adds support for a --target=v850e1-elf
configuration as well as --target=v850-elf --with-cpu=v850e1.
From-SVN: r71113
Petur Runolfsson [Fri, 5 Sep 2003 12:55:33 +0000 (12:55 +0000)]
re PR libstdc++/9028 (codecvt<wchar_t, char, mbstate_t> doesn't work on Red Hat Linux 8.0.)
2003-09-04 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9028
* include/bits/fstream.tcc
(basic_filebuf::_M_destroy_internal_buffer): Destroy _M_ext_buf.
(basic_filebuf::basic_filebuf): Initialize _M_ext_buf,
_M_ext_buf_size, _M_ext_next and _M_ext_end.
(basic_filebuf::underflow): Handle variable-width stateless
encodings (codecvt::encoding() == 0), including UTF-8.
* include/std/std_fstream.h (basic_filebuf):
Declare _M_ext_buf, _M_ext_buf_size, _M_ext_next, _M_ext_end.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: New test.
* testsuite/27_io/objects/wchar_t/12.cc: New test.
* testsuite/27_io/objects/wchar_t/13.cc: New test.
From-SVN: r71111
Nathan Sidwell [Fri, 5 Sep 2003 08:38:44 +0000 (08:38 +0000)]
re PR c++/11922 (ICE on type_unification_real)
cp:
PR c++/11922
* pt.c (tsubst_qualified_id): Make sure we get a non-type.
(tsubst_expr, tsubst_copy_and_build): Pass false, not zero, as
is_type_p to lookup_qualified_name.
* semantics.c (finish_call_expr): Refactor some code.
testsuite:
PR c++/11922
* g++/dg/template/qualified-id1.C: New test.
From-SVN: r71109
Nathan Sidwell [Fri, 5 Sep 2003 08:24:28 +0000 (08:24 +0000)]
re PR c++/12037 (Spurious "statement has no effect" in templates)
cp:
PR c++/12037
* cp-tree.h (COMPOUND_EXPR_OVERLOADED): New.
(build_min_non_dep): Declare.
* tree.c (build_min): Propagate TREE_SIDE_EFFECTS.
(build_min_non_dep): New.
* cvt.c (convert_to_void): Don't explicitly copy
TREE_SIDE_EFFECTS, TREE_NO_UNUSED_WARNING.
* call.c (build_new_method_call): Use build_min_non_dep.
* decl2.c (grok_array_decl): Likewise.
(build_offset_ref_call_from_tree): Likewise.
* typeck.c (finish_class_member_access_expr,
build_x_indirect_ref, build_x_binary_op, build_x_unary_op,
build_x_conditional_expr, build_x_compound_expr): Likewise.
(build_static_cast, build_reinterpret_cast,
build_const_cast): Propagate TREE_SIDE_EFFECTS inside a template.
* typeck2.c (build_x_arrow): Use build_min_non_dep.
(build_functional_cast): Propagate TREE_SIDE_EFFECTS inside a
template.
* rtti.c (build_dynamic_cast_1): Set DECL_IS_PURE.
(build_dynamic_cast): Set TREE_SIDE_EFFECTS.
* pt.c (build_non_dependent_expr): Check COMPOUND_EXPR_OVERLOADED.
testsuite:
PR c++/12037
* g++.dg/warn/noeffect4.C: New test.
From-SVN: r71108
Jonathan Wakely [Fri, 5 Sep 2003 08:10:41 +0000 (09:10 +0100)]
index.html: Note that a namespace alias can't be used when...
2003-09-04 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/faq/index.html: Note that a namespace alias can't be
used when specialising templates in extension namespace.
* docs/html/faq/index.txt: Regenerate.
From-SVN: r71107
Jan Hubicka [Fri, 5 Sep 2003 05:36:47 +0000 (07:36 +0200)]
opts.c (decode_options): Enable unit-at-a-time at -O2.
* opts.c (decode_options): Enable unit-at-a-time at -O2.
* params.def (max-inline-insns-single): Set to 500
(max-inline-insns-auto): Set to 150
* invoke.texi (max-inline-insns-single, max-inline-insns-auto): Update.
From-SVN: r71105
Richard Henderson [Fri, 5 Sep 2003 04:24:30 +0000 (21:24 -0700)]
cgraph.c (cgraph_mark_reachable_node): Split out from ...
* cgraph.c (cgraph_mark_reachable_node): Split out from ...
(cgraph_mark_needed_node): Remove needed argument.
* cgraph.h: Update to match.
* cgraphunit.c (decide_is_function_needed): Split out from ...
(cgraph_finalize_function): Reorg. Avoid deferred_inline_function
if we generated the function.
(record_call_1): Update for cgraph_mark_reachable_node.
* varasm.c (mark_referenced): Likewise.
* objc/objc-act.c (mark_referenced_methods): Likewise.
* decl2.c (mark_member_pointers_and_eh_handlers): Update for
change in cgraph_mark_needed_node arguments.
From-SVN: r71104
DJ Delorie [Fri, 5 Sep 2003 02:12:29 +0000 (22:12 -0400)]
* targhooks.c: Add comment explaining the migration process.
From-SVN: r71103
Jeff Sturm [Fri, 5 Sep 2003 01:54:21 +0000 (01:54 +0000)]
compile.exp: Test with -O3 rather than -O.
* libjava.compile/compile.exp: Test with -O3 rather than -O.
* libjava.lang/lang.exp: Likewise.
From-SVN: r71102
Jeff Sturm [Fri, 5 Sep 2003 01:47:27 +0000 (01:47 +0000)]
libjava.exp (libjava_arguments): Remove unneeded variables.
* lib/libjava.exp (libjava_arguments): Remove unneeded variables.
(test_libjava_from_source): Likewise.
(test_libjava_from_javac): Likewise.
From-SVN: r71101
DJ Delorie [Fri, 5 Sep 2003 00:46:06 +0000 (20:46 -0400)]
Remove duplicate entry, mention PR.
From-SVN: r71100
Eric Christopher [Fri, 5 Sep 2003 00:26:26 +0000 (00:26 +0000)]
t-frv: Fix path for frv-abi.h.
2003-09-04 Eric Christopher <echristo@redhat.com>
* config/frv/t-frv: Fix path for frv-abi.h.
* config/frv/frv-asm.h: Fix string concatenation.
From-SVN: r71099