aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2005-11-13fget.c: New file.Francois-Xavier Coudert18-3/+982
* intrinsics/fget.c: New file. * intrinsics/ftell.c: New file. * io/unix.c (stream_offset): New function. * io/io.h: Add prototype for stream_offset. * Makefile.am: Add intrinsics/fget.c and intrinsics/ftell.c. * Makefile.in: Regenerate. * intrinsic.c (add_functions): Add COMPLEX, FTELL, FGETC, FGET, FPUTC, FPUT, AND, XOR and OR intrinsic functions. (add_subroutines): Add FGETC, FGET, FPUTC, FPUT and FTELL intrinsic subroutines. * gfortran.h: Add GFC_ISYM_AND, GFC_ISYM_COMPLEX, GFC_ISYM_FGET, GFC_ISYM_FGETC, GFC_ISYM_FPUT, GFC_ISYM_FPUTC, GFC_ISYM_FTELL, GFC_ISYM_OR, GFC_ISYM_XOR. * iresolve.c (gfc_resolve_and, gfc_resolve_complex, gfc_resolve_or, gfc_resolve_fgetc, gfc_resolve_fget, gfc_resolve_fputc, gfc_resolve_fput, gfc_resolve_ftell, gfc_resolve_xor, gfc_resolve_fgetc_sub, gfc_resolve_fget_sub, gfc_resolve_fputc_sub, gfc_resolve_fput_sub, gfc_resolve_ftell_sub): New functions. * check.c (gfc_check_complex, gfc_check_fgetputc_sub, gfc_check_fgetputc, gfc_check_fgetput_sub, gfc_check_fgetput, gfc_check_ftell, gfc_check_ftell_sub, gfc_check_and): New functions. * simplify.c (gfc_simplify_and, gfc_simplify_complex, gfc_simplify_or, gfc_simplify_xor): New functions. * trans-intrinsic.c (gfc_conv_intrinsic_function): Add cases for GFC_ISYM_AND, GFC_ISYM_COMPLEX, GFC_ISYM_FGET, GFC_ISYM_FGETC, GFC_ISYM_FPUT, GFC_ISYM_FPUTC, GFC_ISYM_FTELL, GFC_ISYM_OR and GFC_ISYM_XOR. * intrinsic.h: Add prototypes for all functions added to iresolve.c, simplify.c and check.c. * gfortran.dg/complex_intrinsic_1.f90: New test. * gfortran.dg/complex_intrinsic_2.f90: New test. * gfortran.dg/fgetc_1.f90: New test. * gfortran.dg/fgetc_2.f90: New test. * gfortran.dg/fgetc_3.f90: New test. * gfortran.dg/ftell_1.f90: New test. * gfortran.dg/ftell_2.f90: New test. * gfortran.dg/gnu_logical_1.F: New test. * gfortran.dg/gnu_logical_2.f90: New test. From-SVN: r106859
2005-11-13ipa-prop.c (ipa_callsite_compute_param ): Removed obsolete type checking.Razya Ladelsky2-41/+15
2005-11-13 Razya Ladelsky <razya@il.ibm.com> * ipa-prop.c (ipa_callsite_compute_param ): Removed obsolete type checking. From-SVN: r106858
2005-11-13re PR c++/22489 (ICE in dwarf2out_finish with using namespace in a local ↵Jason Merrill3-5/+52
class and compiler built constructors) PR c++/22489 * dwarf2out.c (gen_subprogram_die): Force a declaration die for lazily declared methods. (force_decl_die): Stop if forcing out the context already make a DIE for the decl. (force_type_die): Likewise. From-SVN: r106853
2005-11-12re PR middle-end/24820 (SEGV in integer_valued_real_p at gcc/builtins.c:6711)Andrew Pinski4-0/+24
2005-11-13 Andrew Pinski <pinskia@physics.uc.edu> PR middle-end/24820 * testsuite/gcc.dg/pr24820.c: New test. 2005-11-13 Andrew Pinski <pinskia@physics.uc.edu> PR middle-end/24820 * builtins.c (integer_valued_real_p): Add break in REAL_CST having TREE_OVERFLOW set. From-SVN: r106851
2005-11-13Daily bump.GCC Administrator1-1/+1
From-SVN: r106847
2005-11-12tree-ssa-loop-ivopts.c (get_address_cost): Prevent splitting addressing ↵Zdenek Dvorak5-3/+21
modes during calculation of costs. * tree-ssa-loop-ivopts.c (get_address_cost): Prevent splitting addressing modes during calculation of costs. * testsuite/gcc.dg/tree-ssa/loop-2.c: Fix outcome. * testsuite/gcc.dg/tree-ssa/loop-3.c: Change type of loop control variable. From-SVN: r106842
2005-11-12function.c (assign_stack_local_1): Restrict sanity check on frame size ↵Eric Botcazou2-1/+8
overflow to 32-bit and above platforms. * function.c (assign_stack_local_1): Restrict sanity check on frame size overflow to 32-bit and above platforms. From-SVN: r106840
2005-11-12nested-func-4.c: Add dg-options for hppa*-*-hpux*.John David Anglin2-0/+6
testsuite/24614 * gcc.dg/nested-func-4.c: Add dg-options for hppa*-*-hpux*. From-SVN: r106837
2005-11-12cris.exp: New file.Hans-Peter Nilsson4-0/+84
* gcc.target/cris/cris.exp: New file. * gcc.target/cris/rld-legit1.c: New test. * gcc.target/cris/rld-legit2.c: New test. From-SVN: r106836
2005-11-12cris.h (LEGITIMIZE_RELOAD_ADDRESS): Define.Hans-Peter Nilsson4-1/+95
* config/cris/cris.h (LEGITIMIZE_RELOAD_ADDRESS): Define. * config/cris/cris.c: Include reload.h. (cris_initial_elimination_offset): New function. * config/cris/cris-protos.h: (cris_initial_elimination_offset): Prototype. From-SVN: r106835
2005-11-12re PR c++/24780 (ICE set_mem_attributes_minus_bitpos)Jakub Jelinek4-2/+30
PR c++/24780 * typeck.c (complete_type): Set TYPE_NEEDS_CONSTRUCTING and TYPE_HAS_NONTRIVIAL_DESTRUCTOR flags for all variants of array type. * g++.dg/opt/pr24780.C: New test. From-SVN: r106833
2005-11-12re PR c++/24761 (templates and inline-asm and "+")Jakub Jelinek4-3/+61
PR c++/24761 * pt.c (tsubst_copy_asm_operands): New function. (tsubst_expr) <case ASM_EXPR>: Use it. * g++.dg/template/asm1.C: New test. From-SVN: r106831
2005-11-12gcse.c (find_rtx_in_ldst): Handle NULL pre_ldst_table.Richard Guenther2-0/+6
2005-11-12 Richard Guenther <rguenther@suse.de> * gcse.c (find_rtx_in_ldst): Handle NULL pre_ldst_table. From-SVN: r106829
2005-11-12re PR libfortran/24787 ([libfortran] SCAN is broken)Steven G. Kargl2-0/+36
PR libfortran/24787 * intrinsics/string_intrinsics.c (string_scan): Off by one; Fix typos in nearby comment. * gfortran.dg/scan_1.f90: New test. From-SVN: r106828
2005-11-12expr.c (expand_expr_real_1): <MAX_EXPR, MIN_EXPR>: Canonicalize to compare ↵Jan Hubicka5-54/+105
against 0 when possible. * expr.c (expand_expr_real_1): <MAX_EXPR, MIN_EXPR>: Canonicalize to compare against 0 when possible. * gcc.target/i386/minmax-1.c: New. * gcc.target/i386/minmax-2.c: New. From-SVN: r106827
2005-11-12bfin.h (REGISTER_NAMES, [...]): Rearrange I/B/L registers.Jie Zhang3-24/+34
* config/bfin/bfin.h (REGISTER_NAMES, SHORT_REGISTER_NAMES, HIGH_REGISTER_NAMES, FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER, enum reg_class): Rearrange I/B/L registers. * config/bfin/bfin.md: Redefine REG_ constants for I/B/L registers in the new order. From-SVN: r106824
2005-11-12pr24445.c: Fix for 64-bit targets.Kaz Kojima2-1/+5
* gcc.dg/pr24445.c: Fix for 64-bit targets. From-SVN: r106822
2005-11-12recog.c (constrain_operands): For a match, require that a non-register ↵Hans-Peter Nilsson2-7/+18
matches general_operand when strict >= 0. * recog.c (constrain_operands) <case 'g'>: For a match, require that a non-register matches general_operand when strict >= 0. From-SVN: r106821
2005-11-12Daily bump.GCC Administrator1-1/+1
From-SVN: r106815
2005-11-12loop-invariant.c (move_loop_invariants): Fix a thinko in the previous checkin.Steven Bosscher2-3/+21
* loop-invariant.c (move_loop_invariants): Fix a thinko in the previous checkin. From-SVN: r106809
2005-11-11gcc/Daniel Jacobowitz5-2/+151
* tree-ssa-dse.c (struct address_walk_data, memory_ssa_name_same) (memory_address_same): New. (dse_optimize_stmt): Call memory_address_same. gcc/testsuite/ * gcc.c-torture/execute/20051110-1.c, gcc.c-torture/execute/20051110-2.c: New tests. From-SVN: r106807
2005-11-11re PR middle-end/24750 (global-alloc (reload) trips over own confusion for ↵Hans-Peter Nilsson3-0/+98
unexpected addressing modes) PR middle-end/24750 * gcc.dg/torture/pr24750-1.c, gcc.target/cris/torture/pr24750-2.c: New tests. From-SVN: r106806
2005-11-11re PR middle-end/24750 (global-alloc (reload) trips over own confusion for ↵Hans-Peter Nilsson2-0/+24
unexpected addressing modes) PR middle-end/24750 * reload.c (find_reloads_address_1) <case TRUNCATE, SIGN_EXTEND, ZERO_EXTEND>: New cases. From-SVN: r106804
2005-11-11* longlong.h (__clz_tab): Always provide.Daniel Jacobowitz2-1/+6
From-SVN: r106803
2005-11-11target-libpath.exp (get_shlib_extension): New proc.Andreas Tobler6-34/+117
2005-11-11 Andreas Tobler <a.tobler@schweiz.ch> * lib/target-libpath.exp (get_shlib_extension): New proc. * lib/g++.exp (g++_link_flags): Add flags in case of shared only build. * lib/gfortran.exp (gfortran_link_flags): Likewise. * lib/objc.exp (objc_target_compile): Likewise. * lib/obj-c++.exp (obj-c++_link_flags): Likewise. Fix multilib libgcc detection. From-SVN: r106802
2005-11-11static_linking_1.f: Fix static_libgfortran processing.Andreas Tobler3-3/+11
2005-11-11 Andreas Tobler <a.tobler@schweiz.ch> * gfortran.dg/static_linking_1.f: Fix static_libgfortran processing. * lib/target-supports.exp (check_effective_target_static_libgfortran): Add -static to additional_flags and pass it to target_compile. From-SVN: r106800
2005-11-11Update ChangeLog.Jerry DeLisle1-0/+17
2005-11-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> Update ChangeLog. Forgot to commit From-SVN: r106799
2005-11-11re PR libfortran/24719 (Nonadvancing read does not read more than 1 line)Jerry DeLisle5-0/+89
2005-11-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libgfortran/24719 gfortran.dg/read_noadvance.f90: New test. PR libgfortran/24699 gfortran.dg/fmt_t_2.f90: New test. PR libgfortran/24785 gfortran.dg/read_x_eor.f90: New test. PR libgfortran/24584 gfortran.dg/namelist_empty.f90: Rename test. PR libgfortran/24489 gfortran/read_eor.f90: Rename test. From-SVN: r106798
2005-11-11re PR target/24265 (ICE: in extract_insn, at recog.c:2084 with -O -fgcse ↵Steven Bosscher2-6/+25
-fmove-loop-invariants -mtune=pentiumpro) PR 24265 * loop-invariant.c (may_assign_reg_p): Make sure a hard register can be assigned to. (find_invariant_insn): Do the cheapest check, may_assign_reg_p, before check_maybe_invariant. (move_invariant_reg): Use gen_move_insn instead of replacing SET_DEST with the temporary for the invariant. (move_loop_invariants): If checking is enabled, do internal consistency checks after completing the pass. From-SVN: r106795
2005-11-11re PR c/24644 (gcc-4.1 compiled ppc64 kernels do not boot)David Edelsohn5-3/+35
PR 24644 * common.opt (Wvolatile-register-var): New. * varasm.c (make_decl_rtl): Only emit warning when option specified. Clarify warning message. * doc/invoke.texi (Wvolatile-register-var): Document new option. * doc/md.texi (copysign): Document standard named pattern. From-SVN: r106791
2005-11-11bfin.c (bfin_expand_strmov): Correctly move the trailing bytes when align is 2.Jie Zhang3-7/+14
* config/bfin/bfin.c (bfin_expand_strmov): Correctly move the trailing bytes when align is 2. * config/bfin/bfin.md (rep_movsi, rep_movhi): Make LSETUP be followed by the first instruction of the loop. From-SVN: r106790
2005-11-11fixJason Merrill1-0/+1
From-SVN: r106788
2005-11-11re PR c++/24686 (ICE when building a variation of NMSTL)Jason Merrill1-0/+13
PR c++/24686 * gimplify.c (gimplify_cleanup_point_expr): Also save and restore the cleanup list. From-SVN: r106787
2005-11-11re PR c++/24686 (ICE when building a variation of NMSTL)Jason Merrill2-1/+11
PR c++/24686 * gimplify.c (gimplify_cleanup_point_expr): Also save and restore the cleanup list. From-SVN: r106786
2005-11-11re PR rtl-optimization/22509 (elemental.f90 testsuite failure (-fweb))Zdenek Dvorak2-2/+19
PR rtl-optimization/22509 * local-alloc.c (memref_used_between_p): Check whether a function call could not reference the memref. From-SVN: r106783
2005-11-11postreload.c (reload_cse_simplify_operands): Fix bug in sorting algorithm so ↵Ulrich Weigand2-1/+8
as to choose the best, not the worst, alternative. * postreload.c (reload_cse_simplify_operands): Fix bug in sorting algorithm so as to choose the best, not the worst, alternative. Reset accumulated register class before processing next alternative. From-SVN: r106780
2005-11-11re PR fortran/15976 (ICE: assertion failure in trans-array.c)Paul Thomas4-1/+44
PR fortran/15976 * resolve.c (resolve_symbol): Disallow automatic arrays in module scope. * gfortran.dg/automatic_module_variable.f90: New test. Co-Authored-By: Steven G. Kargl <kargls@comcast.net> From-SVN: r106777
2005-11-11re PR target/24445 ("unable to find a register to spill in class 'R0_REGS")Kaz Kojima4-0/+28
PR target/24445 * calls.c (expand_call): Copy a return value to a plain register if needed. * gcc.dg/pr24445.c: New test. From-SVN: r106774
2005-11-11Daily bump.GCC Administrator1-1/+1
From-SVN: r106767
2005-11-10re PR fortran/24655 (ICE with statement function)Paul Thomas7-10/+113
2005-11-10 Paul Thomas <pault@gcc.gnu.org> PR fortran/24655 PR fortran/24755 * match.c (recursive_stmt_fcn): Add checks that symtree exists for the expression to weed out inline intrinsic functions and parameters. PR fortran/24409 * module.c (mio_symtree_ref): Correct the patch of 0923 so that a symbol is not substituted for by a the symbol for the module itself and to prevent the promotion of a formal argument. 2005-11-10 Paul Thomas <pault@gcc.gnu.org> PR fortran/24655 PR fortran/24755 * gfortran.dg/recursive_statement_functions.f90: Add statement functions using inline intrinsic functions and parameters to test that they no longer seg-fault. PR fortran/24409 gfortran.dg/nested_modules_4.f90: New test. gfortran.dg/nested_modules_5.f90: New test. From-SVN: r106756
2005-11-10re PR fortran/24643 (Unclassifiable statement on implicitly typed character ↵Tobias Schlüter5-0/+35
substring) fortran/ PR fortran/24643 * primary.c (match_varspec): Check for implicitly typed CHARACTER variables before matching substrings. testsuite/ PR fortran/24643 * gfortran.dg/implicit_6.f90, gfortran.dg/implicit_7.f90: New. From-SVN: r106753
2005-11-10attr-weakref-1.c: Add exit (0) to avoid spurious failures.Alexandre Oliva2-0/+7
* gcc.dg/attr-weakref-1.c: Add exit (0) to avoid spurious failures. From-SVN: r106750
2005-11-10re PR target/24778 (Assembler errors during bootstrap)Alexandre Oliva2-1/+10
PR target/24778 * varasm.c (assemble_name): Recompute name only for transparent aliases. From-SVN: r106749
2005-11-10* tree-ssa-structalias.c (heapvar_lookup): Fix typo: stmt to from.Hans-Peter Nilsson2-2/+6
From-SVN: r106746
2005-11-10tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Do not perform ↵Jeff Law2-0/+8
reassociation if the parent statement will not die as a result... * tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Do not perform reassociation if the parent statement will not die as a result of the optimization. From-SVN: r106744
2005-11-10tree-ssa-alias.c (compute_may_aliases): Remove call to delete_old_heap_vars.Daniel Berlin7-66/+92
2005-11-10 Daniel Berlin <dberlin@dberlin.org> * tree-ssa-alias.c (compute_may_aliases): Remove call to delete_old_heap_vars. * tree-dfa.c (referenced_var_remove): Remove function. * tree-ssa.c (init_tree_ssa): Call init_alias_heapvars. (delete_tree_ssa): Remove call to delete_old_heapvars. Add call to delete_alias_heapvars. * tree-flow.h (referenced_var_remove): Remove prototype (init_alias_heapvars): New prototype. (delete_alias_heapvars): Ditto. * Makefile.in (tree-ssa-structalias.o): Add gt-tree-ssa-structalias.o (GTFILES): Add tree-ssa-structalias.h and tree-ssa-structalias.c. (s-gtype): Add gt-tree-ssa-structalias.h. * tree-ssa-structalias.c (heapvars): Remove. (oldheapvars): Remove. (heapvar_for_stmt): New variable. (heapvar_lookup): New function. (heapvar_insert): Ditto. (get_constraint_for): See if we have an old heapvar to reuse. (init_alias_heapvars): New function. (delete_alias_heapvars): Ditto. Add include of gt-tree-ssa-structalias.h. From-SVN: r106743
2005-11-10re PR middle-end/22127 (register window not preserved after getcontext call)Eric Botcazou4-1/+130
PR middle-end/22127 * calls.c (special_function_p): Set ECF_RETURNS_TWICE for getcontext. From-SVN: r106739
2005-11-10tree.c (int_fits_type_p): Only look at the base type if it has the same ↵Eric Botcazou2-2/+10
precision as the original type. * tree.c (int_fits_type_p): Only look at the base type if it has the same precision as the original type. From-SVN: r106738
2005-11-10re PR other/4372 (#pragma weak pthread* inclusion causes applications to ↵Jakub Jelinek2-1/+7
crash without a linker error when one forgets to link with -lpthread) PR other/4372 * varasm.c (assemble_alias): Use %q+D in the error message instead of %J and %qD. From-SVN: r106735
2005-11-10gcse.c (free_ldst_entry): Only free hashtable if it exists.Richard Guenther2-1/+7
2005-11-10 Richard Guenther <rguenther@suse.de> * gcse.c (free_ldst_entry): Only free hashtable if it exists. From-SVN: r106734