aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2008-11-03re PR fortran/37821 (gfortran is ignoring #includes with the syntax <file.h>)Tobias Burnus11-22/+91
2008-11-03 Tobias Burnus <burnus@net-b.de> PR fortran/37821 * cpp.c (gfc_cpp_add_include_path): Use BRACKET. * scanner.c (add_path_to_list): Argument to add at head. (gfc_add_include_path): Add new argument. (gfc_add_intrinsic_modules_path) Update call. (load_file): Print filename/line in the error message. * gfortran.h (gfc_add_include_path): Update prototype. * options.c (gfc_post_options,gfc_handle_module_path_options, gfc_handle_option): Update call. * lang-spec.h (F951_OPTIONS): Don't insert include path twice. * arith.c (arith_error): Add -fno-range-error to the message. 2008-11-03 Tobias Burnus <burnus@net-b.de> PR fortran/37821 * gfortran.dg/include_4.f90: New. * gfortran.dg/include_5.f90: New. * gfortran.dg/include_4.inc: New. From-SVN: r141544
2008-11-03re PR fortran/37445 (Host-associated proc not found if same-name generic is ↵Paul Thomas6-10/+167
use-associated) 2008-11-03 Paul Thomas <pault@gcc.gnu.org> PR fortran/37445 * resolve.c (resolve_actual_arglist ): Correct comparison of FL_VARIABLE with e->expr_type. (resolve_call): Check that host association is correct. (resolve_actual_arglist ): Remove return is old_sym is use associated. Only reparse expression if old and new symbols have different types. PR fortran/PR35769 * resolve.c (gfc_resolve_assign_in_forall): Change error to a warning. 2008-11-03 Paul Thomas <pault@gcc.gnu.org> PR fortran/37445 * gfortran.dg/host_assoc_call_3.f90: New test. * gfortran.dg/host_assoc_call_4.f90: New test. * gfortran.dg/host_assoc_function_4.f90: New test. From-SVN: r141543
2008-11-03Daily bump.GCC Administrator1-1/+1
From-SVN: r141541
2008-11-02re PR ada/37977 (Missing ada multilib support for s390x)Andreas Krebbel2-27/+34
2008-11-02 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> PR target/37977 * gcc-interface/Makefile.in: Add multilib handling for s390-linux and s390x-linux. From-SVN: r141537
2008-11-02* id.po: Update.Joseph Myers2-500/+504
From-SVN: r141535
2008-11-02re PR tree-optimization/37542 (PRE doesn't simplify during phi-translation)Richard Guenther6-25/+94
2008-11-02 Richard Guenther <rguenther@suse.de> PR tree-optimization/37542 * tree-ssa-pre.c (fully_constant_expression): Handle more cases. * tree-ssa-sccvn.c (vn_get_expr_for): Fix typo. (vn_nary_op_lookup_stmt): Adjust for unary reference trees. (vn_nary_op_insert_stmt): Likewise. (visit_use): Likewise. * gcc.dg/tree-ssa/ssa-pre-22.c: New testcase. * gcc.c-torture/compile/20081101-1.c: Likewise. From-SVN: r141534
2008-11-02avr.md (UNSPEC_SWAP): Remove constants.Anatoly Sokolov3-16/+217
* config/avr/avr.md (UNSPEC_SWAP): Remove constants. (*swap): Remove. (rotlqi3, *rotlqi3_4, rotlhi3, *rotlhi3_8, rotlsi3, *rotlsi3_8, *rotlsi3_16, *rotlsi3_24): New patterns. (ashlqi3_const4, ashlqi3_const5, ashlqi3_const6, ashlqi3_l_const4, ashlqi3_l_const5, ashlqi3_l_const6, lshrqi3_const4, lshrqi3_const5, lshrqi3_const6, lshrqi3_l_const4, lshrqi3_l_const4, lshrqi3_l_const6 peephole2's): Replace unspec with rotate. * config/avr/avr.c (avr_rtx_costs): Add ROTATE. From-SVN: r141533
2008-11-02re PR tree-optimization/37991 (excessive memory consumption - possible hang)Richard Guenther5-3/+34
2008-11-02 Richard Guenther <rguenther@suse.de> PR tree-optimization/37991 * tree-ssa-sccvn.h (copy_vuses_from_stmt): Remove. * tree-ssa-sccvn.c (copy_vuses_from_stmt): Make static. (set_ssa_val_to): Print if the value changed. (simplify_binary_expression): Strip useless conversions. * gcc.c-torture/compile/pr37991.c: New testcase. From-SVN: r141532
2008-11-02Daily bump.GCC Administrator1-1/+1
From-SVN: r141530
2008-11-01re PR target/37939 (CRIS port: no addi insn)Hans-Peter Nilsson2-0/+16
PR target/37939 * gcc.target/cris/biap.c: New test. From-SVN: r141525
2008-11-01re PR target/37939 (CRIS port: no addi insn)Hans-Peter Nilsson2-0/+21
PR target/37939 * config/cris/cris.c (cris_rtx_costs) <MULT>: Return 0 for an ADDI operand. From-SVN: r141524
2008-11-01re PR fortran/36426 (Endless loop in gfc_apply_interface_mapping_to_expr)Janus Weil5-3/+43
2008-11-01 Janus Weil <janus@gcc.gnu.org> PR fortran/36426 * expr.c (replace_symbol): Replace all symbols which lie in the formal namespace of the interface and copy their attributes. * resolve.c (resolve_symbol): Add charlen to namespace. 2008-11-01 Janus Weil <janus@gcc.gnu.org> PR fortran/36426 * gfortran.dg/proc_decl_19.f90: New. From-SVN: r141522
2008-11-01re PR fortran/19925 (Implied do-loop in an initialization expression is broken)Steven G. Kargl3-0/+27
2008-11-01 Steven G. Kargl <kargls@comcast.net> PR fortran/19925 * gfortran.dg/initialization_20.f90: New test. * gfortran.dg/initialization_21.f90: Ditto. From-SVN: r141519
2008-11-01re PR fortran/19925 (Implied do-loop in an initialization expression is broken)Steven G. Kargl7-17/+61
2008-11-01 Steven G. Kargl <kargls@comcast.net> PR fortran/19925 * trans-array.c (gfc_trans_array_constructor_value): Fix comment. (gfc_conv_array_initializer): Convert internal_error() to gfc_error_now. * array.c: Remove GFC_MAX_AC_EXPAND macro. (gfc_expand_constructor): Use gfc_option.flag_max_array_constructor. * gfortran.h (gfc_option): Add flag_max_array_constructor member. * lang.opt: Add -fmax-array-constructor option. * expr.c (gfc_match_init_expr): Fix error message to mention new option. * invoke.texi: Document new option. * options.c (gfc_init_options): Set default value for new option. (gfc_handle_option): Deal with commandline. From-SVN: r141518
2008-11-01re PR fortran/35681 (wrong result for vector subscripted array expression in ↵Daniel Kraft14-55/+242
MVBITS) 2008-11-01 Daniel Kraft <d@domob.eu> PR fortran/35681 * gfortran.h (struct gfc_code): New field `resolved_isym'. * trans.h (gfc_build_memcpy_call): Made public. * trans-array.h (gfc_trans_create_temp_array): New argument `initial'. * intrinsic.c (gfc_intrinsic_sub_interface): Set resolved_isym. * iresolve.c (create_formal_for_intents): New helper method. (gfc_resolve_mvbits): Put dummy formal arglist on resolved_sym. * resolve.c (resolve_call): Initialize resolved_isym to NULL. * trans-array.c (gfc_trans_allocate_array_storage): New argument `initial' to allow initializing the allocated storage to some initial value copied from another array. (gfc_trans_create_temp_array): Allow initialization of the temporary with a copy of some other array by using the new extension. (gfc_trans_array_constructor): Pass NULL_TREE for initial argument. (gfc_conv_loop_setup): Ditto. * trans-intrinsic.c (gfc_conv_intrinsic_array_transfer): Ditto. * trans-expr.c (gfc_conv_function_call): Ditto. (gfc_build_memcpy_call): Made public. * trans-stmt.c (gfc_conv_elemental_dependencies): Initialize created temporary for INTENT(INOUT) arguments to the value of the mirrored array and clean up the temporary as very last intructions in the created block. * trans.c (gfc_trans_code): For EXEC_CALL, see if we have a MVBITS call and enable elemental dependency checking if we have. 2008-11-01 Daniel Kraft <d@domob.eu> PR fortran/35681 * gfortran.dg/mvbits_4.f90: New test. From-SVN: r141516
2008-11-01re PR fortran/36322 (ICE with PROCEDURE using a complicated interface)Janus Weil10-4/+201
2008-11-01 Janus Weil <janus@gcc.gnu.org> PR fortran/36322 PR fortran/36463 * gfortran.h: New function gfc_expr_replace_symbols. * decl.c (match_procedure_decl): Increase reference count for interface. * expr.c: New functions replace_symbol and gfc_expr_replace_symbols. * resolve.c (resolve_symbol): Correctly copy array spec and char len of PROCEDURE declarations from their interface. * symbol.c (gfc_get_default_type): Enhanced error message. (copy_formal_args): Call copy_formal_args recursively for arguments. * trans-expr.c (gfc_conv_function_call): Bugfix. 2008-11-01 Janus Weil <janus@gcc.gnu.org> PR fortran/36322 PR fortran/36463 * gfortran.dg/proc_decl_17.f90: New. * gfortran.dg/proc_decl_18.f90: New. From-SVN: r141515
2008-11-01re PR middle-end/37976 (ICE in insert_into_preds_of_block)Richard Guenther4-3/+20
2008-11-01 Richard Guenther <rguenther@suse.de> PR middle-end/37976 * builtins.c (fold_builtin_strspn): Return a size_t. (fold_builtin_strcspn): Likewise. * gcc.c-torture/compile/pr37976.c: New testcase. From-SVN: r141514
2008-11-01re PR fortran/37159 (RANDOM_SEED: GET= check array size at compile time ↵Dennis Wassel4-1/+39
and respect -fdefault-integer-*) 2008-11-01 Dennis Wassel <dennis.wassel@gmail.com> PR fortran/37159 * fortran/check.c (gfc_check_random_seed): Check PUT size at compile time. 2008-11-01 Dennis Wassel <dennis.wassel@gmail.com> PR fortran/37159 * intrinsics/random.c: Added comment to adapt check.c, should kiss_size change. Few cosmetic changes to existing comments. 2008-11-01 Dennis Wassel <dennis.wassel@gmail.com> PR fortran/37159 * gfortran.dg/random_seed_1.f90: New testcase. From-SVN: r141511
2008-11-01rs6000.c (rs6000_file_start): Output gnu attribute for struct return convention.Nathan Froyd2-0/+8
* config/rs6000/rs6000.c (rs6000_file_start): Output gnu attribute for struct return convention. From-SVN: r141510
2008-11-01* config/rs6000/crtsavres.asm: Really, really delete.Nathan Froyd2-306/+4
From-SVN: r141509
2008-11-01rs6000.c (no_global_regs_above): Fix precedence problem.Nathan Froyd4-26/+43
* config/rs6000/rs6000.c (no_global_regs_above): Fix precedence problem. (rs6000_emit_prologue): Invert logic. * config/rs6000/rs6000.md (*save_gpregs_<mode>): Use explicit (reg:P 11) instead of match_operand. (*save_fpregs_<mode>): Likewise. (*restore_gpregs_<mode>): Likewise. (*return_and_restore_gpregs_<mode>): Likewise. (*return_and_restore_fpregs_<mode>): Likewise. * config/rs6000/spe.md (*save_gpregs_spe): Use explicit (reg:P 11) insted of match_operand. (*restore_gpregs_spe): Likewise. (*return_and_restore_gpregs_spe): Likewise. From-SVN: r141508
2008-11-01Daily bump.GCC Administrator1-1/+1
From-SVN: r141506
2008-10-31expr.c (struct op): Add location.Manuel López-Ibáñez3-14/+25
2008-10-31 Manuel López-Ibáñez <manu@gcc.gnu.org> libcpp/ * expr.c (struct op): Add location. (_cpp_parse_expr): Propagate locations throught the stack of expressions. (reduce): Likewise. (check_promotion): Use explicit location in errors. testsuite/ * gcc.dg/cpp/Wsignprom.c: Add column numbers. * gcc.dg/cpp/if-mpar.c: Likewise. From-SVN: r141503
2008-10-31re PR c++/37967 (ICE with function returning auto)Jakub Jelinek4-4/+52
PR c++/37967 * decl.c (grokdeclarator): Diagnose auto function decl without late return type and late return type function decl where type is not auto. * g++.dg/cpp0x/auto8.C: New test. From-SVN: r141502
2008-10-31re PR c++/37965 (ICE with invalid auto variable in template)Jakub Jelinek4-4/+37
PR c++/37965 * decl.c (cp_finish_decl): Diagnose type_uses_auto type with no initializer. * g++.dg/cpp0x/auto7.C: New test. From-SVN: r141501
2008-10-31re PR fortran/35840 (ICE for character expression in I/O specifier)Mikael Morin6-22/+70
2008-10-31 Mikael Morin <mikael.morin@tele2.fr> PR fortran/35840 * expr.c (gfc_reduce_init_expr): New function, containing checking code from gfc_match_init_expr, so that checking can be deferred. (gfc_match_init_expr): Use gfc_reduce_init_expr. * io.c (check_io_constraints): Use gfc_reduce_init_expr instead of checking that the expression is a constant. * match.h (gfc_reduce_init_expr): Prototype added. 2008-10-31 Mikael Morin <mikael.morin@tele2.fr> PR fortran/35840 * gfortran.dg/write_check4.f90: New test. From-SVN: r141497
2008-10-31[multiple changes]Mikael Morin4-15/+107
2008-10-31 Mikael Morin <mikael.morin@tele2.fr> PR fortran/35820 * resolve.c (gfc_count_forall_iterators): New function. (gfc_resolve_forall): Use gfc_count_forall_iterators to evaluate the needed memory amount to allocate. Don't forget to free allocated memory. Add an assertion to check for memory leaks. 2008-10-16 Mikael Morin <mikael.morin@tele2.fr> PR fortran/35820 * gfortran.dg/nested_forall_1.f: New test. From-SVN: r141496
2008-10-31* id.po: Update.Joseph Myers2-699/+708
From-SVN: r141492
2008-10-31Fix garbage.Jerry DeLisle1-3/+0
From-SVN: r141490
2008-10-31re PR fortran/37930 (gfortran error and ICE at automatic type conversion ↵Steven G. Kargl2-0/+15
with transfer intrinsic) 2008-10-30 Steven G. Kargl <kargls@comcast.net> PR fortran/37930 * gfortran.dg/int_conv_2.f90: New test. From-SVN: r141489
2008-10-31re PR fortran/37930 (gfortran error and ICE at automatic type conversion ↵Steven G. Kargl4-13/+29
with transfer intrinsic) 2008-10-30 Steven G. Kargl <kargls@comcast.net> PR fortran/37930 * fortran/arith.c (gfc_mpfr_to_mpz): Test for NaN and Inf values. Remove stale comment and kludge code for MPFR 2.0.1 and older. (gfc_real2int): Error on conversion of NaN or Inf. (gfc_complex2int): Ditto. * fortran/arith.h: Update mpfr_to_mpz prototype. * fortran/simplify.c (gfc_simplify_ceiling, gfc_simplify_floor, gfc_simplify_ifix, gfc_simplify_idint, simplify_nint): Update function calls to include locus. From-SVN: r141488
2008-10-31Daily bump.GCC Administrator1-1/+1
From-SVN: r141481
2008-10-30Add -dumpbase to the switches that take argumentsLuis Machado2-1/+6
From-SVN: r141469
2008-10-30s390.c (s390_mark_symbol_ref_as_used): New function.Jakub Jelinek2-0/+22
* config/s390/s390.c (s390_mark_symbol_ref_as_used): New function. (s390_output_pool_entry): Call it through for_each_rtx. From-SVN: r141468
2008-10-30re PR fortran/37903 (wrong-code for complicated vector subscripts)Mikael Morin5-36/+92
2008-10-30 Mikael Morin <mikael.morin@tele2.fr> PR fortran/37903 * trans-array.c (gfc_trans_create_temp_array): If n is less than the temporary dimension, assert that loop->from is zero (reverts to earlier versions). If there is at least one null loop->to[n], it is a callee allocated array so set the size to NULL and break. (gfc_trans_constant_array_constructor): Set the offset to zero. (gfc_trans_array_constructor): Remove loop shifting around the temporary creation. (gfc_conv_loop_setup): Prefer zero-based descriptors if possible. Calculate the translation from loop variables to array indices if an array constructor. 2008-10-30 Mikael Morin <mikael.morin@tele2.fr> PR fortran/37749 * trans-array.c (gfc_trans_create_temp_array): If size is NULL use the array bounds for loop->to. 2008-10-30 Mikael Morin <mikael.morin@tele2.fr> PR fortran/37903 * gfortran.dg/vector_subscript_4.f90: New test. 2008-10-30 Mikael Morin <mikael.morin@tele2.fr> PR fortran/37749 * gfortran.dg/vector_subscript__5.f90: New test. From-SVN: r141467
2008-10-30pr36822.c: Avoid cast to pointer from integer of different size warning with ↵Jakub Jelinek2-1/+4
-m31. * gcc.target/s390/pr36822.c: Avoid cast to pointer from integer of different size warning with -m31. From-SVN: r141462
2008-10-30re PR middle-end/37730 (gcc.c-torture/compile/pr37713.c ICEs at -O3 -msse2)Jakub Jelinek4-2/+33
PR middle-end/37730 * expr.c (store_constructor): For vectors, if target is a MEM, use target's MEM_ALIAS_SET instead of elttype alias set. * gcc.dg/vect/pr37730.c: New test. From-SVN: r141461
2008-10-30Daily bump.GCC Administrator1-1/+1
From-SVN: r141456
2008-10-30re PR debug/36668 (FAIL: g++.dg/other/PR23205.C scan-assembler ↵Jakub Jelinek3-1/+25
.stabs.*foobar:c=i) PR debug/36668 * g++.dg/other/PR23205.C: Allow foobar to be defined as variable. * g++.dg/other/pr23205-2.C: New test. From-SVN: r141453
2008-10-29re PR target/37909 (internal compiler error: in fixup_mova, at ↵Kaz Kojima2-0/+10
config/sh/sh.c:3756) PR target/37909 * config/sh/sh.c (untangle_mova): Return -1 when NEW_MOVA has no address. From-SVN: r141452
2008-10-29* gcc.c-torture/compile/pr37878.c: New test.David Edelsohn2-0/+13
From-SVN: r141451
2008-10-29re PR target/37878 (PPC64 ldu command generated with invalid offset)David Edelsohn2-5/+23
PR target/37878 * config/rs6000/predicates.md (word_offset_memref_operand): Restructure code and look inside auto-inc/dec addresses. From-SVN: r141450
2008-10-29re PR target/32277 (indir-call-prof fails on ia64-linux-gnu)Steve Ellcey2-1/+12
PR target/32277 * libgcov.c ( __gcov_indirect_call_profiler): Check TARGET_VTABLE_USES_DESCRIPTORS. From-SVN: r141442
2008-10-29re PR middle-end/37339 (gcc.dg/pr33645-3.c scan-assembler-not var1_t)Steve Ellcey2-20/+5
PR middle-end/37339 * gcc.dg/pr33545-3.c: Remove. From-SVN: r141440
2008-10-29configure.ac [spu-*-*]: Do not set skipdirs.Stefan Schulze Frielinghaus4-12/+72
ChangeLog: 2008-10-29 Stefan Schulze Frielinghaus <xxschulz@de.ibm.com> * configure.ac [spu-*-*]: Do not set skipdirs. * configure: Re-generate. gcc/ChangeLog: 2008-10-29 Stefan Schulze Frielinghaus <xxschulz@de.ibm.com> * config/spu/spu.h (FRAME_GROWS_DOWNWARD): Define. (INITIAL_FRAME_POINTER_OFFSET): Remove. * config/spu/spu.c (spu_initial_elimination_offset): Calculate new offset if eliminating soft frame pointer. * config/spu/spu.md (stack_protect_set, stack_protect_test) (stack_protect_test_si): Add initial machine description for Stack Smashing Protector From-SVN: r141437
2008-10-29re PR middle-end/11492 (Bogus warning with -Wsign-compare)Manuel López-Ibáñez13-48/+121
2008-10-29 Manuel Lopez-Ibanez <manu@gcc.gnu.org> PR 11492 * c-common.c (min_precision): Move to... * tree.c (tree_int_cst_min_precision): ... to here. Renamed. * tree.h (tree_int_cst_min_precision): Declare. * c-common.h (min_precision): Delete declaration. * fold-const.c (tree_binary_nonnegative_warnv_p): Handle multiplication of non-negative integer constants. * c-decl.c (check_bitfield_type_and_width): Rename min_precision to tree_int_cst_min_precision. (finish_enum): Likewise. cp/ * class.c (check_bitfield_decl): Rename min_precision to tree_int_cst_min_precision. * decl.c (finish_enum): Likewise. testsuite/ * gcc.dg/pr11492.c: New. * g++.dg/warn/pr11492.C: New. From-SVN: r141434
2008-10-29re PR middle-end/36578 (cast to long double not taken into account when ↵Joseph Myers10-5/+186
result stored to a double) PR middle-end/36578 * convert.c (convert_to_real): Do not optimize conversions of binary arithmetic operations between binary and decimal floating-point types. Consider mode of target type in determining decimal type for arithmetic. Unless flag_unsafe_math_optimizations, do not optimize binary conversions where this may change rounding behavior. * real.c (real_can_shorten_arithmetic): New. * real.h (real_can_shorten_arithmetic): Declare. testsuite: * gcc.dg/dfp/convert-bfp-13.c, gcc.dg/dfp/convert-bfp-14.c, gcc.dg/dfp/convert-dfp-fold-2.c, gcc.target/i386/pr36578-1.c, gcc.target/i386/pr36578-2.c: New tests. From-SVN: r141432
2008-10-29bfin-protos.h (WA_05000257, [...]): New.Bernd Schmidt4-37/+111
* config/bfin/bfin-protos.h (WA_05000257, WA_05000283, WA_05000315, ENABLE_WA_05000257, ENABLE_WA_05000283, ENABLE_WA_05000315): New. * config/bfin/bfin.c (bfin_cpus): Add these workaround bits as appropriate. (must_save_p): For some workarounds, interrupts need to clobber a P register. (expand_prologue_reg_save, expand_epilogue_reg_restore): Save LC0 and LC1 for WA_05000257. (expand_interrupt_handler_prologue): Add dummy read of CHIPID for WA_05000283 and WA_05000315. * config/bfin/bfin.md (UNSPEC_VOLATILE_DUMMY): New constant. (movbi): Add alternative to set CC to 1; improve code for setting CC to 0. (dummy_load): New pattern. From-SVN: r141431
2008-10-29re PR middle-end/37870 (ICE in extract_bit_field_1)Jakub Jelinek4-3/+59
PR middle-end/37870 * expmed.c (extract_bit_field_1): If int_mode_for_mode returns BLKmode for non-memory, convert using a wider MODE_INT mode or through memory. * gcc.target/i386/pr37870.c: New test. From-SVN: r141430
2008-10-29re PR c++/26997 (g++ reports misleading error message when the identifier ↵Manuel López-Ibáñez4-10/+130
with error occurs earlier on the same line) 2008-10-29 Manuel López-Ibáñez <manu@gcc.gnu.org> PR c++/26997 cp/ * parser.c (cp_parser_token_starts_cast_expression): New. (cp_parser_cast_expression): Peek the next token to decide whether this could be a parenthesized constructor or is definitely an actual cast. testsuite/ * g++.dg/parse/pr26997.C: New. From-SVN: r141429