Arnaud Charlet [Mon, 3 Jan 2005 15:35:16 +0000 (16:35 +0100)]
decl.c (compatible_signatures_p): New function.
* decl.c (compatible_signatures_p): New function. The intended purpose
is to check if two function signatures for a call-site and a callee are
compatible enough for the call to be valid. The underlying purpose is
to check if a call to a mapped builtin is using the right interface.
The current code actually does not check antyhing - this a placeholder
for future refinements.
(gnat_to_gnu_entity) <E_Subprogram_Call>: Add preliminary bits to handle
builtin calls for convention Intrinsic.
* gigi.h (builtin_decl_for): Declare (new function).
* utils.c (gnat_install_builtins): Install the target specific builtins.
(builtin_decl_for): New function, provide a dummy body for now.
From-SVN: r92833
Arnaud Charlet [Mon, 3 Jan 2005 15:35:01 +0000 (16:35 +0100)]
checks.adb (Apply_Alignment_Check): Generate a warning if an object address is incompatible with its base type...
* checks.adb (Apply_Alignment_Check): Generate a warning if an object
address is incompatible with its base type alignment constraints when
this can be decided statically.
From-SVN: r92832
Arnaud Charlet [Mon, 3 Jan 2005 15:34:18 +0000 (16:34 +0100)]
bld.ads, [...]: Remove gpr2make, replaced by gprmake.
* bld.ads, bld.adb, bld-io.ads, bld-io.adb, gprcmd.adb,
gpr2make.ads, gpr2make.adb: Remove gpr2make, replaced by gprmake.
* Makefile.in: Add support to build shared Ada libraries on solaris x86
Remove gpr2make, replaced by gprmake.
Remove references to gnatmem and libaddr2line.
Add indepsw.adb<indepsw-linux.adb to TOOLS_TARGET_PAIRS for IA64 linux.
(gnatlib-shared-darwin): Add "-fno-common" to GNATLIBCFLAGS.
Add support for specialized version of Ada.Numerics.Aux for Darwin: use
a-numaux-darwin.ads and a-numaux-darwin.adb
Enable mlib-tgt-lynxos.adb on lynxos.
* Make-lang.in: Remove rules for gpr2make.
When generating sdefault.adb, do not call Relocate_Path
on S3 for function Target_Name, as it is not a path.
Remove references to gnatmem and libaddr2line.
* a-numaux-darwin.ads, a-numaux-darwin.adb, g-soccon-darwin.ads: New
files.
From-SVN: r92831
Arnaud Charlet [Mon, 3 Jan 2005 15:33:59 +0000 (16:33 +0100)]
atree.adb: Add a fifth component to entities This allows us to add 32 flags and four new fields
* atree.adb: Add a fifth component to entities
This allows us to add 32 flags and four new fields
* atree.ads: Add a fifth component to entities
This allows us to add 32 flags and four new fields
* einfo.ads, einfo.adb: Document new fields and new flags now available
Add routines for printing new fields
* treepr.adb: Call routines to print out additional fields if present
From-SVN: r92830
Arnaud Charlet [Mon, 3 Jan 2005 15:32:19 +0000 (16:32 +0100)]
s-atacco.ads, [...]: Protect use of 'Constrained by warnings on/off...
* s-atacco.ads, a-direio.adb: Protect use of 'Constrained by warnings
on/off, since this is an obsolescent feature, for which we now generate
a warning.
* sem_attr.adb (Analyze_Attribute, case Constrained): Issue warning if
warning mode is set and obsolescent usage of this attribute occurs.
(Resolve_Access, case 'Access): Note that GNAT uses the context type to
disambiguate overloaded prefixes, in accordance with AI-235. GNAT code
predates, and partly motivates, the adoption of the AI.
Implement new Ada 2005 attribute Mod
* exp_attr.adb (Expand_N_Attribute_Reference): Implement Ada 2005
attribute Mod.
* par-ch4.adb (P_Name): In Ada 2005 mode, recognize new attribute Mod
* snames.h, snames.ads, snames.adb: Add entry for No_Dependence for
pragma restrictions.
New entry for Ada 2005 attribute Mod.
* par-prag.adb:
Add recognition of new pragma Restrictions No_Dependence
Recognize restriction No_Obsolescent_Features at parse time
* bcheck.adb: Add circuitry for checking for consistency of
No_Dependence restrictions.
* lib-writ.ads, lib-writ.adb: Output new R lines for No_Dependence
restrictions.
* restrict.ads, restrict.adb: Add subprograms to deal with
No_Dependence restrictions.
* rtsfind.adb: Check that implicit with's do not violate No_Dependence
restrictions.
* sem_ch3.adb, sem_ch11.adb, sem_ch13.adb, lib-xref.adb,
sem_attr.adb: Add check for new restriction No_Obsolescent_Features
* scn.ads, prj-err.ads, prj-err.adb, ali-util.adb, gprep.adb: Add new
dummy parameter to scng instantiation.
Needed for new restriction No_Obsolescent_Features
* scn.adb: (Obsolescent_Check): New procedure
Needed for new restriction No_Obsolescent_Features
* scng.ads, scng.adb: Always allow wide characters in Ada 2005 mode, as
specified by AI-285, needed for implementation of AI-388 (adding greek
pi to Ada.Numerics).
Add new generic formal to scng, needed for new restriction
No_Obsolescent_Features.
* s-rident.ads: Add new restriction No_Obsolescent_Features.
* ali.ads, ali.adb: Adjustments for reading new No_Dependence
restrictions lines.
(Scan_ALI): When finding an unexpected character on an R line, raise
exception Bad_R_Line, instead of calling Fatal_Error, so that, when
Ignore_Errors is True, default restrictions are set and scanning of the
ALI file continues with the next line. Also, when Bad_R_Line is raised
and Ignore_Errors is True, skip to the end of le line.
* sem_ch10.adb: Check that explicit with's do not violate
No_Dependence restrictions.
(Install_Withed_Unit): Add code to implement AI-377 and diagnose
illegal context clauses containing child units of instance.
* sem_prag.adb: Processing and checking for new No_Dependence
restrictions.
(Analyze_Pragma, case Psect_Object): Call Check_Arg_Is_External_Name to
analyze and check the External argument.
* a-numeri.ads: Add greek letter pi as alternative spelling of Pi
From-SVN: r92829
Arnaud Charlet [Mon, 3 Jan 2005 15:30:02 +0000 (16:30 +0100)]
gen-soccon.c: New utility program to generate g-soccon.ads automatically.
* gen-soccon.c: New utility program to generate g-soccon.ads
automatically.
* socket.c, gsocket.h: Split inclusion of system header files into a
gsocket.h file separated from socket.c, to allow reuse in gen-soccon.c.
* g-soccon.ads, g-soccon-unixware.ads, g-soccon-tru64.ads,
g-soccon-aix.ads, g-soccon-irix.ads, g-soccon-hpux.ads,
g-soccon-interix.ads, g-soccon-solaris.ads, g-soccon-mingw.ads,
g-soccon-vxworks.ads, g-soccon-freebsd.ads: Note that these files
should not be edited by hand anymore, but should be regenerated using
gen-soccon.
From-SVN: r92828
Paolo Carlini [Mon, 3 Jan 2005 14:07:26 +0000 (14:07 +0000)]
istream.tcc (ignore(streamsize), [...]): Reset _M_gcount to numeric_limits<streamsize>::min().
2005-01-03 Paolo Carlini <pcarlini@suse.de>
* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
int_type)): Reset _M_gcount to numeric_limits<streamsize>::min().
* src/istream.cc (basic_istream<char>::ignore(streamsize, int_type),
basic_istream<wchar_t>::ignore(streamsize, int_type)): Likewise.
* src/istream.cc (basic_istream<char>::ignore(streamsize),
basic_istream<wchar_t>::ignore(streamsize)): Likewise; fix a typo.
From-SVN: r92827
Paolo Bonzini [Mon, 3 Jan 2005 14:01:13 +0000 (14:01 +0000)]
2005-01-03 Paolo Bonzini <bonzini@gnu.org>
Revert 2004-12-28 Makefile changes, a better fix will be
applied to mainline and src after GCC 4.0 branches.
From-SVN: r92826
Uros Bizjak [Mon, 3 Jan 2005 09:54:53 +0000 (10:54 +0100)]
re PR target/19236 (ICE compiling logp(x) with -ffast-math)
PR target/19236
* config/i386/i386.c (log1psf2): Change mode of operands[0,1]
to SFmode.
(log1pdf2): Change mode of operands[0,1] to DFmode.
From-SVN: r92825
Eric Botcazou [Mon, 3 Jan 2005 08:23:58 +0000 (09:23 +0100)]
sparc.h (SPARC_RELAXED_ORDERING): Define to false.
* config/sparc/sparc.h (SPARC_RELAXED_ORDERING): Define to false.
* config/sparc/linux.h (SPARC_RELAXED_ORDERING): Define to true.
* config/sparc/linux64.h (SPARC_RELAXED_ORDERING): Likewise.
* config/sparc/sparc.c (TARGET_RELAXED_ORDERING): Define to
SPARC_RELAXED_ORDERING.
From-SVN: r92824
Richard Henderson [Mon, 3 Jan 2005 06:26:52 +0000 (22:26 -0800)]
re PR target/14631 (common subexpression elimilation error with sse2 instrinsic _mm_insert_epi16)
PR target/14631
* config/i386/i386.c (ix86_expand_builtin): [IX86_BUILTIN_PINSRW,
IX86_BUILTIN_PINSRW128]: Fix wrong selector range in error message.
* config/i386/i386.md (mmx_pinsrw, sse2_pinsrw): Fix selector
handling.
(*mmx_pinsrw, *sse2_pinsrw): New patterns.
* config/i386/i386/predicates.md (const_pow2_1_to_8_operand,
const_pow2_1_to_128_operand): New predicates.
Co-Authored-By: Uros Bizjak <uros@kss-loka.si>
From-SVN: r92823
Hans-Peter Nilsson [Mon, 3 Jan 2005 03:33:58 +0000 (03:33 +0000)]
re PR rtl-optimization/12092 (ICE: Floating point exception)
PR rtl-optimization/12092
* gcc.dg/pr12092-1.c: Fix typo in dg directive.
From-SVN: r92822
GCC Administrator [Mon, 3 Jan 2005 00:16:44 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r92819
Paolo Carlini [Mon, 3 Jan 2005 00:02:47 +0000 (00:02 +0000)]
istream.cc (basic_istream<char>::ignore(streamsize), [...]): Avoid _M_gcount overflows.
2005-01-02 Paolo Carlini <pcarlini@suse.de>
* src/istream.cc (basic_istream<char>::ignore(streamsize),
basic_istream<char>::ignore(streamsize, int_type),
basic_istream<wchar_t>::ignore(streamsize),
basic_istream<wchar_t>::ignore(streamsize, int_type)): Avoid
_M_gcount overflows.
* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
int_type)): Likewise; use snextc in the main loop, consistently
with the specializations above.
From-SVN: r92816
Greg McGary [Sun, 2 Jan 2005 22:24:50 +0000 (22:24 +0000)]
mf-impl.h (uintptr_t): Get typedef via stdint.h or define explicitly.
* mf-impl.h (uintptr_t): Get typedef via stdint.h or define explicitly.
* mf-runtime.h: New file, replaces mf-runtime.h.in.
* configure.ac (AC_CONFIG_FILES): mf-runtime.h is no longer generated.
* Makefile.in: Ditto.
* testsuite/lib/libmudflap.exp: Add -I${srcdir}/.. to get mf-runtime.h
* testsuite/libmudflap.c/pass32-frag.c: s/uintptr_t/__mf_uintptr_t/
* testsuite/libmudflap.c/fail36-frag.c: New test.
* testsuite/libmudflap.c/fail37-frag.c: New test.
* testsuite/libmudflap.c/fail38-frag.c: New test.
From-SVN: r92815
Greg McGary [Sun, 2 Jan 2005 22:20:02 +0000 (22:20 +0000)]
tree-mudflap.c (mf_varname_tree): decl_printable_name handles anonymous decls.
* tree-mudflap.c (mf_varname_tree): decl_printable_name handles
anonymous decls.
(mf_xform_derefs_1) [RESULT_DECL, STRING_CST]: Handle as innermost
object. [ptr_type]: Remove unused variable.
Remember nearest addressable array-element or record-component
when checking bitfield components. Tolerate empty BIND_EXPR.
From-SVN: r92814
Andreas Jaeger [Sun, 2 Jan 2005 21:32:56 +0000 (22:32 +0100)]
Remove whitespace
From-SVN: r92812
Andreas Jaeger [Sun, 2 Jan 2005 21:32:31 +0000 (22:32 +0100)]
* gcc.dg/pr12092-1.c: Do not run on x86_64.
From-SVN: r92811
Chris Jefferson [Sun, 2 Jan 2005 17:49:51 +0000 (17:49 +0000)]
stl_algobase.h (mismatch): Correct concept check.
2005-01-02 Chris Jefferson <chris@bubblescope.net>
* include/bits/stl_algobase.h (mismatch): Correct concept check.
From-SVN: r92808
Richard Henderson [Sun, 2 Jan 2005 08:35:34 +0000 (00:35 -0800)]
tree-vectorizer.c (vect_analyze_offset_expr): Strip conversions that don't narrow the value.
* tree-vectorizer.c (vect_analyze_offset_expr): Strip conversions
that don't narrow the value. Fail for other conversions.
From-SVN: r92804
Richard Henderson [Sun, 2 Jan 2005 07:52:31 +0000 (23:52 -0800)]
re PR c/19031 (#pragma weak handling changes in 4.0.0)
PR c/19031
* c-decl.c (pop_file_scope): Call maybe_apply_pending_pragma_weaks.
* c-lang.c (finish_file): Don't do it here.
* objc/objc-act.c (objc_finish_file): Likewise.
* cgraph.c (decl_assembler_name_equal): New.
(cgraph_node_for_asm, cgraph_varpool_node_for_asm): New.
(cgraph_varpool_node): Actually link up cgraph_varpool_nodes.
* cgraph.h (struct cgraph_varpool_node): Add next.
(cgraph_node_for_asm, cgraph_varpool_node_for_asm): Declare.
* varasm.c (assemble_alias): Mark the target as needed.
From-SVN: r92803
Andrew Pinski [Sun, 2 Jan 2005 03:46:21 +0000 (03:46 +0000)]
re PR middle-end/19221 (ICE: rtl_verify_flow_info, at cfgrtl.c:2240)
2005-01-01 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/19221
* function.c (get_arg_pointer_save_area): Use entry_of_function
instead of get_insns.
From-SVN: r92802
Bryce McKinlay [Sun, 2 Jan 2005 03:35:57 +0000 (03:35 +0000)]
boehm-gc.h: Include gc_ext_config.h, not gc_config.h.
2005-01-01 Bryce McKinlay <mckinlay@redhat.com>
* include/boehm-gc.h: Include gc_ext_config.h, not gc_config.h.
2005-01-01 Bryce McKinlay <mckinlay@redhat.com>
* configure.ac (AC_CONFIG_HEADERS): Build both include/gc_config.h
and include/gc_ext_config.h.
* include/gc_ext_config.h: New file. Define only THREAD_LOCAL_ALLOC.
* include/gc.h: Undef PACKAGE_* before including gc_config.h.
From-SVN: r92801
Geoffrey Keating [Sun, 2 Jan 2005 02:55:35 +0000 (02:55 +0000)]
fvisibility-override1.C: Test using 'hidden' and 'default' for better portability.
* g++.dg/ext/visibility/fvisibility-override1.C: Test using
'hidden' and 'default' for better portability.
* g++.dg/ext/visibility/fvisibility-override2.C: Likewise.
From-SVN: r92800
Gabriel Dos Reis [Sun, 2 Jan 2005 01:32:21 +0000 (01:32 +0000)]
internal.h: Update references to Cpp lib filenames.
* internal.h: Update references to Cpp lib filenames.
* directives.c: Likewise.
* init.c: Likewise.
* macro.c: Likewise.
* traditional.c: Likewise.
From-SVN: r92799
GCC Administrator [Sun, 2 Jan 2005 00:16:49 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r92797
Roger Sayle [Sun, 2 Jan 2005 00:15:01 +0000 (00:15 +0000)]
re PR rtl-optimization/12092 (ICE: Floating point exception)
PR rtl-optimization/12092
* loop.c (emit_prefetch_instructions): Do nothing if PREFETCH_BLOCK
is zero.
* gcc.dg/pr12092-1.c: New test case.
Co-Authored-By: Andrew Pinski <pinskia@physics.uc.edu>
Co-Authored-By: James E Wilson <wilson@specifixinc.com>
From-SVN: r92794
Paolo Carlini [Sat, 1 Jan 2005 23:14:53 +0000 (23:14 +0000)]
13189.cc: Fix, first include testsuite_hooks.h, to know whether including ext/enc_filebuf.h.
2005-01-01 Paolo Carlini <pcarlini@suse.de>
* testsuite/ext/enc_filebuf/char/13189.cc: Fix, first include
testsuite_hooks.h, to know whether including ext/enc_filebuf.h.
* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
From-SVN: r92791
Geoffrey Keating [Sat, 1 Jan 2005 21:53:26 +0000 (21:53 +0000)]
cxa_vec.C: Add -flat_namespace on Darwin 6 and 7.
* g++.old-deja/g++.abi/cxa_vec.C: Add -flat_namespace on Darwin
6 and 7.
* g++.old-deja/g++.brendan/new3.C: Likewise.
From-SVN: r92790
Paolo Carlini [Sat, 1 Jan 2005 21:03:33 +0000 (21:03 +0000)]
1.cc: Fix, null-terminate array1 at the outset.
2005-01-01 Paolo Carlini <pcarlini@suse.de>
* testsuite/27_io/basic_istream/extractors_character/char/1.cc: Fix,
null-terminate array1 at the outset.
* testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc:
Likewise.
From-SVN: r92789
Roger Sayle [Sat, 1 Jan 2005 20:33:28 +0000 (20:33 +0000)]
tree.c (int_fits_type_p): A narrower type always fits in a wider one...
* tree.c (int_fits_type_p): A narrower type always fits in a
wider one, except for negative values into unsigned types.
Co-Authored-By: Olivier Hainque <hainque@act-europe.fr>
From-SVN: r92788
Roger Sayle [Sat, 1 Jan 2005 17:29:53 +0000 (17:29 +0000)]
tree.c (int_fits_type_p): Compare the result of force_fit_type with the original constant rather than...
* tree.c (int_fits_type_p): Compare the result of force_fit_type
with the original constant rather than require TREE_OVERFLOW.
From-SVN: r92786
Steven Bosscher [Sat, 1 Jan 2005 16:19:35 +0000 (16:19 +0000)]
Rotate ChangeLog
From-SVN: r92785
Steven Bosscher [Sat, 1 Jan 2005 16:15:23 +0000 (16:15 +0000)]
re PR middle-end/17544 (incorrect -Wunreachable-code warning for mains with a return statement)
* emit-rtl.c (add_insn_before): Fix comment typo.
PR middle-end/17544
* c-decl.c (finish_function): If compiling C99, annotate the
compiler generated return with the current file name and line 0.
* tree-cfg.c (remove_useless_stmts_warn_notreached): Only warn if
the source line is greater than 0.
(remove_bb): Likewise.
cp/
PR middle-end/17544
* decl.c (finish_function): Fix comment. Annotate the compiler
generated return with the current file name and line 0.
testsuite/
* gcc.dg/
20041231-1.C: New test.
* g++.dg/warn/Wunreachable-code-1.C: New test.
From-SVN: r92784
Richard Henderson [Sat, 1 Jan 2005 02:38:06 +0000 (18:38 -0800)]
re PR tree-optimization/19042 (Complex types are not SRA all the time.)
PR tree-opt/19042
* tree-sra.c (decide_block_copy): Force use_block_copy false
for complex values.
From-SVN: r92782
Richard Henderson [Sat, 1 Jan 2005 01:43:12 +0000 (17:43 -0800)]
re PR middle-end/17799 (Non-optimizing compile loses 'this')
PR middle-end/17799
* function.c (use_register_for_decl): Check DECL_IGNORED_P instead
of DECL_ARTIFICIAL.
(assign_parms_augmented_arg_list): Set DECL_IGNORED_P.
* c-decl.c (build_compound_literal): Likewise.
* dwarf2asm.c (dw2_force_const_mem): Likewise.
* gimplify.c (create_artificial_label): Likewise.
* tree-inline.c (expand_call_inline): Likewise.
* var-tracking.c (vt_initialize): Likewise.
* tree-outof-ssa.c (create_temp): Copy DECL_IGNORED_P.
cp/
* call.c (make_temporary_var_for_ref_to_temp): Set DECL_IGNORED_P.
* class.c (build_vtable): Don't conditionallize setting it
based on DWARF2_DEBUG.
(layout_class_type): Set DECL_IGNORED_P.
* decl2.c (get_guard): Likewise.
* rtti.c (get_tinfo_decl, build_lang_decl): Likewise.
* tree.c (build_local_temp): Likewise.
From-SVN: r92781
GCC Administrator [Sat, 1 Jan 2005 00:16:16 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r92779
Andrew Pinski [Fri, 31 Dec 2004 22:07:47 +0000 (22:07 +0000)]
re PR target/19211 (GNAT bug box compiling a-exexda.adb with stage1 compiler)
2004-12-31 Andrew Pinski <pinskia@physics.uc.edu>
PR target/19211
* config/darwin.c (machopic_legitimize_pic_address): If the orig
is subregister return orig.
From-SVN: r92776
Richard Henderson [Fri, 31 Dec 2004 22:04:30 +0000 (14:04 -0800)]
types.c (FFI_AGGREGATE_TYPEDEF): Remove.
* src/types.c (FFI_AGGREGATE_TYPEDEF): Remove.
(FFI_TYPEDEF): Rename from FFI_INTEGRAL_TYPEDEF. Replace size and
offset parameters with a type parameter; deduce size and structure
alignment. Update all users.
From-SVN: r92775
Richard Henderson [Fri, 31 Dec 2004 20:11:17 +0000 (12:11 -0800)]
types.c (FFI_TYPE_POINTER): Define with sizeof.
* src/types.c (FFI_TYPE_POINTER): Define with sizeof.
(FFI_TYPE_LONGDOUBLE): Fix for ia64.
* src/ia64/ffitarget.h (struct ffi_ia64_trampoline_struct): Move
into ffi_prep_closure.
* src/ia64/ia64_flags.h, src/ia64/ffi.c, src/ia64/unix.S: Rewrite
from scratch.
From-SVN: r92774
Paolo Carlini [Fri, 31 Dec 2004 18:15:22 +0000 (18:15 +0000)]
type_traits (is_member_function_pointer): Provide a workaround for c++/19076, correct for functions with up to 15 arguments.
2004-12-31 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits (is_member_function_pointer): Provide a
workaround for c++/19076, correct for functions with up to 15
arguments.
* testsuite/tr1/4_metaprogramming/composite_type_traits/
is_member_pointer/is_member_pointer.cc: Uncomment "XFAILed" tests;
add a test for variadic functions.
* testsuite/tr1/4_metaprogramming/composite_type_traits/
is_scalar/is_scalar.cc: Uncomment "XFAILed" tests.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_enum/is_enum.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_member_function_pointer/is_member_function_pointer.cc: Likewise;
add a test for variadic functions.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_member_object_pointer/is_member_object_pointer.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_nothrow_assign/has_nothrow_assign.cc: Uncomment "XFAILed" tests.
* testsuite/tr1/4_metaprogramming/type_properties/
has_nothrow_constructor/has_nothrow_constructor.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_nothrow_copy/has_nothrow_copy.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_assign/has_trivial_assign.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_constructor/has_trivial_constructor.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_copy/has_trivial_copy.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_destructor/has_trivial_destructor.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
is_pod/is_pod.cc: Likewise.
From-SVN: r92769
Zdenek Dvorak [Fri, 31 Dec 2004 18:03:28 +0000 (19:03 +0100)]
tree-scalar-evolution.c (instantiate_parameters_1): Copy the expression only if needed.
* tree-scalar-evolution.c (instantiate_parameters_1): Copy the
expression only if needed.
From-SVN: r92768
John David Anglin [Fri, 31 Dec 2004 17:00:09 +0000 (17:00 +0000)]
* pa-hpux.h (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Define.
From-SVN: r92767
Hans-Peter Nilsson [Fri, 31 Dec 2004 16:28:34 +0000 (16:28 +0000)]
re PR target/18701 (mmix-knuth-mmixware gcc.c-torture/execute failures:
20010224-1.c,
20020216-1.c,
20040218-1.c,
20040709-2.c)
PR target/18701
* combine.c (combine_simplify_rtx): Do not allow paradoxical
subregs of MEM.
From-SVN: r92762
Hans-Peter Nilsson [Fri, 31 Dec 2004 16:24:48 +0000 (16:24 +0000)]
re PR target/18701 (mmix-knuth-mmixware gcc.c-torture/execute failures:
20010224-1.c,
20020216-1.c,
20040218-1.c,
20040709-2.c)
PR target/18701
* combine.c (gen_lowpart_for_combine): When stripping SUBREG of
MEM, adjust imode and isize.
From-SVN: r92760
Andreas Jaeger [Fri, 31 Dec 2004 12:34:18 +0000 (13:34 +0100)]
* testsuite/lib/libjava.exp (libjava_find_gij): Handle multilibs.
From-SVN: r92758
GCC Administrator [Fri, 31 Dec 2004 00:16:20 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r92752
Sebastian Pop [Fri, 31 Dec 2004 00:11:08 +0000 (01:11 +0100)]
update_version (ADD_BRANCHES): Replace lno-branch with autovect-branch.
* update_version (ADD_BRANCHES): Replace lno-branch with
autovect-branch.
From-SVN: r92747
Mark Mitchell [Thu, 30 Dec 2004 23:29:33 +0000 (23:29 +0000)]
cp-tree.h (cp_declarator): Split "name" field into qualifying_scope and unqualified_name.
* cp-tree.h (cp_declarator): Split "name" field into
qualifying_scope and unqualified_name.
* decl.c (get_scope_of_declarator): Adjust accordingly.
(grokdeclarator): Likewise.
* decl2.c (grokfield): Likewise, and adjust call to
do_class_using_decl.
* name-lookup.c (do_class_using_decl): Split "decl" into
"scope" and "name". Remove unnecessary code.
* name-lookup.h (do_class_using_decl): Adjust declaration.
* parser.c (make_id_declarator): Split "id" into qualifying_scope
and unqualified_name.
(cp_parser_using_declaration): Adjust call to do_class_using_decl.
(cp_parser_direct_declarator): Adjust to handle the fact that
cp_parser_declarator_id no longer returns a SCOPE_REF.
(cp_parser_direct_declarator): Likewise.
(cp_parser_declarator_id): Do not create a SCOPE_REF for qualified
names.
(cp_parser_member_declaration): Adjust call to make_id_declarator.
(cp_parser_check_declarator_template_parameters): Do not expect a
SCOPE_REF.
* decl.c (duplicate_decls): Call ggc_free on declarations we will
not be needing any longer.
From-SVN: r92746
Paolo Carlini [Thu, 30 Dec 2004 23:27:28 +0000 (23:27 +0000)]
type_traits: Add has_trivial_copy, has_trivial_assign, has_nothrow_copy, has_nothrow_assign.
2004-12-30 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits: Add has_trivial_copy, has_trivial_assign,
has_nothrow_copy, has_nothrow_assign.
* testsuite/testsuite_tr1.h: Add test_copy_property and
test_assign_property.
* testsuite/tr1/4_metaprogramming/type_properties/
has_nothrow_assign/has_nothrow_assign.cc: New.
* testsuite/tr1/4_metaprogramming/type_properties/
has_nothrow_assign/typedefs.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_nothrow_copy/has_nothrow_copy.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_nothrow_copy/typedefs.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_assign/has_trivial_assign.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_assign/typedefs.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_copy/has_trivial_copy.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_copy/typedefs.cc: Likewise.
From-SVN: r92745
Richard Henderson [Thu, 30 Dec 2004 20:47:55 +0000 (12:47 -0800)]
ia64.c (hfa_element_mode): Return false for zero-sized top-level aggregates.
* config/ia64/ia64.c (hfa_element_mode): Return false for
zero-sized top-level aggregates.
From-SVN: r92741
David Edelsohn [Thu, 30 Dec 2004 17:16:39 +0000 (17:16 +0000)]
read_eof.f90: Open scratch file, not /dev/null.
* gfortran.fortran-torture/execute/read_eof.f90: Open scratch
file, not /dev/null. Abort on error.
From-SVN: r92737
Jan Hubicka [Thu, 30 Dec 2004 13:16:13 +0000 (14:16 +0100)]
re PR target/18019 (-march=pentium4 generates word fetch instead of byte fetch)
PR target/18019
* i386.md (movqi_1): Fix -Os instruction choice.
From-SVN: r92733
Sohail Somani [Thu, 30 Dec 2004 11:24:06 +0000 (12:24 +0100)]
re PR ada/19128 (Bug box while building asharp)
2004-12-30 Sohail Somani <sohail@sohailsomani.com>
PR ada/19128
* trans.c (gnat_to_gnu): Fix typo: Use correct return variable.
From-SVN: r92732
Ziemowit Laski [Thu, 30 Dec 2004 10:18:18 +0000 (10:18 +0000)]
re PR objc/18971 (Can't send messages to methods with arrays as parameters)
[gcc/objc/ChangeLog]
2004-12-30 Ziemowit Laski <zlaski@apple.com>
PR objc/18971
* objc-act.c (get_arg_type_list, start_method_def): Decay
array arguments into pointers.
(gen_type_name_0): Learn to pretty-print array types.
[gcc/testsuite/ChangeLog]
2004-12-30 Alexander Malmberg <alexander@malmberg.org>
Ziemowit Laski <zlaski@apple.com>
PR objc/18971
* objc.dg/encode-5.m: New test.
From-SVN: r92731
Steven Bosscher [Thu, 30 Dec 2004 09:09:07 +0000 (09:09 +0000)]
global.c (regclass_intersect): Remove.
* global.c (regclass_intersect): Remove.
(mark_reg_use_for_earlyclobber): Use reg_classes_intersect_p instead.
From-SVN: r92729
Richard Henderson [Thu, 30 Dec 2004 08:59:15 +0000 (00:59 -0800)]
ia64.c (ia64_function_value): Use PARALLEL for aggregates with XF/XCmode.
* config/ia64/ia64.c (ia64_function_value): Use PARALLEL for
aggregates with XF/XCmode.
From-SVN: r92728
Richard Henderson [Thu, 30 Dec 2004 05:22:35 +0000 (21:22 -0800)]
20040813-1.c: Disable for alpha and ia64.
* gcc.dg/
20040813-1.c: Disable for alpha and ia64.
* objc.dg/stabs-1.m: Disable for ia64.
From-SVN: r92727
Richard Henderson [Thu, 30 Dec 2004 03:08:18 +0000 (19:08 -0800)]
target.h (targetm.calls.arg_partial_bytes): New.
* target.h (targetm.calls.arg_partial_bytes): New.
* target-def.h (TARGET_ARG_PARTIAL_BYTES): New.
* calls.c (store_unaligned_arguments_into_pseudos): Update for
partial in bytes.
(load_register_parameters): Likewise.
(store_one_arg): Likewise.
(initialize_argument_information): Use targetm.calls.arg_partial_bytes.
(emit_library_call_value_1): Likewise.
* expr.c (block_move_libcall_safe_for_call_parm): Likewise.
(emit_push_insn): Update for partial in bytes.
* expr.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* function.c (assign_parm_find_entry_rtl): Use
targetm.calls.arg_partial_bytes. Update for result in bytes.
(locate_and_pad_parm): Update for partial in bytes.
* system.h (FUNCTION_ARG_PARTIAL_NREGS): Poison.
* targhooks.c (hook_int_CUMULATIVE_ARGS_mode_tree_bool_0): New.
* targhooks.h (hook_int_CUMULATIVE_ARGS_mode_tree_bool_0): Declare.
* doc/tm.texi (TARGET_ARG_PARTIAL_BYTES): Rename and update from
FUNCTION_ARG_PARTIAL_NREGS.
* config/arc/arc.h, config/c4x/c4x.h, config/i386/i386.h,
config/i860/i860.h, config/m68hc11/m68hc11.h, config/m68k/m68k.h,
config/pdp11/pdp11.h, config/s390/s390.h, config/stormy16/stormy16.h,
config/xtensa/xtensa.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/alpha/alpha.c (alpha_arg_partial_bytes): New.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/alpha/alpha.h, config/alpha/unicosmk.h,
config/alpha/vms.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/arm/arm.h (FUNCTION_ARG_PARTIAL_NREGS): Move ...
* config/arm/arm.c (arm_arg_partial_bytes): ... here.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/cris/cris.h (FUNCTION_ARG_PARTIAL_NREGS): Move ...
* config/cris/cris.c (cris_arg_partial_bytes): ... here.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/fr30/fr30.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/fr30/fr30.c (fr30_arg_partial_bytes): Rename from
fr30_function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/fr30/fr30-protos.h: Update.
* config/frv/frv.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/frv/frv.c (frv_arg_partial_bytes): Rename from
frv_function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/frv/frv-protos.h: Update.
* config/ia64/ia64.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/ia64/ia64.c (ia64_arg_partial_bytes): Rename from
ia64_function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/ia64/ia64-protos.h: Update.
* config/iq2000/iq2000.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/iq2000/iq2000.c (iq2000_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/iq2000/iq2000-protos.h: Update.
* config/m32r/m32r.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/m32r/m32r.c (m32r_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/m32r/m32r-protos.h: Update.
* config/mcore/mcore.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/mcore/mcore.c (mcore_arg_partial_bytes): Rename from
mcore_function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/mcore/mcore-protos.h: Update.
* config/mips/mips.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/mips/mips.c (mips_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/mips/mips-protos.h: Update.
* config/mn10300/mn10300.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/mn10300/mn10300.c (mn10300_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/mn10300/mn10300-protos.h: Update.
* config/ns32k/ns32k.h (FUNCTION_ARG_PARTIAL_NREGS): Move ...
* config/ns32k/ns32k.c (ns32k_arg_partial_bytes): ... here.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/pa/pa.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/pa/pa.c (pa_arg_partial_bytes): Rename from
function_arg_partial_nregs. Handle 32-bit. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/pa/pa-protos.h: Update.
* config/rs6000/rs6000.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/rs6000/rs6000.c (rs6000_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/rs6000/rs6000-protos.h: Update.
* config/sh/sh.h (FUNCTION_ARG_PARTIAL_NREGS): Move ...
* config/sh/sh.c (sh_arg_partial_bytes): ... here.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/sparc/sparc.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/sparc/sparc.c (sparc_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/sparc/sparc-protos.h: Update.
* config/v850/v850.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/v850/v850.c (v850_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/v850/v850-protos.h: Update.
From-SVN: r92726
Jonathan Wakely [Thu, 30 Dec 2004 02:32:04 +0000 (02:32 +0000)]
vector.tcc (erase(iterator, iterator), [...]): Qualify all calls to std::copy().
2004-12-29 Jonathan Wakely <redi@gcc.gnu.org>
* include/bits/vector.tcc (erase(iterator, iterator),
operator=, _M_assign_aux(_ForwardIterator, _ForwardIterator,
forward_iterator_tag)): Qualify all calls to std::copy().
From-SVN: r92724
Hans-Peter Nilsson [Thu, 30 Dec 2004 01:16:09 +0000 (01:16 +0000)]
mmix.h (ASM_OUTPUT_INTERNAL_LABEL): Define.
* config/mmix/mmix.h (ASM_OUTPUT_INTERNAL_LABEL): Define.
* config/mmix/mmix.c (mmix_asm_output_internal_label): New
function.
* config/mmix/mmix-protos.h (mmix_asm_output_internal_label):
Prototype.
From-SVN: r92723
Richard Henderson [Thu, 30 Dec 2004 00:42:16 +0000 (16:42 -0800)]
* config/sparc/sparc.c (TARGET_RELAXED_ORDERING): True.
From-SVN: r92722
Mark Mitchell [Thu, 30 Dec 2004 00:31:00 +0000 (00:31 +0000)]
re PR c++/19190 (warning "value computed is not used" emitted too often)
PR c++/19190
* cvt.c (convert_to_void): Do not use STRIP_NOPs.
PR c++/19190
* g++.dg/warn/Wunused-10.C: New test.
From-SVN: r92721
Paolo Carlini [Thu, 30 Dec 2004 00:21:10 +0000 (00:21 +0000)]
Minimal fixes for -fno-exceptions.
2004-12-29 Paolo Carlini <pcarlini@suse.de>
Minimal fixes for -fno-exceptions.
* src/bitmap_allocator.cc (free_list::_M_get): Use
__throw_exception_again, instead of plain throw.
* testsuite/testsuite_abi.cc (get_symbol, examine_symbol,
create_symbols): Likewise.
* testsuite/testsuite_hooks.cc (verify_demangle,
run_tests_wrapped_locale, run_tests_wrapped_env): Likewise.
(try_named_locale): Wrap the whole catch in __EXCEPTIONS.
From-SVN: r92720
GCC Administrator [Thu, 30 Dec 2004 00:16:33 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r92718
Jeff Law [Wed, 29 Dec 2004 19:21:07 +0000 (12:21 -0700)]
tree-outof-ssa.c (insert_backedge_copies): New function.
* tree-outof-ssa.c (insert_backedge_copies): New function.
(rewrite_out_of_ssa): Use it.
From-SVN: r92711
Dorit Nuzman [Wed, 29 Dec 2004 13:54:29 +0000 (13:54 +0000)]
tree-vectorizer.c (vect_get_base_and_offset): Adjust call too get_inner_reference (missing argument).
* tree-vectorizer.c (vect_get_base_and_offset): Adjust call too
get_inner_reference (missing argument).
From-SVN: r92705
Ira Rosen [Wed, 29 Dec 2004 13:38:30 +0000 (13:38 +0000)]
re PR tree-optimization/18179 (vectorizer: wrong alignment/step/initial-address computed for struct accesses)
2004-12-29 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/18179
* tree-vectorizer.c (vect_get_base_and_offset): Call get_inner_reference
and vect_analyze_offset_expr.
(vect_create_addr_base_for_vector_ref): Build address_base by combining
base and initial_offset fields of vect_stmt_info.
(vect_update_inits_of_dr): Update offset of data-ref instead of its
access-fn. Remove argument.
(vect_update_inits_of_drs): Call vect_update_inits_of_dr with new
arguments.
(vect_compute_data_ref_alignment): Check misalignment info in
vect_stmt_info. Remove argument.
(vect_compute_data_refs_alignment): Call vect_compute_data_ref_alignment
with correct argument.
(vect_analyze_data_ref_access): Check access info in vect_stmt_info.
(vect_analyze_pointer_ref_access): Update step and initial_offset fields
of vect_stmt_info.
(vect_get_memtag_and_dr): Call vect_get_base_and_offset and set the
fields of stmt_vec_info.
(vect_analyze_data_refs): Find vectype and pass it to
vect_get_memtag_and_dr.
(vect_get_first_index): Remove.
(vect_compute_array_base_alignment): Remove.
(vect_compute_array_ref_alignment): Remove
(vect_create_data_ref_ptr): Use TYPE_SIZE_UNIT instead GET_MODE_SIZE.
(vect_gen_niters_for_prolog_loop): Use TREE_CONSTANT instead
host_integerp.
(vectorizable_load): Use size arithmetics.
From-SVN: r92704
Ira Rosen [Wed, 29 Dec 2004 13:20:35 +0000 (13:20 +0000)]
re PR tree-optimization/18179 (vectorizer: wrong alignment/step/initial-address computed for struct accesses)
2004-12-29 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/18179
* tree-vectorizer.c (vect_get_base_and_offset): Rename (previous name
vect_get_base_and_bit_offset).
(vect_get_memtag_and_dr): Rename (previous name vect_get_symbl_and_dr).
From-SVN: r92702
Ira Rosen [Wed, 29 Dec 2004 13:16:07 +0000 (13:16 +0000)]
re PR tree-optimization/18179 (vectorizer: wrong alignment/step/initial-address computed for struct accesses)
2004-12-29 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/18179
* tree-vectorizer.h (struct _stmt_vec_info): Add new fields:
initial_offset, step, misalignment and base_aligned_p and macros
to access them.
* tree-vectorizer.c (vect_analyze_offset_expr): New function.
(new_stmt_vec_info): Initialize the new fields of stmt_vec_info.
(vect_create_data_ref_ptr): Fix printings.
From-SVN: r92701
Ira Rosen [Wed, 29 Dec 2004 13:11:58 +0000 (13:11 +0000)]
re PR tree-optimization/18179 (vectorizer: wrong alignment/step/initial-address computed for struct accesses)
2004-12-29 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/18179
* tree-vectorizer.c (vect_get_symbl_and_dr): Reorganize. Add memtag
retrieval.
(vect_analyze_data_refs): Remove memtag retrieval.
From-SVN: r92700
Paolo Carlini [Wed, 29 Dec 2004 12:11:27 +0000 (12:11 +0000)]
type_traits: Add has_nothrow_constructor.
2004-12-29 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits: Add has_nothrow_constructor.
* testsuite/tr1/4_metaprogramming/type_properties/
has_nothrow_constructor/has_nothrow_constructor.cc: New.
* testsuite/tr1/4_metaprogramming/type_properties/
has_nothrow_constructor/typedefs.cc: Likewise.
From-SVN: r92699
Steven G. Kargl [Wed, 29 Dec 2004 02:48:27 +0000 (02:48 +0000)]
gfortran.h (gfc_case): fix typo in comment.
2004-12-29 Steven G. Kargl <kargls@comcast.net>
* gfortran.h (gfc_case): fix typo in comment.
From-SVN: r92695
Richard Henderson [Wed, 29 Dec 2004 01:43:00 +0000 (17:43 -0800)]
* objc.dg/stabs-1.m: Disable for alpha.
From-SVN: r92694
Richard Henderson [Wed, 29 Dec 2004 01:22:15 +0000 (17:22 -0800)]
re PR inline-asm/15740 (ICE caused by a memory operand in an asm statement)
PR inline-asm/15740
* gimplify.c (gimplify_asm_expr): Move resolve asm names ...
* c-typeck.c (build_asm_expr): ... here. Validate input
constraints. Mark memory inputs addressable.
* semantics.c (finish_asm_stmt): Resolve asm names. Validate input
constraints. Mark memory inputs addressable.
From-SVN: r92693
GCC Administrator [Wed, 29 Dec 2004 00:16:14 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r92691
Hans-Peter Nilsson [Tue, 28 Dec 2004 23:19:12 +0000 (23:19 +0000)]
re PR target/18321 (mmix-knuth-mmixware testsuite failure: gcc.c-torture/compile/
20031023-4.c -O0, -O1)
PR target/18321
* config/mmix/mmix.c (mmix_expand_epilogue): Change type of
variable offset to HOST_WIDE_INT. Remove obsolete comment. Fix
spacing.
From-SVN: r92685
Paolo Bonzini [Tue, 28 Dec 2004 17:40:40 +0000 (17:40 +0000)]
re PR bootstrap/17383 (Building in src dir fails)
2004-12-28 Paolo Bonzini <bonzini@gnu.org>
PR bootstrap/17383
* Makefile.def (target_modules): Remove stage parameter,
it is always true now.
* Makefile.tpl (configure-build-[+module+],
configure-target-[+module+]): Always build symlink tree
for the directory and for include. BUILD_SUBDIR and
TARGET_SUBDIR cannot be . anymore.
* Makefile.in: Regenerate.
From-SVN: r92674
David Edelsohn [Tue, 28 Dec 2004 16:34:16 +0000 (16:34 +0000)]
configure.host (aix4*|aix5*): Add atomic_word_dir.
* configure.host (aix4*|aix5*): Add atomic_word_dir.
* config/os/aix/atomic_word.h: New file.
From-SVN: r92673
Andrew Pinski [Tue, 28 Dec 2004 15:56:51 +0000 (15:56 +0000)]
fold-const.c (fold_build_cleanup_point_expr): For a RETURN_EXPR...
2004-12-28 Andrew Pinski <pinskia@physics.uc.edu>
* fold-const.c (fold_build_cleanup_point_expr): For a RETURN_EXPR,
we only need a cleanup point expression when the expression on the
left hand side of the MODIFIY_EXPR inside the return has side
effects.
From-SVN: r92672
Dorit Naishlos [Tue, 28 Dec 2004 12:44:29 +0000 (12:44 +0000)]
* tree-vectorizer.c (vect_mark_relevant) First argument changed from
varray_type to varray_type*.
(vect_mark_stmts_to_be_vectorized): Pass &worklist instead of worklist
when calling vect_mark_relevant.
From-SVN: r92671
Alan Modra [Tue, 28 Dec 2004 11:24:21 +0000 (11:24 +0000)]
rs6000.c (rs6000_legitimize_reload_address): Don't generate non-offsettable DImode lo_sum addresses.
* config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Don't
generate non-offsettable DImode lo_sum addresses.
From-SVN: r92670
Zdenek Dvorak [Tue, 28 Dec 2004 10:33:39 +0000 (11:33 +0100)]
re PR rtl-optimization/19103 (Current CVS (2004/12/21) doesn't compile with profiledbootstrap)
PR rtl-optimization/19103
* loop-iv.c (iv_number_of_iterations): Fix typo.
From-SVN: r92669
Andreas Jaeger [Tue, 28 Dec 2004 07:56:09 +0000 (08:56 +0100)]
* genrecog.c (compute_predicate_codes): Avoid warning.
From-SVN: r92668
John David Anglin [Tue, 28 Dec 2004 07:51:17 +0000 (07:51 +0000)]
vax.c (vax_address_cost, [...]): Correct casts.
* vax.c (vax_address_cost, vax_rtx_cost): Correct casts.
(vax_rtx_cost): Handle small offsets for both PLUS and MINUS.
From-SVN: r92667
Jeff Law [Tue, 28 Dec 2004 06:34:55 +0000 (23:34 -0700)]
tree-ssa-dom.c (thread_across_edge): Remove broken code to avoid threading into a loop.
* tree-ssa-dom.c (thread_across_edge): Remove broken code to
avoid threading into a loop.
From-SVN: r92666
Richard Henderson [Tue, 28 Dec 2004 05:26:23 +0000 (21:26 -0800)]
re PR target/17406 (ICE dwarf2out_frame_debug_expr, at dwarf2out.c:1692)
PR target/17406
* config/i386/i386.c (ix86_expand_prologue): Add REG_FRAME_RELATED_EXPR
note for allocate_stack_worker insn.
From-SVN: r92662
Jason Merrill [Tue, 28 Dec 2004 04:36:54 +0000 (23:36 -0500)]
Add memory barriers to the double-checked locking used for static initialization.
libstdc++:
Add memory barriers to the double-checked locking used for static
initialization.
* libsupc++/guard.cc (__test_and_acquire): Define default.
(_GLIBCXX_GUARD_TEST_AND_ACQUIRE, __set_and_release)
(_GLIBCXX_GUARD_SET_AND_RELEASE): Likewise.
(recursion_push, recursion_pop): New abstraction functions.
(__cxa_guard_acquire): Use _GLIBCXX_GUARD_TEST_AND_ACQUIRE.
(__cxa_guard_release): Use _GLIBCXX_GUARD_SET_AND_RELEASE.
* config/cpu/generic/cxxabi_tweaks.h (_GLIBCXX_GUARD_TEST): Rename
from _GLIBCXX_GUARD_ACQUIRE and reverse sense.
(_GLIBCXX_GUARD_SET): Rename from _GLIBCXX_GUARD_RELEASE.
* config/cpu/arm/cxxabi_tweaks.h: Likewise.
* config/cpu/alpha/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER)
(_GLIBCXX_WRITE_MEM_BARRIER): Define.
* config/cpu/powerpc/atomic_word.h: Likewise.
* config/cpu/sparc/atomic_word.h: Likewise.
* config/cpu/generic/atomic_word.h: Define them, commented out.
* include/bits/atomicity.h: Define defaults.
* config/cpu/ia64/atomic_word.h (__test_and_acquire)
(__set_and_release): New inlines.
(_GLIBCXX_GUARD_TEST_AND_ACQUIRE): Define.
(_GLIBCXX_GUARD_SET_AND_RELEASE): Define.
* libsupc++/guard.cc (acquire_1): Use __builtin_trap instead of
abort();
gcc:
* doc/tm.texi (TARGET_RELAXED_ORDERING): Document.
* target.h (struct gcc_target): Add relaxed_ordering field.
* target-def.h (TARGET_RELAXED_ORDERING): Define default.
(TARGET_INITIALIZER): Add it.
* config/alpha/alpha.c (TARGET_RELAXED_ORDERING): Define.
* config/ia64/ia64.c (TARGET_RELAXED_ORDERING): Define.
* config/rs6000/rs6000.c (TARGET_RELAXED_ORDERING): Define.
* config/sparc/sparc.c (TARGET_RELAXED_ORDERING): Define.
* cp/decl.c (expand_static_init): Don't use shortcut if
targetm.relaxed_ordering.
From-SVN: r92659
Roger Sayle [Tue, 28 Dec 2004 04:24:30 +0000 (04:24 +0000)]
re PR driver/16118 (Preprocessed source error with -xf77-cpp-input)
PR driver/16118
* doc/invoke.texi: Document the interaction between -save-temps
and -x.
From-SVN: r92658
David Edelsohn [Tue, 28 Dec 2004 00:39:18 +0000 (00:39 +0000)]
rs6000.c (rs6000_eliminate_indexed_memrefs): Do not break apart constant pool addresses.
* config/rs6000/rs6000.c (rs6000_eliminate_indexed_memrefs):
Do not break apart constant pool addresses.
(rs6000_emit_move): Only force source into REG if target is MEM.
From-SVN: r92657
GCC Administrator [Tue, 28 Dec 2004 00:16:20 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r92655
H.J. Lu [Mon, 27 Dec 2004 21:00:12 +0000 (21:00 +0000)]
Makefile.in: Undo to 2004-12-17.
2004-12-27 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.in: Undo to 2004-12-17.
* aclocal.m4: Likewise.
* config.table: Likewise.
* configure.ac: Likewise.
* maint-tool: Likewise.
* configure: Likewise.
From-SVN: r92651
Mark Mitchell [Mon, 27 Dec 2004 19:03:16 +0000 (19:03 +0000)]
re PR c++/19149 (seg fault on invalid code)
PR c++/19149
* decl.c (check_tag_decl): Robustify.
PR c++/19149
* g++.dg/parse/error23.C: New test.
From-SVN: r92648
Paolo Carlini [Mon, 27 Dec 2004 18:51:12 +0000 (18:51 +0000)]
type_traits: Rework the _DEFINE_SPEC* macros.
2004-12-27 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits: Rework the _DEFINE_SPEC* macros.
From-SVN: r92647
Mark Mitchell [Mon, 27 Dec 2004 18:01:58 +0000 (18:01 +0000)]
* g++.dg/opt/temp1.C (memcpy): Return a value.
From-SVN: r92646
Tobias Schlüter [Mon, 27 Dec 2004 17:13:07 +0000 (18:13 +0100)]
re PR libfortran/19032 (modulo generates wrong result for divisor 1 and -1)
fortran/
PR fortran/19032
* trans-intrinsic.c (gfc_conv_intrinsic_mod): Update comment
in front of function to match the standard. Correct handling
of MODULO.
testsuite/
PR fortran/19032
* gfortran.dg/intrinsic_modulo_1.f90: New.
* gfortran.fortran-torture/execute/intrinsic_mod_ulo.f90: Add
tests with divisor -1.
From-SVN: r92645
Andrew Pinski [Mon, 27 Dec 2004 16:56:38 +0000 (16:56 +0000)]
trans-expr.c (gfc_conv_cst_int_power): Only check for flag_unsafe_math_optimizations if we have a float type.
2004-12-27 Andrew Pinski <pinskia@physics.uc.edu>
* trans-expr.c (gfc_conv_cst_int_power): Only check for
flag_unsafe_math_optimizations if we have a float type.
From-SVN: r92644
Tobias Schlüter [Mon, 27 Dec 2004 16:43:47 +0000 (17:43 +0100)]
Fix typo in ChangeLog
From-SVN: r92643
Tobias Schlüter [Mon, 27 Dec 2004 16:43:25 +0000 (17:43 +0100)]
trans-intrinsic.c (gfc_conv_intrinsic_ishft): Change to logicalshift.
gcc/fortran/
* trans-intrinsic.c (gfc_conv_intrinsic_ishft): Change to
logicalshift. Call fold. Remove 0-bit shift shortcut.
(gfc_conv_intrinsic_ishftc): Convert first argument to at least
4 bytes bits. Convert 2nd and 3rd argument to 4 bytes. Convert
result if width(arg 1) < 4 bytes. Call fold.
libgfortran/
* libgfortran/libgfortran.h (GFC_UINTEGER_1, GFC_UINTEGER_2):
Define.
* intrinsics/ishftc.c: Update copyright years.
(ishftc8): Change 'shift' and 'size' to GFC_INTEGER_4.
* intrinsics/mvbits.c: Correcty non-ASCII character in my name.
Add implementations for GFC_INTEGER_1 and GFC_INTEGER_2.
gcc/testsuite/
* gfortran.dg/g77/f90-intrinsic-bit.f: New.
From-SVN: r92642
Mark Mitchell [Mon, 27 Dec 2004 16:13:45 +0000 (16:13 +0000)]
re PR c++/19148 (ICE: gimplification failed)
PR c++/19148
* g++.dg/expr/cond7.C: New test.
From-SVN: r92641