aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2008-11-15re PR tree-optimization/38051 (Miscompilation of glibc's memcmp)Richard Guenther4-15/+237
2008-11-15 Richard Guenther <rguenther@suse.de> PR tree-optimization/38051 * tree-ssa-alias.c (update_alias_info_1): Manually find written variables. * gcc.c-torture/execute/pr38051.c: New testcase. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r141887
2008-11-15invoke.texi (-mfix-r10000): Document.Joshua Kinard23-53/+515
gcc/ 2008-11-15 Joshua Kinard <kumba@gentoo.org> * doc/invoke.texi (-mfix-r10000): Document. * config/mips/mips.opt (mfix-r10000): New option. * config/mips/mips-protos.h (mips_output_sync_loop): Declare. * config/mips/mips.h (MIPS_COMPARE_AND_SWAP): Use %?. (MIPS_COMPARE_AND_SWAP_12): Likewise. (MIPS_SYNC_OP): Likewise. (MIPS_SYNC_OP_12): Likewise. (MIPS_SYNC_OLD_OP_12): Likewise. (MIPS_SYNC_NEW_OP_12): Likewise. (MIPS_SYNC_OLD_OP): Likewise. (MIPS_SYNC_NAND): Likewise. (MIPS_SYNC_OLD_NAND): Likewise. (MIPS_SYNC_EXCHANGE): Likewise. (MIPS_SYNC_EXCHANGE_12): Likewise. (MIPS_SYNC_NEW_OP): Likewise, using %~ to fill branch-likely delay slots. (MIPS_SYNC_NEW_NAND): Likewise. * config/mips/mips.c (mips_print_operand_punctuation): Handle '~'. (mips_init_print_operand_punct): Treat '~' as a punctuation character. (mips_output_sync_loop): New function. (mips_override_options): Make -march=r10000 imply -mfix-r10000. Make -mfix-r10000 require branch-likely instructions. * config/mips/sync.md (sync_compare_and_swap<mode>): Use mips_output_sync_loop. (compare_and_swap_12): Likewise. (sync_add<mode>): Likewise. (sync_<optab>_12): Likewise. (sync_old_<optab>_12): Likewise. (sync_new_<optab>_12): Likewise. (sync_nand_12): Likewise. (sync_old_nand_12): Likewise. (sync_new_nand_12): Likewise. (sync_sub<mode>): Likewise. (sync_old_add<mode>): Likewise. (sync_old_sub<mode>): Likewise. (sync_new_add<mode>): Likewise. (sync_new_sub<mode>): Likewise. (sync_<optab><mode>): Likewise. (sync_old_<optab><mode>): Likewise. (sync_new_<optab><mode>): Likewise. (sync_nand<mode>): Likewise. (sync_old_nand<mode>): Likewise. (sync_new_nand<mode>): Likewise. (sync_lock_test_and_set<mode>): Likewise. (test_and_set_12): Likewise. gcc/testsuite/ 2008-11-15 Joshua Kinard <kumba@gentoo.org> Richard Sandiford <rdsandiford@goolemail.com> * gcc.target/mips/fix-r10000-1.c: New test. * gcc.target/mips/fix-r10000-2.c: Likewise. * gcc.target/mips/fix-r10000-3.c: Likewise. * gcc.target/mips/fix-r10000-4.c: Likewise. * gcc.target/mips/fix-r10000-5.c: Likewise. * gcc.target/mips/fix-r10000-6.c: Likewise. * gcc.target/mips/fix-r10000-7.c: Likewise. * gcc.target/mips/fix-r10000-8.c: Likewise. * gcc.target/mips/fix-r10000-9.c: Likewise. * gcc.target/mips/fix-r10000-10.c: Likewise. * gcc.target/mips/fix-r10000-11.c: Likewise. * gcc.target/mips/fix-r10000-12.c: Likewise. * gcc.target/mips/fix-r10000-13.c: Likewise. * gcc.target/mips/fix-r10000-14.c: Likewise. * gcc.target/mips/fix-r10000-15.c: Likewise. Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com> From-SVN: r141886
2008-11-15trans.c (emit_check): Put back a final save_expr to prevent exponential ↵Geert Bosch2-1/+9
expansion during gimplification. * gcc-interface/trans.c (emit_check): Put back a final save_expr to prevent exponential expansion during gimplification. From-SVN: r141885
2008-11-15gcc.c (cc1_options): Fix comment.Eric Botcazou4-6/+15
* gcc.c (cc1_options): Fix comment. ada/ * gcc-interface/lang-specs.h: Expand -coverage and reorder switches. From-SVN: r141884
2008-11-15decl.c (gnat_to_gnu_entity): Force constants initialized to a static ↵Eric Botcazou2-5/+15
constant to be statically allocated... * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Force constants initialized to a static constant to be statically allocated even if they are of a padding type, provided the original type also has constant size. From-SVN: r141883
2008-11-15re PR ada/37993 (missing Ada multilib support for darwin)Laurent GUERBY3-2/+188
2008-11-15 Laurent Guerby <laurent@guerby.net> PR ada/37993 * gcc-interface/Makefile.in: Add multilib handling for x86_64 on darwin. * system-darwin-x86_64.ads: New file. From-SVN: r141882
2008-11-15re PR c++/37561 (Revision 140405 caused g++.old-deja/g++.mike/warn1.C)Jakub Jelinek7-14/+66
PR c++/37561 * c-typeck.c (build_unary_op): Don't call get_unwidened. Use argtype instead of result_type. * typeck.c (cp_build_unary_op): Don't call get_unwidened. Use argtype instead of result_type. * gcc.dg/pr37561.c: New test. * g++.dg/other/increment1.C: New test. From-SVN: r141881
2008-11-15re PR fortran/37988 (Edit descriptor checking (compile time) for "<Holerith>T)")Jerry DeLisle2-0/+11
2008-11-14 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/37988 * gfortran.dg/fmt_error_6.f90: New test. From-SVN: r141880
2008-11-15re PR fortran/37988 (Edit descriptor checking (compile time) for "<Holerith>T)")Jerry DeLisle2-8/+35
2008-11-14 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/37988 * io.c (enum format_token): For readability replace FMT_POS with FMT_T, FMT_TL, and FMT_TR. (format_lex): Use new enumerators. (check_format): Add check for missing positive integer. From-SVN: r141879
2008-11-15Daily bump.GCC Administrator1-1/+1
From-SVN: r141877
2008-11-14ira-int.h (struct ira_loop_tree_node): Improve comments for ↵Adam Nemet2-4/+9
subloop_next/next and subloops/childen fields. * ira-int.h (struct ira_loop_tree_node): Improve comments for subloop_next/next and subloops/childen fields. From-SVN: r141873
2008-11-14spu-elf.h (STANDARD_STARTFILE_PREFIX_2): Disable default.Ulrich Weigand3-0/+27
* config/spu/spu-elf.h (STANDARD_STARTFILE_PREFIX_2): Disable default. (STANDARD_INCLUDE_DIR): Redefine to "/include". (LOCAL_INCLUDE_DIR): Undefine. * config/spu/t-spu-elf (NATIVE_SYSTEM_HEADER_DIR): Define. From-SVN: r141870
2008-11-14re PR c++/38030 (name-lookup for non-dependent name in template function is ↵Jason Merrill4-1/+29
wrong) PR c++/38030 * semantics.c (finish_call_expr): Remember the result of non-dependent overload resolution. From-SVN: r141866
2008-11-14re PR c++/37740 ([C++0x] "foo f{...}" form compiles, but "new foo{...}" one ↵Jason Merrill4-1/+30
doesn't) PR c++/37740 * call.c (build_aggr_conv): Increment i. From-SVN: r141865
2008-11-14re PR middle-end/38004 (g++.dg/vect/pr36648.cc)Steve Ellcey2-2/+7
PR middle-end/38004 * g++.dg/vect/pr36648.cc: Check alignment requirement. From-SVN: r141864
2008-11-14re PR testsuite/38098 (gcc.dg/cpp/subframework1.c -fno-show-column fails on ↵Jack Howarth2-1/+6
darwin9) 2008-11-14 Jack Howarth <howarth@bromo.med.uc.edu> PR testsuite/38098 * gcc.dg/cpp/subframework1.c: Use -Wno-deprecated. From-SVN: r141862
2008-11-14re PR fortran/38033 (Bounds of a pointer/allocatable array not stabilized)Paul Thomas4-4/+40
2008-10-14 Paul Thomas <pault@gcc.gnu.org> PR fortran/38033 * trans-array.c (gfc_trans_create_temp_array): Stabilize the 'to' expression. (gfc_conv_loop_setup): Use the end expression for the loop 'to' if it is available. 2008-10-14 Paul Thomas <pault@gcc.gnu.org> PR fortran/38033 * gfortran.dg/array_section_2.f90: New test. From-SVN: r141861
2008-11-14re PR rtl-optimization/37397 (IRA performance impact on SPEC CPU 2K/2006)Vladimir Makarov5-4/+120
2008-11-14 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/37397 * ira-int.h (struct ira_allocno): New member bad_spill_p. (ALLOCNO_BAD_SPILL_P): New macro. * ira-color.c (push_allocnos_to_stack): Check ALLOCNO_BAD_SPILL_P. * ira-build.c (ira_create_allocno): Initialize ALLOCNO_BAD_SPILL_P. (create_cap_allocno, propagate_allocno_info, remove_unnecessary_allocnos): Set up or update ALLOCNO_BAD_SPILL_P. (update_bad_spill_attribute): New function. (ira_build): Call it. * ira-costs.c (record_reg_classes): Set up ALLOCNO_BAD_SPILL_P. From-SVN: r141860
2008-11-14re PR tree-optimization/38104 (ICE segmentation fault (with -O3 when deref ↵Jakub Jelinek4-4/+34
a NULL pointer in the code??)) PR tree-optimization/38104 * gimplify.c (gimple_regimplify_operands): Add referenced vars before calling mark_symbols_for_renaming, not after it. * g++.dg/tree-ssa/pr38104.C: New test. From-SVN: r141857
2008-11-14pr37514.c: Remove.Kaz Kojima1-65/+0
* gcc.target/sh/pr37514.c: Remove. From-SVN: r141856
2008-11-14sh.h (OPTIMIZATION_OPTIONS): Revert last change.Kaz Kojima3-9/+9
* config/sh/sh.h (OPTIMIZATION_OPTIONS): Revert last change. (OVERRIDE_OPTIONS): Likewise. * gcc.target/sh/pr37514.c: Remove. From-SVN: r141855
2008-11-14re PR testsuite/37517 (gcc.target/i386/quad-sse.c fails with -fPIC)Uros Bizjak2-1/+6
PR testsuite/37517 * gcc.target/i386/quad-sse.c: Tighten scan-assembler-not pattern. From-SVN: r141854
2008-11-14re PR target/36134 (GCC creates suboptimal ASM : usage of ADDA.L where LEA ↵Maxim Kuvyrkov4-12/+51
could be used) 2008-11-14 Maxim Kuvyrkov <maxim@codesourcery.com> Andrew Stubbs <ams@codesourcery.com> Gunnar Von Boehn <gunnar@genesi-usa.com> gcc/ PR target/36134 * config/m68k/m68k.md (addsi3_5200): Add a new alternative preferring the shorter LEA insn over ADD.L where possible. gcc/testsuite/ PR target/36134 * gcc.target/m68k/pr36134.c: New test. Co-Authored-By: Andrew Stubbs <ams@codesourcery.com> Co-Authored-By: Gunnar Von Boehn <gunnar@genesi-usa.com> From-SVN: r141853
2008-11-14Add missing commit part:Uros Bizjak2-2/+5
* gcc.dg/compat/struct-layout-1.h: Do not include <mmintrin.h> and <xmmintrin.h>, define __m64 and __m128 directly. From-SVN: r141852
2008-11-14configure.ac (gcc_cv_libc_provides_ssp): Also consider GNU/Hurd systems...Thomas Schwinge3-0/+16
2008-11-14 Thomas Schwinge <tschwinge@gnu.org> * configure.ac (gcc_cv_libc_provides_ssp): Also consider GNU/Hurd systems, which are assumend to always provide SSP-support in glibc. * configure: Regenerate. From-SVN: r141851
2008-11-14configure.ac (gcc_cv_libc_provides_ssp): Also consider GNU/kFreeBSD, ↵Thomas Schwinge3-2/+8
GNU/kNetBSD systems in the `*-*-linux*' case. 2008-11-14 Thomas Schwinge <tschwinge@gnu.org> * configure.ac (gcc_cv_libc_provides_ssp): Also consider GNU/kFreeBSD, GNU/kNetBSD systems in the `*-*-linux*' case. * configure: Regenerate. From-SVN: r141850
2008-11-14re PR middle-end/36125 (FAIL: 26_numerics/complex/13450.cc: ICE in ↵Jakub Jelinek4-0/+29
verify_gimple_expr, at tree-cfg.c:3962) PR middle-end/36125 * function.c (gimplify_parameters): For callee copies parameters, move TREE_ADDRESSABLE flag from the PARM_DECL to the local copy. * gcc.c-torture/compile/pr36125.c: New test. From-SVN: r141848
2008-11-13re PR c++/37932 (narrowing conversion with -std=c++0x)Jason Merrill5-4/+46
PR c++/37932 * typeck2.c (process_init_constructor_record): Update bitfield handling. (check_narrowing): Update bitfield handling, print source type. From-SVN: r141843
2008-11-14Daily bump.GCC Administrator1-1/+1
From-SVN: r141841
2008-11-14re PR target/28102 (GNU Hurd bootstrap error: 'OPTION_GLIBC' undeclared)Thomas Schwinge4-50/+42
2008-11-13 Thomas Schwinge <tschwinge@gnu.org> PR target/28102 * config.gcc (*-*-gnu*): Move Alpha parts into the `alpha*-*-gnu*', x86 parts into the `i[34567]86-*-linux*' and parts that are independent of the processor architecture into the `*-*-linux*' cases. (*-*-linux*): Consider `linux.opt' only for Linux-based configurations. * config/i386/gnu.h (GLIBC_DYNAMIC_LINKER): Redefine. (TARGET_OS_CPP_BUILTINS, LINK_SPEC): Don't redefine. [TARGET_LIBC_PROVIDES_SSP] (TARGET_THREAD_SSP_OFFSET): Undefine. * config/gnu.h (NO_IMPLICIT_EXTERN_C): Don't redefine. (HURD_TARGET_OS_CPP_BUILTINS): Don't define, but instead... (LINUX_TARGET_OS_CPP_BUILTINS): Redefine. From-SVN: r141838
2008-11-13* testsuite/ChangeLog: Add missing ChangeLog entry.Uros Bizjak1-2/+7
From-SVN: r141837
2008-11-13loongson-muldiv-1.c: New test.Richard Sandiford3-0/+37
gcc/testsuite/ * gcc.target/mips/loongson-muldiv-1.c: New test. * gcc.target/mips/loongson-muldiv-2.c: Likewise. From-SVN: r141836
2008-11-13loongson.md (<u>div<mode>3, [...]): New patterns.Ruan Beihong5-8/+70
gcc/ 2008-11-13 Ruan Beihong <ruanbeihong@gmail.com> * config/mips/loongson.md (<u>div<mode>3, <u>mod<mode>3): New patterns. * config/mips/loongson2ef.md (ls2_imult): Handle imul3nc. (ls2_idiv): Likewise idiv3. (ls2_prefetch): New reservation. * config/mips/mips.h (ISA_HAS_PREFETCH): Add TARGET_LOONGSON_2EF. * config/mips/mips.md (type): Add imul3nc and idiv3. (length): Handle idiv3. (any_mod): New code_iterator. (u): Handle MOD and UMOD. (mul<mode>3): Generate mul<mode>3_mul3_ls2ef on Loongson targets. (prefetch): Handle TARGET_LOONGSON_2EF. From-SVN: r141835
2008-11-13re PR debug/27017 (Debug information for static local class members are not ↵Jakub Jelinek5-8/+230
emitted) PR c++/27017 * dwarf2out.c (prune_unused_types_walk_local_classes): New function. (prune_unused_types_walk): Call it for non-perennial local classes. Set die_mark to 2 if recursing on children. If die_mark is 1 on entry, just set it to 2 and recurse on children, don't walk attributes again. * g++.dg/debug/dwarf2/localclass1.C: New test. * g++.dg/debug/dwarf2/localclass2.C: New test. From-SVN: r141829
2008-11-13c-common.c (warn_about_parentheses): Add missing whitespaceMartin Michlmayr2-2/+7
in warning. From-SVN: r141826
2008-11-13struct-layout-1_generate.c (dg-options): Add -mno-mmx for i?86-*-* and ↵Uros Bizjak4-9/+14
x86_64-*-* targets * gcc.dg/compat/struct-layout-1_generate.c (dg-options): Add -mno-mmx for i?86-*-* and x86_64-*-* targets * g++.dg/compat/struct-layout-1_generate.c (dg-options): Add -fno-common for *-*-darwin* *-*-mingw32* *-*-cygwin* targets. From-SVN: r141825
2008-11-13invoke.texi: Document --fix-cortex-m3.Paul Brook4-24/+74
2008-11-13 Paul Brook <paul@codesourcery.com> gcc/ * doc/invoke.texi: Document --fix-cortex-m3. * config/arm/arm.c (arm_override_options): Set fix_cm3_ldrd if Cortex-M3 cpu is selected. (output_move_double): Avoid overlapping base register and first destination register when fix_cm3_ldrd. * config/arm/arm.opt: Add mfix-cortex-m3-ldrd. From-SVN: r141822
2008-11-13decl.c (gnat_to_gnu_entity): Turn Ada Pure on subprograms back into GCC ↵Olivier Hainque7-31/+45
CONST when... ada/ * gcc-interface/decl.c (gnat_to_gnu_entity) <case E_Function>: Turn Ada Pure on subprograms back into GCC CONST when eh constructs are explicit to the middle-end. Tidy. testsuite/ * gnat.dg/test_raise_from_pure.adb: Adjust to match revised intent. * gnat.dg/wrap_raise_from_pure.ad[bs]: Remove. * gnat.dg/handle_raise_from_pure.adb: New test. From-SVN: r141821
2008-11-13re PR bootstrap/38100 (gcc fails to compile with (undefined symbol) ↵Jakub Jelinek3-39/+9
gimple_check_failed error) PR bootstrap/38100 * gimple.h (gimple_range_check_failed): Remove prototype. * gimple.c (gimple_check_failed): Don't check GCC_VERSION in guarding #if. (gimple_range_check_failed): Removed. From-SVN: r141820
2008-11-13Fix ChangeLog entry:Dodji Seketeli1-3/+3
PR debug/27574 * cgraph.h: New abstract_and_needed member to struct cgraph_node. * cgraphunit.c (cgraph_analyze_functions): Flag abstract functions - which clones are reachable - as "abstract and needed". * cgraph.c (cgraph_release_function_body): If a node is "abstract and needed", do not release its DECL_INITIAL() content that will be needed to emit debug info. From-SVN: r141819
2008-11-13re PR bootstrap/38088 (gcc fails to compile with undefined symbol: ↵Andrew Haley2-1/+7
__LONG_LONG_MAX__ error) PR bootstrap/38088 * mcf.c (CAP_INFINITY): Use HOST_WIDEST_INT maximum, not GCC specific __LONG_LONG_MAX__. From-SVN: r141818
2008-11-13Daily bump.GCC Administrator1-1/+1
From-SVN: r141816
2008-11-12re PR fortran/38094 (gfortran.dg/private_type_4.f90 -O doesn't work)Tobias Burnus2-1/+6
2008-11-12 Tobias Burnus <burnus@net-b.de> PR fortran/38094 * gfortran.dg/private_type_4.f90: Fix dg-error pattern. From-SVN: r141811
2008-11-12re PR c++/36478 (warning not emitted when code expanded from macro)Jakub Jelinek6-72/+22
PR c++/36478 Revert: 2007-05-07 Mike Stump <mrs@apple.com> * doc/invoke.texi (Warning Options): Document that -Wempty-body also checks for and while statements in C++. Revert: 2007-05-07 Mike Stump <mrs@apple.com> * parser.c (check_empty_body): Add. (cp_parser_iteration_statement): Add call to check_empty_body. * g++.old-deja/g++.mike/empty.C: Remove. From-SVN: r141810
2008-11-12re PR debug/27574 (MIssing debug info at -O0 for a local variable in a C++ ↵Dodji Seketeli7-1/+66
constructor) gcc/ChangeLog: 2008-11-12 Dodji Seketeli <dodji@redhat.com> PR debug/27574 * cgraph.h: New abstract_and_needed member to struct cgraph_node. * cgraphunit.c (cgraph_analyze_functions): Flag abstract functions - which clones are reachable - as "abstract and needed". * cgraph.c (cgraph_release_function_body): If a node is "abstract and needed", do not release its DECL_INITIAL() content because that will be needed to emit debug info. gcc/testsuite/ChangeLog: 2008-11-12 Dodji Seketeli <dodji@redhat.com> PR debug/27574 * g++.dg/debug/dwarf2/local-var-in-contructor.C: New test. From-SVN: r141807
2008-11-1220081112-1.c: New test.Eric Botcazou5-0/+54
* gcc.c-torture/execute/20081112-1.c: New test. * gnat.dg/concat1.adb: Likewise. * gnat.dg/concat1_pkg.ad[sb]: New helper. From-SVN: r141806
2008-11-12re PR target/27880 (undefined reference to `_Unwind_GetIPInfo')Steve Ellcey5-183/+50
PR target/27880 * configure.ac (GCC_CHECK_UNWIND_GETIPINFO): Use this macro to set HAVE_GETIPINFO. * aclocal.m4: Include ../config/unwind_ipinfo.m4. * configure: Regenerate. * config.in: Regenerate. From-SVN: r141805
2008-11-12re PR bootstrap/38010 (gcc/config.gcc needs adjustment for darwin10)Jack Howarth2-1/+6
2008-11-12 Jack Howarth <howarth@bromo.med.uc.edu> PR bootstrap/38010 * gcc/config.gcc: Use darwin9.h on darwin10 as well. From-SVN: r141803
2008-11-12revert: gimplify.c (gimplify_expr): Drop TREE_OVERFLOW from INTEGER_CSTs.Jakub Jelinek2-10/+7
Revert: 2008-10-21 Jakub Jelinek <jakub@redhat.com> * gimplify.c (gimplify_expr): Drop TREE_OVERFLOW from INTEGER_CSTs. From-SVN: r141802
2008-11-12re PR c++/38007 (g++ instantiate same operator twice due to bitfield in -O0 ↵Jason Merrill9-63/+61
mode, causing symbol already defined assembler error) PR c++/38007 gcc/cp/ * typeck.c (cp_build_modify_expr): Update bitfield handling. gcc/ * c-common.c (c_common_signed_or_unsigned_type): Remove C++ special casing. gcc/testsuite/ * g++.dg/conversion/bitfield10.C: New test. * g++.dg/warn/pr35635.C (func1): Accept additional warning. * g++.old-deja/g++.mike/enum1.C: Expect warn about assignment. * g++.dg/expr/bitfield9.C: Pass -Wno-overflow. From-SVN: r141800