aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2006-12-07re PR c++/29980 (ICE using attribute in invalid declaration)Lee Millward6-6/+29
PR c++/29980 * cp_parser_elaborated_type_specifier: Check the return value of check_elaborated_type_specifier. * g++.dg/ext/attrib27.C: New test. * g++.dg/parse/struct-as-enum1.C: Adjust error markers. * g++.dg/parse/typedef5.C: Likewise. From-SVN: r119633
2006-12-07* config/elfos.h (TARGET_ASM_RECORD_GCC_SWITCHES): Set to ↵Nick Clifton2-0/+10
elf_record_gcc_switches. From-SVN: r119630
2006-12-07* treelang/compile/var_defs.tree: Adjust.Mike Stump2-4/+8
From-SVN: r119628
2006-12-07* ru.po: New.Joseph Myers2-0/+28930
From-SVN: r119625
2006-12-07expr.c (string_constant): Account for non-zero lower bound arrays.Andrew MacLeod2-1/+19
2006-12-07 Andrew Macleod <amacleod@redhat.com> * expr.c (string_constant): Account for non-zero lower bound arrays. From-SVN: r119623
2006-12-07builtins.c (expand_builtin_pow): Adjust predicates for pow to cbrt expansion ↵Richard Guenther2-3/+14
to unsafe math and !HONOR_NANS for... 2006-12-07 Richard Guenther <rguenther@suse.de> * builtins.c (expand_builtin_pow): Adjust predicates for pow to cbrt expansion to unsafe math and !HONOR_NANS for negative base. From-SVN: r119622
2006-12-07i386.c (nocona_cost, [...]): Update preffered memcpy/memset codegen.Jan Hubicka2-4/+9
* i386.c (nocona_cost, pentium4_cost): Update preffered memcpy/memset codegen. From-SVN: r119620
2006-12-07tree-vrp.c (compare_values): Short circuit INTEGER_CST...Jan Hubicka2-8/+25
* tree-vrp.c (compare_values): Short circuit INTEGER_CST; use fold_constant_to_binary; tolerate wrong type constants. (value_intersect_p): Do just two tests. From-SVN: r119619
2006-12-07bfin.c (print_operand): New modifier 'N' for constants.Bernd Schmidt3-8/+16
* config/bfin/bfin.c (print_operand): New modifier 'N' for constants. * config/bfin/bfin.md (ssashiftv2hi3, ssashifthi3, lshiftv2hi3, lshifthi3): Use it, and fix the order of alternatives. From-SVN: r119616
2006-12-07common.opt (record-gcc-switches): New command line switch.Nick Clifton8-60/+374
* common.opt (record-gcc-switches): New command line switch. * target.h (print_switch_type): New enum. (print_switch_fn_type): New typedef for a function pointer. (struct gcc_target): Add record_gcc_switches and record_gcc_switches_section fields. * target-def.h (TARGET_ASM_RECORD_GCC_SWITCHES): Provide a default definition. (TARGET_ASM_RECORD_GCC_SWITCHES_SECTION): Provide a default definition. * toplev.c (print_single_switch): Simplify by providing a pointer to function that will format and output the switch appropriately. (print_switch_values): Likewise. (print_to_asm_out_file): New function. (print_to_stderr): New function. (init_asm_output): If flag_record_gcc_switches is set then if the target supports recording the switches then emit them into the assembler output file, otherwise tell the user that the switch is not supported. * varasm.c (eld_record_gcc_switches): New function. Example handler for the record_gcc_switches target hook. * doc/tm.texi (TARGET_ASM_RECORD_GCC_SWITCHES): Document the new target hook. (TARGET_ASM_RECORD_GCC_SWITCHES_SECTION): Likewise. * doc/invoke.texi (-frecord-gcc-switches): Document. From-SVN: r119615
2006-12-07re PR target/29794 (cc1 segfaults with -O3 -msched-control-spec)Maxim Kuvyrkov2-1/+12
2006-12-07 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> PR target/29794 * sched-rgn.c (add_block1): Use correct initializer. From-SVN: r119613
2006-12-07tree-vect-transform.c (vectorizable_call): Fix leftover of TREE_OPERAND to ↵Richard Guenther2-1/+6
GIMPLE_STMT_OPERAND conversion. 2006-12-07 Richard Guenther <rguenther@suse.de> * tree-vect-transform.c (vectorizable_call): Fix leftover of TREE_OPERAND to GIMPLE_STMT_OPERAND conversion. From-SVN: r119612
2006-12-07re PR fortran/29711 ([4.2 only] error_print does not support %N$X)Tobias Burnus2-0/+7
2006-12-06 Tobias Burnus <burnus@net-b.de> PR fortran/29711 * error.c (error_print): Fix handling of printf-style position specifiers of the form "%3$d" From-SVN: r119609
2006-12-07Daily bump.GCC Administrator1-1/+1
From-SVN: r119606
2006-12-06re PR c++/29730 (ICE on invalid declaration of template member)Mark Mitchell5-6/+35
PR c++/29730 * parser.c (cp_parser_init_declarator): Reject initialization of functions. PR c++/29730 * g++.dg/template/crash64.C: New test. * g++.dg/parse/crash27.C: Adjust error markers. From-SVN: r119601
2006-12-06pa.c (hppa_gimplify_va_arg_expr): Build MODIFY_EXPR not GIMPLE_MODIFY_STMT.Aldy Hernandez2-1/+7
PR/30079 * config/pa/pa.c (hppa_gimplify_va_arg_expr): Build MODIFY_EXPR not GIMPLE_MODIFY_STMT. From-SVN: r119600
2006-12-06re PR libfortran/30009 ([4.1 only] Unformatted reads exceeding storage units ↵Thomas Koenig4-7/+69
gives EOF instead of ERR) 2006-12-06 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/30009 PR libfortran/30056 * gfortran.dg/read_eof_4.f90: Add tests. * gfortran.dg/readwrite_unf_direct_eor_1.f90: New test. * gfortran.dg/unf_read_corrupted_1.f90: New test. 2006-12-06 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/30009 PR libfortran/30056 * libgfortran.h: Add ERROR_CORRUPT_FILE to error_codes. * runtime/error.c (translate_error): Add handling for ERROR_CORRUPT_FILE. * io/transfer.c (read_block_direct): Add comment about EOR for stream files. Remove test for no bytes left for direct access files. Generate an ERROR_SHORT_RECORD if the read was short. For unformatted sequential files: Check endfile condition. Remove test for no bytes left. End of file here means that the file structure has been corrupted. Pre-position the file for the next record in case of error. (write_buf): Whitespace fix. Subtract the number of bytes written from bytes_left. From-SVN: r119592
2006-12-06tree-vrp.c (operand_less_p): New.Jan Hubicka2-13/+49
* tree-vrp.c (operand_less_p): New. (compare_values, value_inside_range): Rewrite in terms of operand_less_p. From-SVN: r119583
2006-12-06i386.md (DIRFLAG_REG): Remove constant.Uros Bizjak8-141/+108
* config/i386/i386.md (DIRFLAG_REG): Remove constant. (type): Remove cld. (length_immediate): Do not depend on cld type attribute. (length_address): Ditto. (modrm): Ditto. (memory): Ditto. (cld): Remove insn pattern. (strmov_singleop): Do not use DIRFLAG_REG. (*strmovdi_rex_1): Ditto. (*strmovsi_1): Ditto. (*strmovsi_rex_1): Ditto. (*strmovhi_1): Ditto. (*strmovhi_rex_1): Ditto. (*strmovqi_1): Ditto. (*strmovqi_rex_1): Ditto. (rep_mov): Ditto. (*rep_movdi_rex64): Ditto. (*rep_movsi): Ditto. (*rep_movsi_rex64): Ditto. (*rep_movqi): Ditto. (*rep_movqi_rex64): Ditto. (strset_singleop): Ditto. (*strsetdi_rex_1): Ditto. (*strsetsi_1): Ditto. (*strsetsi_rex_1): Ditto. (*strsethi_1): Ditto. (*strsethi_rex_1): Ditto. (*strsetqi_1): Ditto. (*strsetqi_rex_1): Ditto. (rep_stos): Ditto. (*rep_stosdi_rex64): Ditto. (*rep_stossi): Ditto. (*rep_stossi_rex64): Ditto. (*rep_stosqi): Ditto. (*rep_stosqi_rex64): Ditto. (cmpstrnsi): Do not generate cld insn. (cmpstrnqi_nz_1): Do not use DIRFLAG_REG. (*cmpstrnqi_nz_1): Ditto. (*cmpstrnqi_nz_rex_1): Ditto. (cmpstrnqi_1): Ditto. (*cmpstrnqi_1): Ditto. (*cmpstrnqi_rex_1): Ditto. (strlenqi_1): Ditto. (*strlenqi_1): Ditto. (*strlenqi_rex_1): Ditto. * config/i386/geode.md (shift): Do not depend on cld type attribute. * config/i386/pentium.md (pent_cld): Remove insn reservation. * config/i386/athlon.md (athlon_decode): Do not depend on cld type attribute. * config/i386/ppro.md (ppro_cld): Remove insn reservation. * config/i386/k6.md (k6_alux_only): Do not depend on cld type attribute. (k6_alux_only_load): Ditto. (k6_alux_only_store): Ditto. * config/i386/i386.c (ix86_expand_movmem): Remove cld_done boolean. Do not emit cld instruction. (ix86_expand_setmem): Ditto. (ix86_expand_strlen): Do not emit cld instruction. From-SVN: r119581
2006-12-06bfin.c (bfin_rtx_costs): Add a number of new cases, tweak old ones.Bernd Schmidt2-15/+131
* config/bfin/bfin.c (bfin_rtx_costs): Add a number of new cases, tweak old ones. From-SVN: r119579
2006-12-06gdbinit.in: Set complaints to 0.Diego Novillo2-4/+5
* gdbinit.in: Set complaints to 0. From-SVN: r119578
2006-12-06ChangeLog: Use tabs instead of spaces.Uros Bizjak1-216/+216
* ChangeLog: Use tabs instead of spaces. From-SVN: r119576
2006-12-06re PR c++/29729 (ICE with template class in template function)Mark Mitchell5-7/+32
PR c++/29729 * decl2.c (check_member_template): Move check for member templates in local classes to ... * parser.c (cp_parser_template_declaration_after_export): ... here. PR c++/29729 * g++.dg/template/crash63.C: New test. From-SVN: r119575
2006-12-06statistics.h (ALONE_PASS_MEM_STAT, [...]): New macros.Jan Hubicka5-9/+236
* statistics.h (ALONE_PASS_MEM_STAT, ALONE_MEM_STAT_INFO, ALONE_MEM_STAT_DECL): New macros. * bitmap.h: Include statistics.h (struct bitmap_head_def): Add variant with pointer to bitmap descriptor. (bitmap_initialize_stat): Rename from bitmap_initialize; add statistics. (bitmap_obstack_alloc_stat, bitmap_gc_alloc_stat): Declare. * bitmap.c: Include hashtab.h (bitmap_descriptor): New. (bitmap_hash): New static variable (hash_descriptor, eq_descriptor, bitmap_descriptor, register_overhead): New static functions. (bitmap_register): New. (bitmap_element_free, bitmap_element_allocate, bitmap_elt_clear_from, bitmap_obstack_release): Do accounting. (bitmap_obstack_alloc_stat): Rename from bitmap_obstack_alloc ; do accounting. (bitmap_gc_alloc_stat): Likewise. (bitmap_obstack_free, bitmap_find_bit): Do statictics. (print_statistics, dump_bitmap_statistics): New functions. * toplev.c (finalize): Dump bitmap statistics. From-SVN: r119573
2006-12-06reload1.c (delete_output_reload): Count occurrences in CALL_INSN_FUNCTION_USAGE.Bernd Schmidt3-0/+16
* reload1.c (delete_output_reload): Count occurrences in CALL_INSN_FUNCTION_USAGE. * rtlanal.c (count_occurrences): Handle EXPR_LIST nodes without crashing at the end of the list. From-SVN: r119571
2006-12-06Daily bump.GCC Administrator1-1/+1
From-SVN: r119569
2006-12-05Missed commitDaniel Berlin1-2/+0
From-SVN: r119564
2006-12-05tree-ssa-structalias.c (set_used_smts): Re-fix pr29156.Daniel Berlin2-14/+16
2006-12-05 Daniel Berlin <dberlin@dberlin.org> * tree-ssa-structalias.c (set_used_smts): Re-fix pr29156. Optimize to avoid marking more SMT's as used when they aren't. From-SVN: r119562
2006-12-05i386.c (x86_output_aligned_bss): Move out of COMMON_ASM_OP ifdef.Eric Christopher2-2/+6
2006-12-05 Eric Christopher <echristo@apple.com> * config/i386/i386.c (x86_output_aligned_bss): Move out of COMMON_ASM_OP ifdef. From-SVN: r119560
2006-12-05re PR c++/29728 (ICE on invalid initializer in template function)Mark Mitchell4-31/+82
PR c++/29728 * decl.c (check_array_designated_initializer): New function. (maybe_deduce_size_from_array_init): Use it. (reshape_init_array): Likewise. PR c++/29728 * g++.dg/template/crash62.C: New test. From-SVN: r119558
2006-12-05re PR fortran/30003 ([4.1 only] Expressions with side effects in array ↵Paul Thomas6-5/+90
references) 2006-12-05 Paul Thomas <pault@gcc.gnu.org> PR fortran/30003 * trans-array.c (gfc_trans_create_temp_array): Set the section ends to zero. (gfc_conv_array_transpose): Likewise. (gfc_conv_section_startstride): Declare an expression for end, set it from a the array reference and evaluate it for the info structure. Zero the ends in the ss structure and set end, used in the bounds check, from the info structure. trans.h: Add and end array to the gfc_ss_info structure. 2006-12-05 Paul Thomas <pault@gcc.gnu.org> PR fortran/30003 * gfortran.dg/allocatable_function_1.f90: Increase the number of expected calls of free to 10; the lhs section reference is now evaluated so there is another call to bar. Change the comment appropriately. * gfortran.dg/array_section_1.f90: New test. From-SVN: r119556
2006-12-05darwin.h (DARWIN_EXTRA_SPECS): New.Eric Christopher5-3/+29
2006-12-05 Eric Christopher <echristo@apple.com> * config/darwin.h (DARWIN_EXTRA_SPECS): New. (STARTFILE_SPEC): Use. (DARWIN_DYLIB1_SPEC): New. (DARWIN_CRT1_SPEC): New. * config/i386/darwin64.h (SUBTARGET_EXTRA_SPECS): Use DARWIN_EXTRA_SPECS. * config/i386/darwin.h: Ditto. * config/rs6000/darwin.h: Ditto. From-SVN: r119555
2006-12-05re PR fortran/29912 ([4.1 only] Gfortran: string array functions behaving ↵Paul Thomas4-0/+60
incorrectly...) 2006-12-05 Paul Thomas <pault@gcc.gnu.org> PR fortran/29912 * trans-expr.c (gfc_trans_arrayfunc_assign): Return NULL if the lhs and rhs character lengths are not constant and equal for character array valued functions. 2006-12-05 Paul Thomas <pault@gcc.gnu.org> PR fortran/29912 * gfortran.dg/char_result_12.f90: New test. From-SVN: r119554
2006-12-05Commit missing changelog entryDaniel Berlin1-0/+24
From-SVN: r119553
2006-12-05* doc/include/texinfo.tex: Update to version 2006-11-08.17.Brooks Moses2-285/+572
From-SVN: r119551
2006-12-05tree-vrp.c (pass_vrp): Remove PROP_smt_usage.Daniel Berlin12-174/+9
2006-12-05 Daniel Berlin <dberlin@dberlin.org> * tree-vrp.c (pass_vrp): Remove PROP_smt_usage. * tree-complex.c (pass_lower_complex): Ditto. * tree-ssa-ccp.c (pass_ccp): Ditto. (pass_store_ccp): Ditto. * tree-ssa-dom.c (pass_dominator): Ditto. (pass_phi_only_cprop): Ditto. * tree-sra.c (pass_sra): Ditto. * tree-ssa-forwprop.c (pass_forwprop): Ditto. * tree-flow.h (updating_used_alone): Remove. (updating_used_alone): Ditto. * tree-ssa-alias.c (updating_used_alone): Remove variable. (lhs_may_store_to): Remove function. (recalculate_used_alone): Ditto. (compute_may_aliases): Remove used_alone calculation. * tree.h (struct tree_memory_tag): Remove is_used_alone and old_used_alone. Remove SMT_USED_ALONE and SMT_OLD_USED_ALONE. * tree-pass.h (PROP_smt_usage): Remove. * passes.c (execute_todo): Remove used alone recalculation. (execute_one_pass): Ditto. * tree-ssa-operands.c (add_virtual_operand): Remove used_alone stuff. From-SVN: r119550
2006-12-05re PR tree-optimization/14784 ([Tree-ssa] alias analysis deficiency)Zdenek Dvorak2-5/+5
PR tree-optimization/14784 * tree-ssa-operands.c (access_can_touch_variable): Unrevert the fix. From-SVN: r119549
2006-12-05Revert accidental change.Aldy Hernandez1-13/+0
From-SVN: r119547
2006-12-05Merge gimple-tuples-branch into mainline.Aldy Hernandez114-1381/+2750
From-SVN: r119546
2006-12-05config.host: Remove extra blank line.H.J. Lu2-3/+6
2006-12-05 H.J. Lu <hongjiu.lu@intel.com> * config.host: Remove extra blank line. From-SVN: r119544
2006-12-05config.host (i[34567]86-*-*, x86-64-*-*): Use driver-i386.o only if target ↵Bernd Schmidt2-2/+13
is also an x86 variant. * config.host (i[34567]86-*-*, x86-64-*-*): Use driver-i386.o only if target is also an x86 variant. From-SVN: r119543
2006-12-05i386.c (ix86_builtin_vectorized_function): Declare.Richard Guenther5-2/+60
2006-12-05 Richard Guenther <rguenther@suse.de> * config/i386/i386.c (ix86_builtin_vectorized_function): Declare. (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION): Define. (ix86_builtin_vectorized_function): New function to vectorize sqrt. * gcc.dg/vect/vect.exp: Add support for -fno-math-errno tests. * gcc.dg/vect/vect-pow-2.c: Rename to ... * gcc.dg/vect/no-math-errno-vect-pow-1.c: ... this. Require vect_double, xfail for spu*-*-*. From-SVN: r119542
2006-12-05bfin.c (output_file_start): Fix comment which referred to ia64_override_options.Bernd Schmidt2-1/+6
* config/bfin/bfin.c (output_file_start): Fix comment which referred to ia64_override_options. From-SVN: r119536
2006-12-05cfgexpand.c (expand_one_var): Guard expand_one_stack_var by really_expand.Jan Hubicka2-1/+7
* cfgexpand.c (expand_one_var): Guard expand_one_stack_var by really_expand. From-SVN: r119535
2006-12-05rtlanal.c (note_uses): Deal with SEQUENCEs.Bernd Schmidt5-210/+534
* rtlanal.c (note_uses): Deal with SEQUENCEs. * config/bfin/bfin.c: Include "timevar.h". (bfin_flag_schedule_insns2, splitting_for_sched, bfin_flag_var_tracking): New variables. (print_operand): Handle '%!'. (override_options): Disable normal sched2 pass, instead set bfin_flag_schedule_insns2 for reorg to handle it. (output_file_start): Likewise for var-tracking. (bfin_optimize_loop): Take some care not to stumble over SEQUENCEs. (gen_one_bundle, bfin_gen_bundles, type_for_anomaly, trapping_loads_p): New functions. (bfin_reorg): Do second scheduling pass here, and call bfin_gen_bundles. Use type_for_anomaly and trapping_loads_p instead of examining insns directly. If bfin_flag_var_tracking, call var-tracking pass when done with everything else. * config/bfin/bfin.h (PRINT_OPERAND_PUNCT_VALID_P): '!' is valid. * config/bfin/bfin.md (UNSPEC_32BIT): New constant. (movsi_insn32): New pattern, with two new splits to create it before the final scheduling pass. (neghi2): Not a dsp32 insn, rather alu0. (movbi, pushsi_insn, popsi_insn, movsi_insn, movv2hi_insn, movhi_insn, movqi_insn, movsf_insn, movsi_insv, extendhisi2, zero_extendhisi2, extendqihi2, extendqisi2, zero_extendqihi2, zero_extendqisi2, mulhisi3, umulhisi3, ssadsi3, sssubsi3, smaxsi3, sminsi3, abssi2, ssnegsi2, signbitssi2, smaxhi3, sminhi3, abshi2, ssneghi2, signbitshi2, movhi_low2high, movhi_high2high, movhi_low2low, movhi_high2low, movhiv2hi_low, movhiv2hi_high, composev2hi, packv2hi, movv2hi_hi, ssaddhi3, sssubhi3, addv2hi3, ssaddv2hi3, subv2hi3, sssubv2hi3, addsubv2hi3, subaddv2hi3, ssaddsubv2hi3, sssubaddv2hi3, sublohiv2hi3, subhilov2hi3, sssublohiv2hi3, sssubhilov2hi3, addlohiv2hi3, addhilov2hi3, ssaddlohiv2hi3, ssaddhilov2hi3, sminv2hi3, smaxv2hi3, flag_mulhi, flag_mulhisi, flag_mulhisi_parts, flag_machi, flag_machi_acconly, flag_macinithi, flag_macinit1hi, mulv2hi3, flag_mulv2hi, flag_mulv2hi_parts, flag_macv2hi_parts, flag_macv2hi_parts_acconly, flag_macinitv2hi_parts, flag_macinit1v2hi_parts, mulhisi_ll, mulhisi_lh, mulhisi_hl, mulhisi_hh, ssnegv2hi2, absv2hi2, ssashiftv2hi3, ssashifthi3, lshiftv2hi3, lshifthi3): Use '%!' to terminate all dsp32/load/store variants instead of ';'. (ror_one, rol_one): Likewise. Make them dsp32 insns. (ashlsi3_insn, ashrsi3, lshrsi3): Add dsp32 variants. (align8, align16, align24): Now named patterns; also using '%!'. (mnop): New insn. From-SVN: r119534
2006-12-05darwin.h, [...]: Fix comment typos.Kazu Hirata6-6/+11
* config/i386/darwin.h, config/spu/spu.c, tree-ssa-live.c, tree-vect-generic.c, tree-vect-transform.c: Fix comment typos. From-SVN: r119533
2006-12-05spu-protos.c (spu_split_address): Add.Trevor Smigiel5-36/+68
* config/spu/spu-protos.c (spu_split_address): Add. * config/spu/spu.c (spu_split_address): Add. (print_operand): Handle HIGH. (spu_legitimate_address): Don't test for aligned CONST. (spu_expand_mov): Don't split addresses here. * config/spu/constraints.md (A): Don't test legitimate_const. * config/spu/spu.md: Add split of movsi patterns for PIC mode. (ceq_di): Use correct predicates. From-SVN: r119532
2006-12-05darwin.h: Update copyright notice.Eric Christopher3-10/+15
2006-12-04 Eric Christopher <echristo@apple.com> * config/darwin.h: Update copyright notice. * config/i386/darwin.h: Ditto. From-SVN: r119531
2006-12-05tree-ssa-alias.c (compute_flow_sensitive_aliasing): Call set_used_smts.Daniel Berlin4-13/+25
2006-12-04 Daniel Berlin <dberlin@dberlin.org> * tree-ssa-alias.c (compute_flow_sensitive_aliasing): Call set_used_smts. * tree-ssa-structalias.c (set_used_smts): Export. (find_what_p_points_to): Don't call set_used_smts here. * tree-ssa-structalias.h (set_used_smts): Add prototype. From-SVN: r119528
2006-12-05Daily bump.GCC Administrator1-1/+1
From-SVN: r119524