Jan Hubicka [Thu, 6 Sep 2007 19:41:33 +0000 (21:41 +0200)]
darwin.c (machopic_indirect_data_reference): Avoid invalid sharing.
2007-09-06 Jan Hubicka <jh@suse.cz>
Andreas Tobler <a.tobler@schweiz.org>
* config/darwin.c (machopic_indirect_data_reference): Avoid invalid
sharing.
(machopic_legitimize_pic_address): Likewise.
Co-Authored-By: Andreas Tobler <a.tobler@schweiz.org>
From-SVN: r128207
Thomas Koenig [Thu, 6 Sep 2007 19:25:30 +0000 (19:25 +0000)]
re PR libfortran/33298 (Wrong code for SPREAD on zero-sized arrays)
2007-09-06 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/33298
* intrinsics/spread_generic.c(spread_internal): Enable
bounds checking by comparing extents if the bounds_check
option has been set. If any extent is <=0, return early.
2007-09-06 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/33298
* spread_zerosize_1.f90: New test case.
* spread_bounds_1.f90: New test case.
From-SVN: r128206
Matthias Klose [Thu, 6 Sep 2007 19:17:30 +0000 (19:17 +0000)]
cstdlib: Remove empty directory.
2007-09-06 Matthias Klose <doko@debian.org>
* testsuite/27_io/headers/cstdlib: Remove empty directory.
From-SVN: r128204
Tom Tromey [Thu, 6 Sep 2007 18:58:20 +0000 (18:58 +0000)]
StackTrace2.jar: Rebuilt.
* testsuite/libjava.lang/StackTrace2.jar: Rebuilt.
* testsuite/libjava.lang/StackTrace2.java (checkLine): Print file
name.
From-SVN: r128203
Andrew Pinski [Thu, 6 Sep 2007 18:57:57 +0000 (18:57 +0000)]
spu.md (floatsidf2): Use convert_optab_libfunc instead of ufloat_optab->handlers directly.
2007-09-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
Jan Hubicka <jh@suse.cz>
* config/spu/spu.md (floatsidf2): Use convert_optab_libfunc
instead of ufloat_optab->handlers directly.
(floatdidf2): Likewise.
Co-Authored-By: Jan Hubicka <jh@suse.cz>
From-SVN: r128202
Paolo Carlini [Thu, 6 Sep 2007 18:38:49 +0000 (18:38 +0000)]
re PR c++/32674 (ICE in lvalue_p_1 initialising static variable inside template class)
/cp
2007-09-06 Paolo Carlini <pcarlini@suse.de>
PR c++/32674
* decl.c (cp_finish_decl): When processing_template_decl,
deal correctly with init as TREE_LIST.
/testsuite
2007-09-06 Paolo Carlini <pcarlini@suse.de>
PR c++/32674
* g++.dg/template/static31.C: New.
From-SVN: r128201
Sandra Loosemore [Thu, 6 Sep 2007 18:20:37 +0000 (14:20 -0400)]
mips.c: Include diagnostic.h.
2007-09-06 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config/mips/mips.c: Include diagnostic.h.
(mips_set_current_function): Check errorcount and sorrycount
before generating RTL.
From-SVN: r128200
Janis Johnson [Thu, 6 Sep 2007 18:07:14 +0000 (18:07 +0000)]
Revert:
2007-09-06 Eric Botcazou <ebotcazou@adacore.com>
* trans.c (convert_with_check): Update call to real_2expN.
From-SVN: r128199
Francois-Xavier Coudert [Thu, 6 Sep 2007 17:48:32 +0000 (17:48 +0000)]
re PR fortran/33271 (nint_2.f90 abort compiled with -O0)
PR fortran/33271
* gfortran.dg/nint_2.f90: xfail on powerpc-ibm-aix* and
powerpc*-linux-gnu.
From-SVN: r128196
Richard Sandiford [Thu, 6 Sep 2007 17:46:43 +0000 (17:46 +0000)]
re PR target/33256 (internal compiler error: in print_operand_reloc, at config/mips/mips.c:5579)
gcc/
PR target/33256
* config/mips/mips.c (mips_classify_symbolic_expression): New function.
(mips_classify_address): Use it instead of mips_symbolic_constant_p.
(print_operand_reloc): Likewise.
gcc/testsuite/
200x-xx-xx David Daney <ddaney@avtrex.com>
Richard Sandiford <richard@codesourcery.com>
PR target/33256
* gcc.target/mips/mips.exp (setup_mips_tests): Set mips_forced_le.
(dg-mips-options): Skip -EB and -meb tests when $mips_forced_le.
* gcc.target/mips/pr33256.c: New test.
From-SVN: r128195
Matthias Klose [Thu, 6 Sep 2007 17:33:35 +0000 (17:33 +0000)]
Add function name to last changelog entry:
* boehm.c (mark_reference_fields): Don't use bitmap as gc_descr
if pointer is misaligned.
From-SVN: r128194
Janis Johnson [Thu, 6 Sep 2007 17:15:55 +0000 (17:15 +0000)]
Revert:
2007-09-06 Jan Hubicka <jh@suse.cz>
* i386.c (ix86_expand_lround, ix86_expand_round): Update call of
real_2expN.
2007-09-06 Richard Sandiford <richard@codesourcery.com>
* config/mips/mips.md (fixuns_truncdfsi2, fixuns_truncdfdi2)
(fixuns_truncsfsi2, fixuns_truncsfdi2): Update calls to real_2expN.
2007-09-05 Janis Johnson <janis187@us.ibm.com>
* optabs.c (expand_float): Convert unsigned integer as signed only
if it provides sufficient accuracy; add mode argument to real_2expN.
(expand_fix): Fix comment typos; extend binary float into mode
wider than destination for converion to unsigned integer; add mode
argument to real_2expN.
* real.c (real_2expN): Add mode argument to special-case decimal
float values.
* real.h (real_2expN): Ditto.
* fixed-value.c (check_real_for_fixed_mode): Add mode argument to
real_2expN.
(fixed_from_string): Ditto.
(fixed_to_decimal): Ditto.
(fixed_convert_from_real): Ditto.
(real_convert_from_fixed): Ditto.
* config/rs6000/rs6000.md (FP): Include DD and TD modes.
* config/rs6000/dfp.md (extendddtd2, adddd3, addtd3, subdd3, subtd3,
muldd3, multd3, divdd3, divtd3, cmpdd_internal1, cmptd_internal1,
floatditd2, ftruncdd2, fixdddi2, ftrunctd2, fixddi2): New.
From-SVN: r128193
Tom Tromey [Thu, 6 Sep 2007 16:58:57 +0000 (16:58 +0000)]
pexecute.txh (pex_free): Document process killing.
libiberty:
* pexecute.txh (pex_free): Document process killing.
include:
* libiberty.h (pex_free): Document process killing.
From-SVN: r128192
Roman Zippel [Thu, 6 Sep 2007 16:39:58 +0000 (16:39 +0000)]
boehm.c: Don't use bitmap as gc_descr if pointer is misaligned.
gcc/java/
2007-09-06 Roman Zippel <zippel@linux-m68k.org>
* boehm.c: Don't use bitmap as gc_descr if pointer is misaligned.
libjava/
2007-09-06 Roman Zippel <zippel@linux-m68k.org>
* sysdep/m68k/locks.h: New file.
* configure.host: Set sysdeps_dir and libgcj_interpreter for m68k.
* configure.ac: Set SIGNAL_HANDLER for m68*-*-linux*.
* configure: Regenerate.
From-SVN: r128191
Tom Tromey [Thu, 6 Sep 2007 16:24:05 +0000 (16:24 +0000)]
tree-cfg.c (remove_bb): Only warn if line is non-zero.
gcc:
* tree-cfg.c (remove_bb): Only warn if line is non-zero.
* c-pch.c (c_common_read_pch): Restore current location after
reading PCH file.
* tree.c (expand_location): Update.
(expr_filename): Changed return type. Unified the two cases.
(expr_lineno): Likewise.
(annotate_with_file_line): Don't use EXPR_LINENO and EXPR_FILENAME
as lvalues.
* toplev.c (line_table): Changed type.
(general_init): Update.
(realloc_for_line_map): New function.
(general_init): Allocate line_table using GC.
* fix-header.c (line_table): Changed type.
(read_scan_file): Update.
(read_scan_file): Update.
* c-ppoutput.c (maybe_print_line): Update.
(print_line): Update.
(cb_line_change): Update.
(cb_define): Update.
(pp_file_change): Update.
* c-opts.c (c_common_init_options): Update.
(finish_options): Update.
(push_command_line_include): Update.
* c-lex.c (cb_line_change): Update.
(cb_def_pragma): Update.
(cb_define): Update.
(cb_undef): Update.
(c_lex_with_flags): Use cpp_get_token_with_location.
* input.h (line_table): Changed type.
(location_from_locus): New macro.
* tree.h (EXPR_FILENAME): No longer an lvalue.
(EXPR_LINENO): Likewise.
(expr_locus, set_expr_locus): Declare separately for
USE_MAPPED_LOCATION.
(expr_filename, expr_lineno): Changed return type.
* gimplify.c (tree_to_gimple_tuple): Use SET_EXPR_LOCUS.
* cfgexpand.c (expand_gimple_cond_expr): Use location_from_locus.
(expand_gimple_basic_block): Likewise.
* final.c (final_scan_insn): Use expanded_location.
gcc/cp:
* decl.c (finish_function): Put return's location on line zero of
file.
gcc/fortran:
* scanner.c (get_file): Update.
(load_file): Update.
(gfc_next_char_literal): Use gfc_linebuf_linenum.
* f95-lang.c (gfc_init): Update.
* gfortran.h (gfc_linebuf_linenum): New macro.
gcc/java:
* lang.c (java_post_options): Update.
* jcf-parse.c (set_source_filename): Update.
(give_name_to_class): Update.
(jcf_parse): Update.
(duplicate_class_warning): Update.
(parse_class_file): Update.
(java_parse_file): Update.
* expr.c (expand_byte_code): Update.
gcc/testsuite:
* lib/g++.exp (g++_target_compile): Use -fno-show-column.
gcc/treelang:
* tree1.c (treelang_init): Update.
(treelang_parse_file): Update.
(treelang_parse_file): Update.
(treelang_parse_file): Update.
* lex.l: Update.
(update_lineno_charno): Likewise.
libcpp:
* internal.h (struct cpp_reader) <invocation_location>: New
field.
(struct cpp_reader) <set_invocation_location>: Likewise.
* init.c (cpp_set_line_map): New function.
* line-map.c (linemap_add): Use linemap's allocator.
* include/line-map.h (GTY): Define.
(line_map_realloc): New typedef.
(struct line_map): Mark with GTY.
(struct line_maps): Likewise.
(struct line_maps) <maps>: Likewise.
(struct line_maps) <reallocator>: New field.
* include/symtab.h (GTY): Conditionally define.
* include/cpplib.h (cpp_set_line_map): Declare.
(cpp_get_token_with_location): Declare.
* macro.c (cpp_get_token): Set invocation_location on the reader.
(cpp_get_token_with_location): New function.
From-SVN: r128190
Richard Guenther [Thu, 6 Sep 2007 16:05:32 +0000 (16:05 +0000)]
re PR tree-optimization/32586 (New VN misses FRE opportunities)
2007-09-06 Richard Guenther <rguenther@suse.de>
PR tree-optimization/32586
* tree-ssa-sccvn.c (simplify_binary_expression): Avoid
folding if nothing changed.
(simplify_unary_expression): New function. Do tree combining
on conversion like codes.
(try_to_simplify): Call it.
* builtins.c (fold_builtin_cexp): Fold the built expressions.
* fold-const.c (fold_unary): Test result of get_callee_fndecl().
* g++.dg/tree-ssa/pr27090.C: Remove XFAILs.
* gcc.dg/tree-ssa/ssa-fre-1.c: Likewise.
* gcc.dg/tree-ssa/ssa-fre-3.c: Likewise.
* gcc.dg/tree-ssa/ssa-fre-5.c: Likewise.
* gcc.dg/tree-ssa/ssa-fre-4.c: Likewise, remove scan for
now obsolete simplification.
From-SVN: r128189
Francois-Xavier Coudert [Thu, 6 Sep 2007 15:42:02 +0000 (15:42 +0000)]
re PR target/33281 (gfortran crt2.o not found under Vista)
PR target/33281
* configure.ac: Use config/mh-mingw on mingw.
* configure: Regenerate.
* config/mh-mingw: New host makefile fragment.
From-SVN: r128188
Jan Hubicka [Thu, 6 Sep 2007 15:10:28 +0000 (17:10 +0200)]
re PR middle-end/33318 (fortran/expr.c:305: internal compiler error: internal consistency failure)
PR target/33318
* cse.c (fold_rtx): Avoid invalid sharing.
From-SVN: r128187
Richard Sandiford [Thu, 6 Sep 2007 15:00:47 +0000 (15:00 +0000)]
gcc/
* config/mips/mips.md (fixuns_truncdfsi2, fixuns_truncdfdi2)
(fixuns_truncsfsi2, fixuns_truncsfdi2): Update calls to real_2expN.
From-SVN: r128186
Eric Botcazou [Thu, 6 Sep 2007 14:47:56 +0000 (14:47 +0000)]
trans.c (convert_with_check): Update call to real_2expN.
* trans.c (convert_with_check): Update call to real_2expN.
From-SVN: r128185
Revital Eres [Thu, 6 Sep 2007 14:30:19 +0000 (14:30 +0000)]
Fix offsettable memory reference for 750CL
From-SVN: r128184
Pat Haugen [Thu, 6 Sep 2007 13:51:21 +0000 (13:51 +0000)]
reload.c (find_reloads_address_1): Try to preserve original base/index regclass of operands.
ChangeLog:
2007-09-06 Pat Haugen <pthaugen@us.ibm.com>
* reload.c (find_reloads_address_1): Try to preserve original
base/index regclass of operands.
* regrename.c (scan_rtx_address): Likewise.
(replace_oldest_value_addr): Likewise.
From-SVN: r128183
David Edelsohn [Thu, 6 Sep 2007 12:40:50 +0000 (12:40 +0000)]
libgfortran.h: Include config.h first.
* libgfortran.h: Include config.h first.
* io/io.h (struct stream): Rename truncate to trunc.
* io/unix.c (fd_open): Same.
(open_internal): Same.
From-SVN: r128182
Uros Bizjak [Thu, 6 Sep 2007 11:39:49 +0000 (13:39 +0200)]
sse3-addsubpd.c: Add -mfpmath=sse to dg-options.
* gcc.target/i386/sse3-addsubpd.c: Add -mfpmath=sse to dg-options.
* gcc.target/i386/sse3-addsubps.c: Ditto.
* gcc.target/i386/sse3-haddpd.c: Ditto.
* gcc.target/i386/sse3-haddps.c: Ditto.
* gcc.target/i386/sse3-hsubpd.c: Ditto.
* gcc.target/i386/sse3-hsubps.c: Ditto.
* gcc.target/i386/sse3-lddqu.c: Ditto.
* gcc.target/i386/sse3-movddup.c: Ditto.
* gcc.target/i386/sse3-movshdup.c: Ditto.
* gcc.target/i386/sse3-movsldup.c: Ditto.
From-SVN: r128181
Richard Guenther [Thu, 6 Sep 2007 09:05:58 +0000 (09:05 +0000)]
re PR tree-optimization/33302 (dead-store not eliminated)
2007-09-06 Richard Guenther <rguenther@suse.de>
PR tree-optimization/33302
* tree-ssa-dse.c (tree_ssa_dse): Connect infinite loops
to the exit block before doing the post-dominator walk.
* domwalk.c (walk_dominator_tree): The exit block is
interesting even if it is not reachable.
* gcc.dg/tree-ssa/ssa-dse-11.c: New testcase.
From-SVN: r128180
Richard Sandiford [Thu, 6 Sep 2007 08:45:16 +0000 (08:45 +0000)]
re PR bootstrap/33306 (Bootstrap failure on alpha: ICE in convert_move, at expr.c:369)
gcc/
PR middle-end/33306
* optabs.c (avoid_expensive_constant): Do nothing if MODE is VOIDmode.
From-SVN: r128179
Basile Starynkevitch [Thu, 6 Sep 2007 06:57:56 +0000 (06:57 +0000)]
reverted configure to rev 128176 - it has been mistakingly commited
From-SVN: r128178
Basile Starynkevitch [Thu, 6 Sep 2007 06:42:47 +0000 (06:42 +0000)]
typo
From-SVN: r128177
Basile Starynkevitch [Thu, 6 Sep 2007 06:38:09 +0000 (06:38 +0000)]
cfg.c (dump_bb_info, dump_edge_info): Added cfun test for
robustness.
From-SVN: r128176
Ian Lance Taylor [Thu, 6 Sep 2007 05:59:15 +0000 (05:59 +0000)]
tree-pretty-print.c (dump_decl_name): Cast LABEL_DECL_UID to int when printing.
* tree-pretty-print.c (dump_decl_name): Cast LABEL_DECL_UID to int
when printing.
(dump_generic_node): Likewise.
* print-rtl.c (print_decl_name): Likewise.
* print-tree.c (print_node_brief): Likewise.
(print_node): Likewise.
* Makefile.in (RTL_BASE_H): Add alias.h.
(TREE_H): Likewise.
From-SVN: r128175
Jason Merrill [Thu, 6 Sep 2007 03:33:46 +0000 (23:33 -0400)]
re PR c++/15745 (exception specification incorrectly changes the type of the exception thrown)
PR c++/15745
* except.c (prepare_eh_type): Use type_decays_to.
From-SVN: r128174
Jerry DeLisle [Thu, 6 Sep 2007 01:32:11 +0000 (01:32 +0000)]
re PR libfortran/33225 (Missing last digit in some formatted output (on 32bit targets), per kind write_float)
2007-09-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33225
* gfortran.dg./fmt_float.f90: New test.
From-SVN: r128173
Jason Merrill [Thu, 6 Sep 2007 01:24:59 +0000 (21:24 -0400)]
re PR c++/15097 (code generator problem with ::delete and multiple inheritance and virtual deconstructs)
PR c++/15097
* init.c (build_delete): Use build_headof to get the address of the
complete object if we aren't using the deleting destructor.
* rtti.c (build_headof): No longer static.
* cp-tree.h: Declare it.
From-SVN: r128172
Jerry DeLisle [Thu, 6 Sep 2007 01:24:17 +0000 (01:24 +0000)]
re PR libfortran/33253 (namelist: reading back a string with apostrophe)
2007-09-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33253
* gfortran.dg/namelist_38.f90: Update test for DELIM= .
From-SVN: r128171
Jerry DeLisle [Thu, 6 Sep 2007 01:20:02 +0000 (01:20 +0000)]
re PR libfortran/33253 (namelist: reading back a string with apostrophe)
2007-09-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33253
* io/write.c (nml_write_obj): Set the delimiter correctly before calling
write_character. (namelist_write): Clean up the code a little and add
comments to clarify what its doing.
From-SVN: r128170
Jesper Nilsson [Thu, 6 Sep 2007 00:17:15 +0000 (00:17 +0000)]
builtin_ctz_v3.c: New testcase.
* gcc.target/cris/builtin_ctz_v3.c: New testcase.
* gcc.target/cris/builtin_ctz_v8.c: New testcase.
From-SVN: r128168
GCC Administrator [Thu, 6 Sep 2007 00:16:59 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r128167
Jesper Nilsson [Thu, 6 Sep 2007 00:16:43 +0000 (00:16 +0000)]
cris: longlong.h (count_trailing_zeros): Defined.
* longlong.h [__CRIS_arch_version >= 8] (count_trailing_zeros):
Defined.
* config/cris/cris.md (ctzsi2, cris_swap_bits): Implemented.
* config/cris/cris.h (CTZ_DEFINED_VALUE_AT_ZERO): Defined.
From-SVN: r128165
Jie Zhang [Thu, 6 Sep 2007 00:09:05 +0000 (00:09 +0000)]
config.gcc (tm_file): Add linux.h for bfin*-uclinux*.
* config.gcc (tm_file): Add linux.h for bfin*-uclinux*.
(tm_defines): Define UCLIBC_DEFAULT to 1.
(extra_options): Add linux.opt.
* config/bfin/linux.h (CPLUSPLUS_CPP_SPEC): Don't define.
(CRT_CALL_STATIC_FUNCTION): Likewise.
(NO_IMPLICIT_EXTERN_C): Likewise.
(TARGET_OS_CPP_BUILTINS): Define as LINUX_TARGET_OS_CPP_BUILTINS.
* config/bfin/elf.h (OBJECT_FORMAT_ELF): Don't define.
* config/bfin/uclinux.h (CPLUSPLUS_CPP_SPEC): Don't define.
(ENDFILE_SPEC): Don't define.
(LIB_SPEC): Likewise.
(CRT_CALL_STATIC_FUNCTION): Likewise.
(NO_IMPLICIT_EXTERN_C): Likewise.
(LINUX_TARGET_OS_CPP_BUILTINS): Likewise.
(TARGET_OS_CPP_BUILTINS): Define as LINUX_TARGET_OS_CPP_BUILTINS.
From-SVN: r128163
Jan Hubicka [Thu, 6 Sep 2007 00:04:31 +0000 (02:04 +0200)]
i386.c (ix86_expand_lround, [...]): Update call of real_2expN.
* i386.c (ix86_expand_lround, ix86_expand_round): Update call of
real_2expN.
From-SVN: r128162
Jan Hubicka [Wed, 5 Sep 2007 23:38:34 +0000 (01:38 +0200)]
opts.c (common_handle_option): Enable inlining functions for -fprofile-generate.
* opts.c (common_handle_option): Enable inlining functions for
-fprofile-generate.
From-SVN: r128161
Jakub Jelinek [Wed, 5 Sep 2007 23:27:17 +0000 (01:27 +0200)]
re PR c++/33289 (__sprintf_chk etc. not DECL_ANTICIPATED)
PR c++/33289
* decl.c (builtin_function_1): Set DECL_ANTICIPATED also
on __*_chk non-__builtin_* decls.
* g++.dg/eh/builtin4.C: New test.
From-SVN: r128160
Jakub Jelinek [Wed, 5 Sep 2007 23:25:07 +0000 (01:25 +0200)]
decl.c (duplicate_decls): Set TREE_NOTHROW on __builtin_XX decl if a prototype for XX is provided with...
* decl.c (duplicate_decls): Set TREE_NOTHROW on __builtin_XX
decl if a prototype for XX is provided with throw().
* g++.dg/eh/builtin1.C: New test.
* g++.dg/eh/builtin2.C: New test.
* g++.dg/eh/builtin3.C: New test.
From-SVN: r128159
Jakub Jelinek [Wed, 5 Sep 2007 23:22:51 +0000 (01:22 +0200)]
builtin-attrs.def (ATTR_NONNULL_3): New.
* builtin-attrs.def (ATTR_NONNULL_3): New.
(DEF_FORMAT_ATTRIBUTE): Use just ATTR_NONNULL_##FA instead of
ATTR_NOTHROW_NONNULL_##FA.
(DEF_FORMAT_ATTRIBUTE_NOTHROW, DEF_FORMAT_ATTRIBUTE_BOTH): New macros.
(ATTR_FORMAT_PRINTF_NOTHROW_2_0, ATTR_PRINTF_NOTHROW_2_3,
ATTR_FORMAT_PRINTF_NOTHROW_3_0, ATTR_FORMAT_PRINTF_NOTHROW_3_4,
ATTR_FORMAT_PRINTF_NOTHROW_4_0, ATTR_PRINTF_NOTHROW_4_5,
ATTR_FORMAT_PRINTF_NOTHROW_5_0, ATTR_FORMAT_PRINTF_NOTHROW_5_6,
ATTR_FORMAT_SCANF_NOTHROW_2_0, ATTR_FORMAT_SCANF_NOTHROW_2_3,
ATTR_FORMAT_STRFTIME_NOTHROW_3_0, ATTR_FORMAT_STRFMON_NOTHROW_3_4):
New.
(ATTR_FORMAT_PRINTF_4_0, ATTR_PRINTF_4_5, ATTR_FORMAT_PRINTF_5_0,
ATTR_FORMAT_PRINTF_5_6, ATTR_FORMAT_STRFTIME_3_0,
ATTR_FORMAT_NOTHROW_3_4): Remove.
* builtins.def (snprintf, sprintf, sscanf, vsnprintf, vsprintf,
vsscanf, strfmon, strftime, __snprintf_chk, __sprintf_chk,
__vsnprintf_chk, __vsprintf_chk): Use ATTR_FORMAT_*_NOTHROW_*
instead of ATTR_FORMAT_*_*.
From-SVN: r128158
Hans-Peter Nilsson [Wed, 5 Sep 2007 23:17:50 +0000 (23:17 +0000)]
cris.c (cris_emit_movem_store): Call copy_rtx on parts re-used for REG_FRAME_RELATED_EXPR.
* config/cris/cris.c (cris_emit_movem_store): Call copy_rtx on
parts re-used for REG_FRAME_RELATED_EXPR.
From-SVN: r128157
Janis Johnson [Wed, 5 Sep 2007 22:16:33 +0000 (22:16 +0000)]
optabs.c (expand_float): Convert unsigned integer as signed only if it provides sufficient accuracy...
gcc/
* optabs.c (expand_float): Convert unsigned integer as signed only
if it provides sufficient accuracy; add mode argument to real_2expN.
(expand_fix): Fix comment typos; extend binary float into mode
wider than destination for converion to unsigned integer; add mode
argument to real_2expN.
* real.c (real_2expN): Add mode argument to special-case decimal
float values.
* real.h (real_2expN): Ditto.
* fixed-value.c (check_real_for_fixed_mode): Add mode argument to
real_2expN.
(fixed_from_string): Ditto.
(fixed_to_decimal): Ditto.
(fixed_convert_from_real): Ditto.
(real_convert_from_fixed): Ditto.
* config/rs6000/rs6000.md (FP): Include DD and TD modes.
* config/rs6000/dfp.md (extendddtd2, adddd3, addtd3, subdd3, subtd3,
muldd3, multd3, divdd3, divtd3, cmpdd_internal1, cmptd_internal1,
floatditd2, ftruncdd2, fixdddi2, ftrunctd2, fixddi2): New.
gcc/testsuite/
* gcc.target/powerpc/dfp-dd.c: New test.
* gcc.target/powerpc/dfp-td.c: New test.
From-SVN: r128156
Roger Sayle [Wed, 5 Sep 2007 21:30:04 +0000 (21:30 +0000)]
acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add EBADMSG for darwin.
* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add EBADMSG for darwin.
* configure: Regenerate.
* include/std/system_error: Guard.
* testsuite/19_diagnostics/headers/system_error/
types_std_c++0x.cc: Same.
* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
line numbers.
From-SVN: r128154
Ian Lance Taylor [Wed, 5 Sep 2007 20:55:03 +0000 (20:55 +0000)]
init-regs.c (initialize_uninitialized_regs): Call emit_insn_before rather than add_insn_before.
* init-regs.c (initialize_uninitialized_regs): Call
emit_insn_before rather than add_insn_before.
From-SVN: r128152
Jakub Jelinek [Wed, 5 Sep 2007 20:47:48 +0000 (22:47 +0200)]
Move ChangeLog entry to correct ChangeLog file.
From-SVN: r128151
Jakub Jelinek [Wed, 5 Sep 2007 20:45:27 +0000 (22:45 +0200)]
builtins.def (BUILT_IN_VA_ARG_PACK): New built-in.
* builtins.def (BUILT_IN_VA_ARG_PACK): New built-in.
* tree.h (CALL_EXPR_VA_ARG_PACK): Define.
* tree-inline.h (copy_body_data): Add call_expr field.
* tree-inline.c (expand_call_inline): Initialize call_expr.
(copy_bb): Append anonymous inline fn arguments to arguments
when inlining a CALL_EXPR_VA_ARG_PACK call.
* builtins.c (expand_builtin): Issue an error if
BUILT_IN_VA_ARG_PACK is seen during expand.
(fold_call_expr, fold_builtin_call_array): Don't fold
CALL_EXPR_VA_ARG_PACK CALL_EXPRs or calls with
__builtin_va_arg_pack () call as last argument.
* gimplify.c (gimplify_call_expr): If last argument to a vararg
function is __builtin_va_arg_pack (), decrease number of call
arguments and instead set CALL_EXPR_VA_ARG_PACK on the CALL_EXPR.
* expr.c (expand_expr_real_1): Issue an error if
CALL_EXPR_VA_ARG_PACK CALL_EXPR is seen during expand.
* tree-pretty-print.c (dump_generic_node): Handle printing
CALL_EXPR_VA_ARG_PACK bit on CALL_EXPRs.
* doc/extend.texi (__builtin_va_arg_pack): Document.
* gcc.c-torture/execute/va-arg-pack-1.c: New test.
* gcc.dg/va-arg-pack-1.c: New test.
From-SVN: r128150
Samuel Thibault [Wed, 5 Sep 2007 20:01:54 +0000 (20:01 +0000)]
configure.host (gnu*): Set use_libgcj_bc to yes.
2007-09-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
* configure.host(gnu*): Set use_libgcj_bc to yes.
From-SVN: r128149
Adam Nemet [Wed, 5 Sep 2007 19:56:39 +0000 (19:56 +0000)]
builtin-expect-1.c: New test.
* gcc.dg/tree-ssa/builtin-expect-1.c: New test.
* gcc.dg/tree-ssa/builtin-expect-2.c: New test.
* gcc.dg/tree-ssa/builtin-expect-3.c: New test.
* gcc.dg/tree-ssa/builtin-expect-4.c: New test.
* gcc.dg/tree-ssa/builtin-expect-5.c: New test.
From-SVN: r128148
Adam Nemet [Wed, 5 Sep 2007 19:54:29 +0000 (19:54 +0000)]
re PR tree-optimization/21513 (__builtin_expect getting in the way of uninitialized warnings)
PR tree-optimization/21513
* builtins.c (build_builtin_expect_predicate): New function.
(fold_builtin_expect): Add argument for expected value.
Distribute __builtin_expect over short-circuiting operations.
Fold nested builtin_expects.
(fold_builtin_2): Adjust call to fold_builtin_expect.
From-SVN: r128147
Rask Ingemann Lambertsen [Wed, 5 Sep 2007 19:47:56 +0000 (21:47 +0200)]
re PR web/32965 (missing documentation for -ftree-dse)
PR web/32965
PR tree-optimization/13756
* doc/invoke.texi (Options That Control Optimization): Document
-ftree-dse.
From-SVN: r128146
Paolo Carlini [Wed, 5 Sep 2007 19:10:48 +0000 (19:10 +0000)]
re PR c++/30302 (ICE with invalid member in anonymous struct)
/cp
2007-09-03 Paolo Carlini <pcarlini@suse.de>
PR c++/30302
* semantics.c (finish_id_expression): Check that path != NULL_TREE
before using TYPE_BINFO on it.
* class.c (finish_struct_anon): Deal correctly with anonymous
structs (vs unions, as GNU extension) in error messages.
/testsuite
2007-09-03 Paolo Carlini <pcarlini@suse.de>
PR c++/30302
* g++.dg/ext/anon-struct5.C: New.
From-SVN: r128145
Jason Merrill [Wed, 5 Sep 2007 18:56:55 +0000 (14:56 -0400)]
fix changelog entry
From-SVN: r128144
Pat Haugen [Wed, 5 Sep 2007 18:33:58 +0000 (18:33 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2007-09-05 Pat Haugen <pthaugen@us.ibm.com>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r128143
Uros Bizjak [Wed, 5 Sep 2007 17:43:01 +0000 (19:43 +0200)]
cpuid.h: New file.
* gcc/config/i386/cpuid.h: New file.
* gcc/config/i386/driver-i386.c: Include cpuid.h.
(describe_cache): Shrink size and line strings to 100 bytes.
(detect_caches_amd): Return "" for unsupported max_ext_level.
Use __cpuid function.
(detect_caches_intel): Return "" for unsupported max_level.
Use __cpuid function.
(host_detect_local_cpu): Change feature flag variables to
unsigned int. Initialize only extended feature flag variables.
Use __get_cpuid_max to determine max supported cpuid level.
Use __cpuid function to determine supported features. Fix
calculation of family id. Remove is_amd and check signature
directly. Check for Geode signature. Handle family 4 id.
[PROCESSOR_GENERIC32]: New default for unknown family id. Move
cpu discovery code to other part of the function.
[PROCESSOR_PENTIUM, PROCESSOR_K6, PROCESSOR_ATHLON]: Do not tune
for sub-architecture.
[PROCESSOR_PENTIUMPRO]: Simplify cpu discovery code.
[PROCESSOR_K8]: Add k8-sse3 architecture.
[PROCESSOR_GENERIC64]: Remove.
* gcc/config/i386/x-i386 (driver-i386.o): Depend on cpuid.h.
* gcc/config/i386/crtfastmath.c: Include cpuid.h. Use __get_cpuid
to check for SSE and FXSAVE support.
* gcc/config/i386/t-crtfm (crtfastmath.o): Depend on cpuid.h.
Add -minline-all-stringops.
* gcc/config.gcc (i[34567]86-*-*): Add cpuid.h to extra_headers.
(x86_64-*-*): Ditto.
testsuite/ChangeLog:
* gcc.dg/i386-cpuid.h: Remove.
* gcc.target/i386/mmx-check.h: Include cpuid.h. Use __get_cpuid.
* gcc.target/i386/sse-check.h: Ditto.
* gcc.target/i386/sse2-check.h: Ditto.
* gcc.target/i386/sse3-check.h: Ditto.
* gcc.target/i386/ssse3-check.h: Ditto.
* gcc.target/i386/sse4_1-check.h: Ditto.
* gcc.target/i386/sse4_2-check.h: Ditto.
* gcc.target/i386/sse4a-check.h: Ditto.
* gcc.dg/torture/pr16104-1.c: Ditto.
* gcc.target/i386/mmx-4.c: Do not use NOINLINE.
* gcc.target/i386/sse-6.c: Ditto.
* gcc.target/i386/sse-7.c: Ditto.
* g++.dg/other/i386-1.C: Include cpuid.h.
(main): New function. Use __get_cpuid to check target fetaures.
libgomp/ChangeLog:
* testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets.
(main): Use __get_cpuid to get i386 target fetaures.
* testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets.
(main): Use __get_cpuid to get x86_64 target fetaures.
From-SVN: r128141
Jie Zhang [Wed, 5 Sep 2007 16:23:42 +0000 (16:23 +0000)]
linux-unwind.h: New file.
* config/bfin/linux-unwind.h: New file.
* config/bfin/linux.h (MD_UNWIND_SUPPORT): Define.
* config/bfin/uclinux.h (MD_UNWIND_SUPPORT): Define.
From-SVN: r128140
Laurynas Biveinis [Wed, 5 Sep 2007 15:50:41 +0000 (15:50 +0000)]
Makefile.in (stmt.o): Add alloc-pool.h dependency.
2007-09-05 Laurynas Biveinis <laurynas.biveinis@gmail.com>
* Makefile.in (stmt.o): Add alloc-pool.h dependency.
* stmt.c: Include alloc-pool.h.
(struct case_node): Remove GTY marker.
(add_case_node): New parameter case_node_pool. Use it for
allocation of r.
(expand_case): New allocation pool case_node_pool. Initialize it,
pass to add_case_node and free it.
From-SVN: r128139
Paul Thomas [Wed, 5 Sep 2007 14:59:03 +0000 (14:59 +0000)]
char_length_10.f90: Correct typo.
2007-09-05 Paul Thomas <pault@gcc.gnu.org>
* gfortran.dg/char_length_10.f90: Correct typo.
From-SVN: r128136
Sandra Loosemore [Wed, 5 Sep 2007 14:46:25 +0000 (10:46 -0400)]
mipscop-1.c: Add nomips16 attributes.
2007-09-05 Sandra Loosemore <sandra@codesourcery.com>
David Ung <davidu@mips.com>
Nigel Stephens <nigel@mips.com>
gcc/testsuite/
* gcc.c-torture/compile/mipscop-1.c: Add nomips16 attributes.
* gcc.c-torture/compile/mipscop-2.c: Likewise.
* gcc.c-torture/compile/mipscop-3.c: Likewise.
* gcc.c-torture/compile/mipscop-4.c: Likewise.
* gcc.dg/torture/mips-hilo-1.c: Likewise.
* gcc.dg/torture/mips-hilo-2.c: Likewise.
* gcc.dg/torture/pr19683-1.c: Likewise.
* gcc.target/mips/madd-3.c: Likewise.
* gcc.target/mips/maddu-3.c: Likewise.
* gcc.target/mips/msub-3.c: Likewise.
* gcc.target/mips/msubu-3.c: Likewise.
* gcc.target/mips/asm-1.c: Likewise.
* gcc.target/mips/branch-1.c: Likewise.
* gcc.target/mips/ins-1.c: Likewise.
* gcc.target/mips/near-far-3.c: Likewise.
* gcc.target/mips/near-far-4.c: Likewise.
* gcc.target/mips/smartmips-lwxs.c: Likewise.
* gcc.target/mips/smartmips-ror-1.c: Likewise.
* gcc.target/mips/smartmips-ror-2.c: Likewise.
* gcc.target/mips/smartmips-ror-3.c: Likewise.
* gcc.target/mips/smartmips-ror-4.c: Likewise.
* gcc.target/mips/dspr2-MULT.c: Likewise.
* gcc.target/mips/dspr2-MULTU.c: Likewise.
* gcc.target/mips/mips32-dsp-run.c: Likewise.
* gcc.target/mips/mips32-dspr2-type.c: Likewise.
* gcc.target/mips/code-readable-1.c: Add mips16 attributes.
* gcc.target/mips/code-readable-2.c: Likewise.
* gcc.target/mips/code-readable-3.c: Likewise.
Co-Authored-By: David Ung <davidu@mips.com>
Co-Authored-By: Nigel Stephens <nigel@mips.com>
From-SVN: r128135
Sandra Loosemore [Wed, 5 Sep 2007 14:40:04 +0000 (10:40 -0400)]
Add mips16/nomips16 function attributes and -mflip-mips16 option for testing mixed-mode compilation.
2007-09-05 Sandra Loosemore <sandra@codesourcery.com>
David Ung <davidu@mips.com>
Nigel Stephens <nigel@mips.com>
Add mips16/nomips16 function attributes and -mflip-mips16 option
for testing mixed-mode compilation.
gcc/
* config/mips/mips.opt (mflip-mips16): New.
* config/mips/mips.h (SYMBOL_FLAG_MIPS16_FUNC): Define.
(SYMBOL_FLAG_MIPS16_FUNC_P): Define.
* config/mips/mips.c (mips_base_target_flags): New.
(mips_base_mips16): New.
(mips_base_schedule_insns): New.
(mips_base_reorder_blocks_and_partition): New.
(mips_base_align_loops): New.
(mips_base_align_jumps): New.
(mips_base_align_functions): New.
(mips16_flipper): New.
(mips_attribute_table): Add "mips16" and "nomips16" entries.
(TARGET_SET_CURRENT_FUNCTION): Define.
(mips_mips16_type_p, mips_nomips16_type_p): New.
(mips_comp_type_attributes): Check mips16/nomips16 attributes.
(mips_function_ok_for_sibcall): Make it deal with functions with
mips16 attributes.
(mips_init_split_addresses): New, split out from override_options.
(mips_init_relocs): New, split out from override_options.
(was_mips16_p): New.
(mips_set_mips16_mode): New, split out from override_options.
(mips_set_current_function): New.
(override_options): Add sorry for unsupported mips16/pic
combination. Remove error for mips16/dsp combination. Save
base option settings.
(mips_file_start): Move mips16 mode setting output from here....
(mips_output_function_prologue): ....to here.
(mips_output_mi_thunk): Check for mips16 function.
(build_mips16_function_stub): Don't set .mips16 here.
(build_mips16_call_stub): Likewise.
(mips_expand_builtin): Error in mips16 mode.
(mips_use_mips16_mode_p): New.
(mips_encode_section_info): Check for mips16 function, and set
SYMBOL_REF_FLAGS accordingly.
* doc/extend.texi (Function Attributes): Document new
mips16/nomips16 attributes.
* doc/invoke.texi (Option Summary): Add -mflip-mips16.
(MIPS Options): Document -mflip-mips16.
gcc/testsuite/
* gcc.target/mips/mips16-attributes.c: New.
Co-Authored-By: David Ung <davidu@mips.com>
Co-Authored-By: Nigel Stephens <nigel@mips.com>
From-SVN: r128134
Sandra Loosemore [Wed, 5 Sep 2007 14:33:48 +0000 (10:33 -0400)]
mips.c (mips_legitimize_tls_address): Call sorry if we encounter TLS address in MIPS16 mode.
2007-09-05 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config/mips/mips.c (mips_legitimize_tls_address): Call sorry
if we encounter TLS address in MIPS16 mode.
(mips_legitimize_const_move): Check cannot_force_const_mem for
the (const (plus symbol offset)) case; this forces invalid TLS
address in MIPS16 mode to be caught by the above call to sorry.
(override_options): Don't reset targetm.have_tls in MIPS16 mode,
because that now enables emutls, which is not ABI compatible
with native TLS in non-MIPS16 mode.
From-SVN: r128133
Sandra Loosemore [Wed, 5 Sep 2007 14:24:54 +0000 (10:24 -0400)]
Add target hook invoked when cfun changes.
2007-09-05 Sandra Loosemore <sandra@codesourcery.com>
gcc/
Add target hook invoked when cfun changes.
* doc/tm.texi (TARGET_SET_CURRENT_FUNCTION): Document.
* target.h (struct gcc_target): Add set_current_function.
* target-def.h (TARGET_SET_CURRENT_FUNCTION): Define.
(TARGET_INITIALIZER): Add initializer for set_current_function.
* tree.h (push_struct_function): New.
* tree-inline.h (push_cfun, pop_cfun): Move declarations to...
* function.h: Here.
(set_cfun): Declare.
* tree-inline.c (cfun_stack, push_cfun, pop_cfun): Moved to...
* function.c: Here.
(push_function_context_to): Use allocate_struct_function
to create null context, not init_dummy_function_start. Use set_cfun.
(pop_function_context_from): Use set_cfun.
(in_dummy_function): New.
(invoke_set_current_function_hook): New.
(set_cfun): New.
(push_cfun, pop_cfun): Use set_cfun.
(push_struct_function): New.
(allocate_struct_function): Call invoke_set_current_function_hook
before returning.
(prepare_function_start): Don't set cfun here. Remove unused
argument; fix all callers.
(init_dummy_function_start): Fiddle with in_dummy_function. Call
push_struct_function.
(init_function_start): Set cfun here.
(expand_dummy_function_end): Fiddle with in_dummy_function. Pop cfun.
* omp-low.c (create_omp_child_function): Use push_struct_function
and pop_cfun to save/restore state.
(expand_omp_parallel): Remove unused saved_cfun variable.
* cgraphunit.c (ipa_passes): Use set_cfun.
* gimple-low.c (record_vars_into): Use push_cfun/pop_cfun here.
* dwarf2out.c (dwarf2out_abstract_function): Likewise.
* matrix-reorg.c (transform_allocation_sites): Likewise.
(matrix_reorg): Use set_cfun.
* gimplify.c (gimplify_function_tree): Use push_cfun/pop_cfun here.
* tree-optimize.c (tree_rest_of_compilation): Remove one redundant
assignment to cfun; use set_cfun for the other.
* tree-cfg.c (move_sese_region_to_fn): Use set_cfun.
(dump_function_to_file): Use push_cfun/pop_cfun here.
* c-decl.c (finish_function): Use set_cfun.
gcc/ada/
* trans.c (Compilation_unit_to_gnu): Use set_cfun.
* utils.c (end_subprog_body): Likewise.
gcc/cp/
* decl.c (finish_function): Use set_cfun.
* method.c (use_thunk): Likewise.
gcc/fortran/
* trans-decl.c (build_entry_thunks): Use set_cfun.
(gfc_generate_function_code): Likewise.
gcc/java/
* decl.c (finish_method): Use set_cfun.
gcc/treelang/
* treetree.c (tree_code_create_function_wrapup): Use set_cfun.
From-SVN: r128132
Richard Guenther [Wed, 5 Sep 2007 14:10:07 +0000 (14:10 +0000)]
configure.ac (--enable-stage1-checking): If neither --enable-checking nor --disable-checking is provided also turn on...
2007-09-05 Richard Guenther <rguenther@suse.de>
* configure.ac (--enable-stage1-checking): If neither --enable-checking
nor --disable-checking is provided also turn on yes and types
checking for stage1.
* configure: Re-generate.
From-SVN: r128131
Paul Thomas [Wed, 5 Sep 2007 13:34:25 +0000 (13:34 +0000)]
re PR fortran/31564 (Error: Type/rank mismatch in argument)
2007-09-05 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31564
* primary.c (gfc_match_rvalue): Make expressions that refer
to derived type parameters that have array references into
variable expressions. Remove references to use association
from the symbol.
PR fortran/33241
* decl.c (add_init_expr_to_sym): Provide assumed character
length parameters with the length of the initialization
expression, if a constant, or that of the first element of
an array.
2007-09-05 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31564
* gfortran.dg/derived_comp_array_ref_2.f90: New test.
PR fortran/33241
* gfortran.dg/char_length_10.f90: New test.
From-SVN: r128130
Kenneth Zadeck [Wed, 5 Sep 2007 13:23:32 +0000 (13:23 +0000)]
regrename.c (rerename_optimize): Use deferred rescanning and insert explicit calls to rescan insns when changed.
2007-09-05 Kenneth Zadeck <zadeck@naturalbridge.com>
* regrename.c (rerename_optimize): Use deferred rescanning and
insert explicit calls to rescan insns when changed.
From-SVN: r128129
Jan Hubicka [Wed, 5 Sep 2007 10:51:34 +0000 (12:51 +0200)]
optabs.c (libfunc_entry): Change optab to integer.
* optabs.c (libfunc_entry): Change optab to integer.
(hash_libfunc, convert_optab_libfunc, optab_libfunc,
set_optab_libfunc, set_conv_libfunc): Use optable indexes instead
of pointers for hashing.
From-SVN: r128128
Jan Hubicka [Wed, 5 Sep 2007 10:50:18 +0000 (12:50 +0200)]
sematics.c (expand_body): Remove unnecesary import_export_decl call...
* cp/sematics.c (expand_body): Remove unnecesary import_export_decl
call, DECL_EXTERNAL checks and current_function_decl saving.
From-SVN: r128127
Jan Hubicka [Wed, 5 Sep 2007 10:49:01 +0000 (12:49 +0200)]
regrename.c (pass_regrename, [...]): Add RTL sharing verifier.
* regrename.c (pass_regrename, pass_cprop_hardreg): Add RTL sharing
verifier.
* fwprop.c (pass_rtl_fwprop, pass_rtl_fwprop_add): Likewise.
* see.c (pass_see): Likewise.
* tracer.c (pass_tracer): Likewise.
* postreload-gcse.c (pass_gcse2): Likewise.
* postreload.c (pass_postreload_cse): Likewise.
* mode-switching.c (pass_mode_switching): Likewise.
* modulo-sched.c (pass_sms): Likewise.
* cse.c (cse_insn): Likewise.
* web.c (pass_web): Likweise.
* combine-stack-adj.c (pass_stack_adjustments): Likewise.
* dce.c (pass_ud_rtl_dce, pass_fast_rtl_dce): Likewise.
* loop-init.c (pass_rtl_loop_init): Likewise.
(pass_rtl_loop_done, pass_rtl_move_loop_, pass_rtl_unswitch,
pass_rtl_unroll_and, pass_rtl_doloop): Likewise.
* global.c (pass_global_alloc): Likewise.
* ifcvt.c (pass_rtl_ifcvt, pass_if_after_combine,
pass_if_after_reload): Likewise.
* reload.c (pass_peephole2, pass_split_for_shoren_branches): Likewise.
* dse.c (pass_rtl_dse1, pass_rtl_dse2): Likewise.
* regmove.c (pass_regmove): Likewise.
* function.c (pass_thread_prologugues_epilogues): Likewise.
* gcse.c (pass_gcse): Likewise.
* rtl-factoring.c (pass_rtl_seqabstr): Likewise.
* lower-subreg.c (pass_lower_subreg2): Likewise.
* bt-load.c (pass_branch_target_load): Likewise.
* emit-rtl.c (pass_unshare_all_rtl): Likewise.
* cfgcleanup.c (pass_jump, pass_jump2): Likewise.
* combine.c (pass_combine): Likewise.
* bb-reorder.c (pass_duplicate_comp, pass_reorder_blocks): Likewise.
(pass_partition_blocks): Likewise.
* var-tracking.c (pass_variable_track): Likewise.
* reg-stack.c (pass_stack_regs_run): Likewise.
* sched-rgn.c (pass_sched, pass_sched2): Likewise.
* passes.c (pass_postreload): Likewise.
(execute_function_todo): Add TODO_verify_rtl_sharing handling code.
* tree-pass.h (TODO_verify_rtl_sharing): New.
(TODO_update_ssa, TODO_update_ssa_no_phi, TODO_update_ssa_full_phi,
TODO_update_ssa_only_virtuals, TODO_remove_unused_locals,
TODO_set_props, TODO_df_finish, TODO_df_verify,
TODO_mark_first_instance, TODO_rebuild_alias): Renumber.
From-SVN: r128126
Paolo Carlini [Wed, 5 Sep 2007 09:31:54 +0000 (09:31 +0000)]
PR c++/29731 (again)
/cp
2007-09-05 Paolo Carlini <pcarlini@suse.de>
PR c++/29731 (again)
* parser.c (cp_parser_primary_expression): Return error_mark_node
when a statement-expression is found in a template-argument list.
/testsuite
2007-09-05 Paolo Carlini <pcarlini@suse.de>
PR c++/29731
* g++.dg/parse/template24.C: New.
From-SVN: r128124
Matthias Klose [Wed, 5 Sep 2007 07:45:09 +0000 (07:45 +0000)]
configure.ac: Do not pass --with-native-libdir to classpath.
libjava/
2007-09-04 Matthias Klose <doko@ubuntu.com>
* configure.ac: Do not pass --with-native-libdir to classpath.
* configure: Regenerate.
libjava/classpath/
2007-09-04 Matthias Klose <doko@ubuntu.com>
* configure.ac: Append libgcj soversion to nativeexeclibdir.
* configure: Regenerate.
From-SVN: r128121
Kaveh R. Ghazi [Wed, 5 Sep 2007 06:59:36 +0000 (06:59 +0000)]
fold-const.c (all_ones_mask_p, [...]): Constify.
* fold-const.c (all_ones_mask_p, sign_bit_p, simple_operand_p,
fold_real_zero_addition_p, reorder_operands_p,
div_if_zero_remainder, fold_undefer_overflow_warnings,
int_binop_types_match_p, fold_convert_const_int_from_int,
fold_convert_const_int_from_real,
fold_convert_const_int_from_fixed,
fold_convert_const_real_from_real,
fold_convert_const_real_from_fixed,
fold_convert_const_fixed_from_fixed,
fold_convert_const_fixed_from_int,
fold_convert_const_fixed_from_real, maybe_lvalue_p,
fold_checksum_tree, fold_check_failed, print_fold_checksum,
debug_fold_checksum, multiple_of_p): Constify.
* tree-flow-inline.h (get_lineno): Likewise.
* tree-flow.h (get_lineno): Likewise.
* tree-object-size.c (compute_object_offset, addr_object_size,
alloc_object_size, pass_through_call): Likewise.
* tree-pretty-print.c (op_symbol, print_call_name,
print_struct_decl, do_niy): Likewise.
* tree.h (fold_undefer_overflow_warnings, multiple_of_p,
debug_fold_checksum): Likewise.
From-SVN: r128120
Steven Bosscher [Wed, 5 Sep 2007 05:31:37 +0000 (05:31 +0000)]
re PR middle-end/33029 (libgcc2.c:1890: internal compiler error: in local_cprop_pass, at gcse.c:3236)
PR middle-end/33029
* lower-subreg.c (resolve_clobber): If we remove a REG_LIBCALL
note, remove the associated REG_RETVAL note.
From-SVN: r128119
Andrew Pinski [Wed, 5 Sep 2007 01:36:09 +0000 (01:36 +0000)]
config.gcc (powerpc*-*-*): Install spu2vmx.h, vec_types.h, and si2vmx.h headers.
2007-09-04 Andrew Pinski <andrew_pinski@playstation.sony.com>
* config.gcc (powerpc*-*-*): Install
spu2vmx.h, vec_types.h, and si2vmx.h headers.
* config/rs6000/spu2vmx.h: New header.
* config/rs6000/si2vmx.h: New header.
* config/rs6000/vec_types.h: New header.
2007-09-04 Andrew Pinski <andrew_pinski@playstation.sony.com>
* g++.dg/other/spu2vmx-1.C: New test.
From-SVN: r128118
Ben Elliston [Wed, 5 Sep 2007 01:31:53 +0000 (01:31 +0000)]
* varasm.c (initializer_constant_valid_p): Fix comment typo.
From-SVN: r128117
Ben Elliston [Wed, 5 Sep 2007 01:22:05 +0000 (01:22 +0000)]
ppu_intrinsics.h (__ldarx): Use `Z' constraint, not `m' for *ptrp.
* config/rs6000/ppu_intrinsics.h (__ldarx): Use `Z' constraint,
not `m' for *ptrp.
(__stdcx): Make asm volatile.
(__stwcx, __stdcx): Return only 0 or 1.
From-SVN: r128116
Jason Merrill [Wed, 5 Sep 2007 01:04:05 +0000 (21:04 -0400)]
except.c (initialize_handler_parm): Use fold_build_cleanup_point_expr.
* except.c (initialize_handler_parm): Use
fold_build_cleanup_point_expr.
From-SVN: r128115
Jerry DeLisle [Wed, 5 Sep 2007 00:51:18 +0000 (00:51 +0000)]
re PR libfortran/33225 (Missing last digit in some formatted output (on 32bit targets), per kind write_float)
2007-03-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33225
* io/write.c (stdbool.h): Add include. (sign_t): Move typedef to
new file write_float.def. Include write_float.def.
(extract_real): Delete. (calculate_sign): Delete.
(calculate_exp): Delete. (calculate_G_format): Delete.
(output_float): Delete. (write_float): Delete.
* io/write_float.def (calculate_sign): Added.
(output_float): Refactored to be independent of kind and added to this
file for inclusion. (write_infnan): New function to write "Infinite" or
"NaN" depending on flags passed, independent of kind.
(CALCULATE_EXP): New macro to build kind specific functions. Use it.
(OUTPUT_FLOAT_FMT_G): New macro, likewise. Use it.
(DTOA, DTOAL): Macros to implement "decimal to ascii".
(WRITE_FLOAT): New macro for kind specific write_float functions.
(write_float): Revised function to determine kind and use WRITE_FLOAT
to implement kind specific output.
From-SVN: r128114
GCC Administrator [Wed, 5 Sep 2007 00:17:36 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r128112
Jan Hubicka [Wed, 5 Sep 2007 00:03:32 +0000 (02:03 +0200)]
Revert:
2007-09-04 Jan Hubicka <jh@suse.cz>
* tree-tailcall.c (eliminate_tail_call): Expect unrenamed return value.
2007-09-04 Richard Guenther <rguenther@suse.de>
* tree-ssa-operands.c (add_virtual_operand): Only mark
stores as has_volatile_ops if alias information is not available.
From-SVN: r128109
Jakub Jelinek [Tue, 4 Sep 2007 23:31:11 +0000 (01:31 +0200)]
re PR rtl-optimization/32300 (ICE with -O2 -fsee)
PR rtl-optimization/32300
* see.c (see_copy_insn): New function.
(see_def_extension_not_merged, see_merge_one_use_extension,
see_merge_one_def_extension): Use it. Avoid changing
PREV_INSN/NEXT_INSN chains directly, insted emit insns
into sequences. Call df_insn_delete on temporary insns
that won't be emitted into the insn stream.
(rest_of_handle_see): Turn off DF_DEFER_INSN_RESCAN
and run df_process_deferred_rescans () before run_fast_dce.
From-SVN: r128108
Jakub Jelinek [Tue, 4 Sep 2007 23:29:58 +0000 (01:29 +0200)]
re PR tree-optimization/33017 (tree check fail for legal code)
PR tree-optimization/33017
* tree-data-ref.c (split_constant_offset) <case SSA_NAME>: Don't
recurse for pure or const function calls.
* gcc.dg/pr33017.c: New test.
From-SVN: r128107
Jakub Jelinek [Tue, 4 Sep 2007 23:28:26 +0000 (01:28 +0200)]
tramp.asm: Include config.h.
* config/rs6000/tramp.asm: Include config.h.
Check __PIC__ or __pic__ macro instead of SHARED.
From-SVN: r128106
Laurynas Biveinis [Tue, 4 Sep 2007 23:22:34 +0000 (23:22 +0000)]
c-format.c: Include alloc-pool.h.
2007-09-04 Laurynas Biveinis <laurynas.biveinis@gmail.com>
* c-format.c: Include alloc-pool.h.
(check_format_info_main): New argument fwt_alloc. Use allocation
pool instead of GC. Remove GC deallocation code.
(check_format_arg): Create allocation pool, pass it to
check_format_info_main and free it afterwards.
* Makefile.in (c-format.o): Add alloc-pool.h dependency.
From-SVN: r128105
Matthias Klose [Tue, 4 Sep 2007 21:32:41 +0000 (21:32 +0000)]
re PR libgcj/33278 (libjava fails to compile if configure argument contains "version")
2007-09-05 Matthias Klose <doko@ubuntu.com>
PR libgcj/33278
* configure.ac: Robustify extraction of gcj version.
* configure: Regenerate.
From-SVN: r128104
Ben Elliston [Tue, 4 Sep 2007 21:10:59 +0000 (21:10 +0000)]
ppu_intrinsics.h (__protected_stream_count): Rename count macro arugment for clarity.
* config/rs6000/ppu_intrinsics.h (__protected_stream_count):
Rename count macro arugment for clarity.
(__protected_unlimited_stream_set): Pass UG=1 to __dcbt_TH1000.
(__protected_stream_set): Likewise, pass 0.
testsuite/
* gcc.target/powerpc/ppu-intrinsics.c: Add test cases for the
__protected_stream family of macros.
From-SVN: r128103
Jason Merrill [Tue, 4 Sep 2007 20:18:05 +0000 (16:18 -0400)]
re PR c++/31419 (template user defined conversion operator instantiated for conversion to self)
PR c++/31419
* call.c (reference_binding): Don't look for user-defined conversions
to the same type.
From-SVN: r128102
Jan Hubicka [Tue, 4 Sep 2007 19:27:11 +0000 (21:27 +0200)]
* tree-tailcall.c (eliminate_tail_call): Expect unrenamed return value.
From-SVN: r128101
Jason Merrill [Tue, 4 Sep 2007 18:37:33 +0000 (14:37 -0400)]
re PR c++/31411 (ICE in gimplify_expr with throw/special copy constructor with initializer with a deconstructor)
PR c++/31411
* except.c (initialize_handler_parm): Put a CLEANUP_POINT_EXPR inside
the MUST_NOT_THROW_EXPR.
From-SVN: r128100
Andrew Haley [Tue, 4 Sep 2007 18:00:31 +0000 (18:00 +0000)]
[multiple changes]
2007-09-04 Andrew Haley <aph@redhat.com>
PR java/27908
* testsuite/libjava.lang/PR27908.java
({run1,run2,run3}.isRunning): New Method.
(main): Fix race condition.
2007-08-29 Andrew Haley <aph@redhat.com>
* gnu/classpath/natVMStackWalker.cc (VMStackWalker::getCallingClass):
Make sure we're not sibcalled.
(GET_CALLING_CLASS): Define for ARM EABI.
2007-08-22 Andrew Haley <aph@redhat.com>
* configure.host (BACKTRACESPEC): Add arm*-linux*.
2007-08-22 Andrew Haley <aph@redhat.com>
* configure.ac (LIBSTDCXXSPEC): New.
* configure.host: Add arm*-linux* to pthread test.
* configure.ac (LIBGCJTESTSPEC): Add path to libstdc++ for ARM
EABI.
* testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Use
-fexceptions for ARM EABI.
* testsuite/lib/libjava.exp (libjava_arguments): Add libgcj-test.spec.
(libjava_invoke): Log the invocation.
2007-08-15 Andrew Haley <aph@redhat.com>
* configure.ac (extra_ldflags): Define.
* Makefile.am: Use extra_ldflags for all executables.
2007-08-14 Andrew Haley <aph@redhat.com>
* sysdep/arm/backtrace.h: Remove stubs for _Unwind_GetIPInfo,
_Unwind_GetRegionStart, and _Unwind_Backtrace.
2007-07-27 Andrew Haley <aph@redhat.com>
* gnu/classpath/natVMStackWalker.cc (GET_CALLING_CLASS): Stub for
ARM EABI.
* exception.cc (get_exception_header_from_ue): New.
(get_ttype_entry): ARM EABI version.
(PERSONALITY_FUNCTION): Add ARM EABI code.
* sysdep/arm/backtrace.h: New file.
* stacktrace.cc (_URC_NORMAL_STOP): New.
* configure.ac (extra_ldflags_libjava): Add libsupc++.la for ARM
EABI.
* configure.host (BACKTRACESPEC): Add arm/backtrace.h.
From-SVN: r128098
Andrew Haley [Tue, 4 Sep 2007 17:57:52 +0000 (17:57 +0000)]
[multiple changes]
2007-09-04 Andrew Haley <aph@redhat.com>
PR java/27908
* testsuite/libjava.lang/PR27908.java
({run1,run2,run3}.isRunning): New Method.
(main): Fix race condition.
2007-08-29 Andrew Haley <aph@redhat.com>
* gnu/classpath/natVMStackWalker.cc (VMStackWalker::getCallingClass):
Make sure we're not sibcalled.
(GET_CALLING_CLASS): Define for ARM EABI.
2007-08-22 Andrew Haley <aph@redhat.com>
* configure.host (BACKTRACESPEC): Add arm*-linux*.
2007-08-22 Andrew Haley <aph@redhat.com>
* configure.ac (LIBSTDCXXSPEC): New.
* configure.host: Add arm*-linux* to pthread test.
* configure.ac (LIBGCJTESTSPEC): Add path to libstdc++ for ARM
EABI.
* testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Use
-fexceptions for ARM EABI.
* testsuite/lib/libjava.exp (libjava_arguments): Add libgcj-test.spec.
(libjava_invoke): Log the invocation.
2007-08-15 Andrew Haley <aph@redhat.com>
* configure.ac (extra_ldflags): Define.
* Makefile.am: Use extra_ldflags for all executables.
2007-08-14 Andrew Haley <aph@redhat.com>
* sysdep/arm/backtrace.h: Remove stubs for _Unwind_GetIPInfo,
_Unwind_GetRegionStart, and _Unwind_Backtrace.
2007-07-27 Andrew Haley <aph@redhat.com>
* gnu/classpath/natVMStackWalker.cc (GET_CALLING_CLASS): Stub for
ARM EABI.
* exception.cc (get_exception_header_from_ue): New.
(get_ttype_entry): ARM EABI version.
(PERSONALITY_FUNCTION): Add ARM EABI code.
* sysdep/arm/backtrace.h: New file.
* stacktrace.cc (_URC_NORMAL_STOP): New.
* configure.ac (extra_ldflags_libjava): Add libsupc++.la for ARM
EABI.
* configure.host (BACKTRACESPEC): Add arm/backtrace.h.
From-SVN: r128097
Andrew Haley [Tue, 4 Sep 2007 17:56:02 +0000 (17:56 +0000)]
Delete.
From-SVN: r128095
Andrew Haley [Tue, 4 Sep 2007 17:54:56 +0000 (17:54 +0000)]
re PR java/27908 (VMSecureRandom generateSeed infinite loop? (Regression))
2007-09-04 Andrew Haley <aph@redhat.com>
PR java/27908
* testsuite/libjava.lang/PR27908.java
({run1,run2,run3}.isRunning): New Method.
(main): Fix race condition.
From-SVN: r128094
Andrew Haley [Tue, 4 Sep 2007 17:52:45 +0000 (17:52 +0000)]
[multiple changes]
2007-09-04 <aph@redhat.com>
* src/arm/sysv.S (UNWIND): New.
(Whole file): Conditionally compile unwinder directives.
* src/arm/sysv.S: Add unwinder directives.
* src/arm/ffi.c (ffi_prep_args): Align structs by at least 4 bytes.
Only treat r0 as a struct address if we're actually returning a
struct by address.
Only copy the bytes that are actually within a struct.
(ffi_prep_cif_machdep): A Composite Type not larger than 4 bytes
is returned in r0, not passed by address.
(ffi_call): Allocate a word-sized temporary for the case where
a composite is returned in r0.
(ffi_prep_incoming_args_SYSV): Align as necessary.
2007-08-05 Steven Newbury <s_j_newbury@yahoo.co.uk>
* src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Use __clear_cache instead of
directly using the sys_cacheflush syscall.
2007-07-27 Andrew Haley <aph@redhat.com>
* src/arm/sysv.S (ffi_closure_SYSV): Add soft-float.
From-SVN: r128093
Jan Hubicka [Tue, 4 Sep 2007 16:07:50 +0000 (18:07 +0200)]
re PR middle-end/29478 (optimization generates warning for casts)
* gcc.dg/tree-ssa/loadpre8.c: Disable inlining.
* gcc.dg/tree-ssa/pr27236.c: Likewise.
* gcc.dg/tree-ssa/predcom-1.c: Likewise.
* gcc.dg/tree-ssa/predcom-2.c: Likewise.
* gcc.dg/tree-ssa/flatten-2.c: Avoid overactive tail call ellim.
* gcc.dg/tree-ssa/loadpre5.c: Likewise.
* gcc.dg/vect/costmodel/i386/costmodel-fast-math-vect-pr29925.c:
Likewise.
* invoke.texi (-finline-small-functions): Document.
* ipa-inline.c (cgraph_default_inline_p): Do not use DECL_INLINE
when deciding what is inlinable.
(cgraph_decide_recursive_inlining): Handle flag_inline_functions.
(cgraph_decide_inlining_of_small_function): Handle new flags.
(cgraph_decide_inlining_incrementally): Likewise.
* opts.c (decode_options): Enable flag_inline_small_functions at -O2
* common.opt (finline-small-functions): New.
* Makefile.in (build/gengtype.o-warn): Work around PR29478
From-SVN: r128092
Richard Sandiford [Tue, 4 Sep 2007 15:53:21 +0000 (15:53 +0000)]
decl.c (cp_finish_decl): Call determine_visibility before make_rtl_for_nonlocal_decl.
gcc/cp/
* decl.c (cp_finish_decl): Call determine_visibility before
make_rtl_for_nonlocal_decl.
From-SVN: r128091
Richard Biener [Tue, 4 Sep 2007 15:29:15 +0000 (15:29 +0000)]
tree-ssa-operands.c (add_virtual_operand): Only mark stores as has_volatile_ops if alias information is not available.
2007-09-04 Richard Guenther <rguenther@suse.de>
* tree-ssa-operands.c (add_virtual_operand): Only mark
stores as has_volatile_ops if alias information is not available.
From-SVN: r128089
Andrew Haley [Tue, 4 Sep 2007 15:08:15 +0000 (15:08 +0000)]
libgcc-bpabi.ver: Add _Unwind_Backtrace as GCC_4.3.0.
2007-08-29 Andrew Haley <aph@redhat.com>
* config/arm/libgcc-bpabi.ver: Add _Unwind_Backtrace as GCC_4.3.0.
From-SVN: r128088