- 24 Mar, 2007 8 commits
-
-
Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> Co-Authored-By: Marius Cornea <marius.cornea@intel.com> From-SVN: r123185
Michael Meissner committed -
2007-03-24 Paul Thomas <pault@gcc.gnu.org> PR fortran/31215 * trans-expr.c (gfc_apply_interface_mapping_to_expr): Return int result that is non-zero if the expression is the function result. Only the characteristics of the result expression can be used in a procedure interface, so simplify LEN in situ using its character length. PR fortran/31219 PR fortran/31200 * trans-expr.c (gfc_conv_function_call): Do not use gfc_conv_expr_reference for actual pointer function with formal target because a temporary is created that does not transfer the reference correctly. Do not indirect formal pointer functions since it is the function reference that is needed. 2007-03-24 Paul Thomas <pault@gcc.gnu.org> PR fortran/31219 * gfortran.dg/pointer_function_actual_1.f90: New test. PR fortran/31200 * gfortran.dg/pointer_function_actual_2.f90: New test. PR fortran/31215 * gfortran.dg/result_in_spec_1.f90: New test. From-SVN: r123184
Paul Thomas committed -
2007-03-24 Paul Thomas <pault@gcc.gnu.org> PR fortran/31215 * trans-expr.c (gfc_apply_interface_mapping_to_expr): Return int result that is non-zero if the expression is the function result. Only the characteristics of the result expression can be used in a procedure interface, so simplify LEN in situ using its character length. PR fortran/31219 PR fortran/31200 * trans-expr.c (gfc_conv_function_call): Do not use gfc_conv_expr_reference for actual pointer function with formal target because a temporary is created that does not transfer the reference correctly. Do not indirect formal pointer functions since it is the function reference that is needed. 2007-03-24 Paul Thomas <pault@gcc.gnu.org> PR fortran/31219 * gfortran.dg/pointer_function_actual_1.f90: New test. PR fortran/31200 * gfortran.dg/pointer_function_actual_2.f90: New test. PR fortran/31215 * gfortran.dg/result_in_spec_1.f90: New test. From-SVN: r123183
Paul Thomas committed -
From-SVN: r123182
Brooks Moses committed -
* invoke.texi: Misc. small typo fixes. (-Wcharacter-truncation): Add. (-Wnonstd-intrinsics): Correct spelling. (-std=): Edit. (-fintrinsic-modules-path): Add. From-SVN: r123181
Brooks Moses committed -
* testsuite/libffi.call/return_fl2.c (return_fl): Mark as static. Use 'volatile float sum' to create sum of floats to avoid false negative due to excess precision on ix86 targets. (main): Ditto. From-SVN: r123180
Uros Bizjak committed -
From-SVN: r123178
Ayal Zaks committed -
From-SVN: r123176
GCC Administrator committed
-
- 23 Mar, 2007 25 commits
-
-
From-SVN: r123172
Ian Lance Taylor committed -
From-SVN: r123171
Ian Lance Taylor committed -
From-SVN: r123170
Ian Lance Taylor committed -
From-SVN: r123169
Steven Bosscher committed -
From-SVN: r123168
Steven Bosscher committed -
* tracer.c (tracer): Don't take FLAGS argument. Assert we are in cfglayout mode. Don't go into and out of cfglayout mode. Link the blocks in the order of the constructed traces. (rest_of_handle_tracer): Adjust call to tracer. * loop-init.c (rtl_loop_init): Assert we are in cfglayout mode. Don't go into cfglayout mode. (rtl_loop_done): Don't go out of cfglayout mode. * cfglayout.c (relink_block_chain): New function, split out from... (fixup_reorder_chain): ...here. Remove redundant checking. (cfg_layout_finalize): Don't clear the header, footer, and aux fields here, move the code to do so to relink_block_chain. Likewise for free_original_copy_tables. * rtl.h (tracer): Update prototype. * bb-reorder.c (reorder_basic_blocks): Don't take FLAGS argument. Assert we are in cfglayout mode. Don't go into and out of cfglayout mode. Use relink_block_chain to serialize the CFG according to the new basic block order. Move targetm.cannot_modify_jumps_p check from here... (gate_handle_reorder_blocks): ...to here. (duplicate_computed_gotos): Move targetm.cannot_modify_jumps_p check from here... (gate_duplicate_computed_gotos): ...to here. (rest_of_handle_reorder_blocks): Don't see if anything has changed, something always changes when going into and out of cfglayout mode. Perform an expensive cfg cleanup while going into cfglayout mode. Always update liveness information on HAVE_conditional_execution targets. Reserialize the basic blocks and go out of cfglayout mode. * reg-stack.c: Include cfglayout.h. (rest_of_handle_stack_regs): Go into and out of cfglayout mode around the call to reorder_basic_blocks. * basic-block.h (reorder_basic_blocks): Update prototype. (relink_block_chain): New prototype. * passes.c (pass_outof_cfg_layout_mode): Move after cse2. From-SVN: r123167
Steven Bosscher committed -
2007-03-23 Paolo Carlini <pcarlini@suse.de> * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc: Likewise use std::numeric_limits<>::max(). * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4402.cc: Minor tweaks. From-SVN: r123166
Paolo Carlini committed -
2007-03-23 Paolo Carlini <pcarlini@suse.de> * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc: Likewise use std::numeric_limits<>::max(). * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4402.cc: Minor tweaks. From-SVN: r123165
Paolo Carlini committed -
* config/mips/mips.md (type, hazard, *movdi_32bit, *movdi_gp32_fp64, *movdi_64bit, *movsi_internal, movcc, *movhi_internal, *movqi_internal, *movsf_hardfloat, *movdf_hardfloat_64bit, *movdf_hardfloat_32bit, *movdf_softfloat, movv2sf_hardfloat_64bit, load_df_low, load_df_high, store_df_high, mthc1, mfhc1): Change xfer instruction type to mfc and mtc, as applicable. (movcc): Change first xfer to multi. * config/mips/24k.md, config/mips/4100.md, config/mips/4300.md, config/mips/5000.md, config/mips/5400.md, config/mips/5500.md, config/mips/5k.md, config/mips/7000.md, config/mips/9000.md, config/mips/generic.md: Change reservations using "xfer" to use "mfc,mtc". * config/mips/sb1.md (ir_sb1_mtxfer): Use "mtc" instead of using match_operand. (ir_sb1_mfxfer): Use "mfc" instead of using match_operand. * config/mips/sr71k.md (ir_sr70_xfer_from): Use "mfc" instead of examining mode. (ir_sr70_xfer_to): Use "mtc" instead of examining mode. From-SVN: r123164
Joseph Myers committed -
(test02): Use std::numeric_limits<>::max() to get suitable large values. From-SVN: r123163
Hans-Peter Nilsson committed -
2007-03-23 Andreas Tobler <a.tobler@schweiz.org> * testsuite/lib/libgomp.exp (libgomp_init): Add -shared-libgcc for *-*-darwin*. * testsuite/libgomp.c++/c++.exp: Look for shared libstdc++ library and use it if found. From-SVN: r123162
Andreas Tobler committed -
* MAINTAINERS (fortran 95 front end): Add myself. (c++ front end): whitespace fix. From-SVN: r123161
Brooks Moses committed -
2007-03-23 H.J. Lu <hongjiu.lu@intel.com> * acx.m4 (ACX_BUGURL): Replace "@" with "@@" for REPORT_BUGS_TEXI. From-SVN: r123160
H.J. Lu committed -
* config/i386/i386.c: Remove unnecessary function declarations. Move targetm definition, and all related macros, to the end of the file. Resort some functions to put definitions before uses. (ix86_attribute_table): Make static. Move to end of file. (ix86_gimplify_va_arg): Make static. From-SVN: r123159
Richard Henderson committed -
link.cc (_Jv_Linker::resolve_method_entry): Ensure that the argument types and the return type of the found method match... 2007-03-23 Gary Benson <gbenson@redhat.com> * link.cc (_Jv_Linker::resolve_method_entry): Ensure that the argument types and the return type of the found method match those expected by the calling method. From-SVN: r123156
Gary Benson committed -
PR fortran/30834 * arith.c (complex_pow): Rewrite to handle large power. (gfc_arith_power): Handle large power in the real and integer cases. * gfortran.dg/integer_exponentiation_3.F90: New test. * gfortran.dg/integer_exponentiation_4.f90: New test. * gfortran.dg/integer_exponentiation_5.F90: New test. From-SVN: r123154
Francois-Xavier Coudert committed -
* cp-tree.h (current_tempalte_parms): Improve documentation. * pt.c (current_template_args): Likewise. From-SVN: r123153
Mark Mitchell committed -
PR c++/30863 * parser.c (cp_parser_parse_and_diagnose_invalid_type_name): Do not consume tokens when failing. PR c++/30863 * g++.dg/template/error24.C: New test. * g++.dg/parse/tmpl-outside1.C: Tweak error markers. From-SVN: r123152
Mark Mitchell committed -
Mark Mitchell <mark@codesourcery.com> PR c++/31273 * call.c (standard_conversion): Use type_decays_to. Keep FCODE consistent with FROM. PR c++/31273 * g++.dg/expr/bitfield7.C: New test. From-SVN: r123150
Mark Mitchell committed -
* error.c (dump_expr): Handle dependent names that designate types. * cxx-pretty-print.c (pp_cxx_unqualified_id): Handle TYPENAME_TYPE. From-SVN: r123148
Gabriel Dos Reis committed -
From-SVN: r123147
Joseph Myers committed -
* config/i386/i386.c (ix86_function_regparm): Early exit for 64-bit; don't increase local_regparm with force_align_arg_pointer check. (ix86_function_sseregparm): Assert 32-bit. (type_has_variadic_args_p): New. (ix86_return_pops_args): Early exit for 64-bit. Reindent; use type_has_variadic_args_p. (ix86_function_arg_regno_p): Use == 0 instead of ! test for eax. (init_cumulative_args): Remove TARGET_DEBUG_ARG. Remove zero_cum; use memset instead. Do maybe_vaarg check first; skip attribute tests if true; skip attribute tests for 64-bit. (construct_container): Remove TARGET_DEBUG_ARG. (function_arg_advance_32, function_arg_advance_64): Split out ... (function_arg_advance): ... from here. (function_arg_32, function_arg_64): Split out ... (function_arg): ... from here. (ix86_pass_by_reference): Tidy. (ix86_function_value_regno_p): Rearrange w/ switch on regno. (function_value_32): New, from parts of ix86_function_value and ix86_value_regno. (function_value_64): New, from parts of ix86_function_value and ix86_libcall_value. (ix86_function_value_1): New. (ix86_function_value, ix86_libcall_value): Use it. (return_in_memory_32, return_in_memory_64): Split out ... (ix86_return_in_memory): ... from here. (ix86_struct_value_rtx): Skip for 64-bit. (ix86_libcall_value, ix86_value_regno): Remove. (setup_incoming_varargs_64): Split out ... (ix86_setup_incoming_varargs): ... from here. (ix86_va_start): Remove TARGET_DEBUG_ARG. (legitimate_address_p, legitimize_address): Remove TARGET_DEBUG_ADDR. * config/i386/i386-protos.h (ix86_function_value): Remove. * config/i386/i386.opt (TARGET_DEBUG_ADDR, TARGET_DEBUG_ARG): Remove. From-SVN: r123146
Richard Henderson committed -
From-SVN: r123142
GCC Administrator committed -
2007-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libgfortran/31052 * file_pos.c: Update Copyright year. * io/open.c (test_endfile): Restore test_endfile to fix SPEC regression. Update Copyright year. * io/io.h: Same. * io/unix.c (is_special): Add missing type for this function. Update Copyright year. * io/transfer.c (next_record_r): Restore test_endfile. (st_read): Fix whitespace. Update Copyright year From-SVN: r123139
Jerry DeLisle committed -
PR libgcj/31228 * configure.ac: Add checks for getrlimit and sys/resource.h. * include/posix.h (_Jv_platform_close_on_exec): Remove. * include/config.h.in: Regenerate. * configure: Regenerate. * gnu/java/nio/channels/natFileChannelPosix.cc (open): Remove call to _Jv_platform_close_on_exec; * gnu/java/net/natPlainSocketImplPosix.cc (create): Likewise. (accept): Likewise. * gnu/java/net/natPlainDatagramSocketImplPosix.cc (create):Likewise. * java/lang/natPosixProcess.cc: Include sys/resource.h. (nativeSpawn): Close all file descriptors. Don't set FD_CLOEXEC on pipes. From-SVN: r123138
David Daney committed
-
- 22 Mar, 2007 7 commits
-
-
re PR other/23572 (No warning for assigning a value to a 'float' variable that overflows with option -Wextra) 2007-03-22 Manuel Lopez-Ibanez <manu@gcc.gnu.org> PR other/23572 * c-lex.c (interpret_float): On overflow, emit pedantic warning if infinities not supported, otherwise emit warning if -Woverflow. On underflow, emit warning if -Woverflow. * real.c (real_from_string): Return -1 if underflow, +1 if overflow and 0 otherwise. * real.h (real_from_string): Update declaration testsuite/ * gcc.dg/float-range-4.c: New. * gcc.dg/float-range-1.c: Update. Test for a warning. * gcc.dg/float-range-3.c: New. * gcc.dg/float-range-5.c: New. From-SVN: r123137
Manuel López-Ibáñez committed -
PR fortran/31262 * trans-const.c (gfc_conv_mpz_to_tree): Allow integer constants larger than twice the width of a HOST_WIDE_INT. * gfortran.dg/no_range_check_1.f90: New test. From-SVN: r123136
Francois-Xavier Coudert committed -
* defaults.h (OUTGOING_REG_PARM_STACK_SPACE): Provide default. * calls.c (compute_argument_block_size, expand_call, emit_library_call_value_1): Don't ifdef OUTGOING_REG_PARM_STACK_SPACE. * expr.c (block_move_libcall_safe_for_call_parm): Likewise. * function.c (STACK_DYNAMIC_OFFSET): Likewise. * doc/tm.texi (OUTGOING_REG_PARM_STACK_SPACE): Update. * config/alpha/unicosmk.h, config/bfin/bfin.h, config/iq2000/iq2000.h, config/mips/mips.h, config/mn10300/mn10300.h, config/mt/mt.h, config/pa/pa.h, config/rs6000/rs6000.h, config/score/score.h, config/spu/spu.h, config/v850/v850.h (OUTGOING_REG_PARM_STACK_SPACE): Set to 1. Co-Authored-By: Richard Henderson <rth@redhat.com> From-SVN: r123135
Kai Tietz committed -
* c-incpath.c (add_sysroot_to_chain): New. (merge_include_chains): Add sysroot argument. Call add_sysroot_to_chain if sysrooted. (register_include_chains): Update call to merge_include_chains. * doc/cppopts.texi: Document use of '=' in include directory arguments. From-SVN: r123134
Joseph Myers committed -
From-SVN: r123133
Dirk Mueller committed -
2007-03-22 Dirk Mueller <dmueller@suse.de> * g++.old-deja/g++.brendan/warnings2.C: Don't use -pedantic. * g++.dg/other/static1.C: Remove stray semicolon. * g++.dg/other/init1.C: Likewise. * g++.dg/rtti/dyncast1.C: Likewise. * g++.dg/tree-ssa/pr17153.C: Likewise. * g++.dg/lookup/disamb1.C: Likewise. * g++.dg/lookup/scoped2.C: Likewise. * g++.dg/lookup/friend7.C: Likewise. * g++.dg/parse/parse4.C: Likewise. * g++.dg/parse/parse5.C: Likewise. * g++.dg/expr/pr29066.C: Likewise. * g++.dg/expr/cast4.C: Likewise. * g++.dg/tc1/dr193.C: Likewise. * g++.dg/tc1/dr213.C: Likewise. * g++.dg/abi/dcast1.C: Likewise. * g++.dg/abi/covariant2.C: Likewise. * g++.dg/inherit/covariant11.C: Likewise. * g++.dg/inherit/covariant9.C: Likewise. * g++.dg/inherit/covariant10.C: Likewise. * g++.dg/init/static3.C: Likewise. * g++.dg/init/init-ref3.C: Likewise. * g++.dg/init/ref10.C: Likewise. * g++.dg/template/meminit2.C: Likewise. * g++.dg/template/using9.C: Likewise. * g++.dg/template/friend9.C: Likewise. * g++.dg/template/ref1.C: Likewise. * g++.old-deja/g++.warn/inline.C: Likewise. * g++.old-deja/g++.robertl/eb91.C: Likewise. * g++.old-deja/g++.robertl/eb46.C: Likewise. * g++.old-deja/g++.robertl/eb34.C: Likewise. * g++.old-deja/g++.robertl/eb43.C: Likewise. * g++.old-deja/g++.robertl/eb26.C: Likewise. * g++.old-deja/g++.robertl/eb116.C: Likewise. * g++.old-deja/g++.brendan/copy5.C: Likewise. * g++.old-deja/g++.brendan/overload8.C: Likewise. * g++.old-deja/g++.brendan/overload11.C: Likewise. * g++.old-deja/g++.brendan/copy7.C: Likewise. * g++.old-deja/g++.brendan/crash38.C: Likewise. * g++.old-deja/g++.brendan/template11.C: Likewise. * g++.old-deja/g++.brendan/err-msg3.C: Likewise. * g++.old-deja/g++.brendan/crash50.C: Likewise. * g++.old-deja/g++.brendan/crash16.C: Likewise. * g++.old-deja/g++.jason/pmem2.C: Likewise. * g++.old-deja/g++.jason/parse9.C: Likewise. * g++.old-deja/g++.jason/byval2.C: Likewise. * g++.old-deja/g++.jason/overload8.C: Likewise. * g++.old-deja/g++.jason/pmf8.C: Likewise. * g++.old-deja/g++.jason/template33.C: Likewise. * g++.old-deja/g++.jason/return3.C: Likewise. * g++.old-deja/g++.jason/scoping2.C: Likewise. * g++.old-deja/g++.jason/virtual.C: Likewise. * g++.old-deja/g++.jason/opeq3.C: Likewise. * g++.old-deja/g++.jason/template27.C: Likewise. * g++.old-deja/g++.jason/synth6.C: Likewise. * g++.old-deja/g++.jason/ref8.C: Likewise. * g++.old-deja/g++.jason/offset1.C: Likewise. * g++.old-deja/g++.other/static20.C: Likewise. * g++.old-deja/g++.other/array1.C: Likewise. * g++.old-deja/g++.other/new3.C: Likewise. * g++.old-deja/g++.other/array2.C: Likewise. * g++.old-deja/g++.other/overload9.C: Likewise. * g++.old-deja/g++.other/cast6.C: Likewise. * g++.old-deja/g++.other/ptrmem8.C: Likewise. * g++.old-deja/g++.other/eh4.C: Likewise. * g++.old-deja/g++.other/using7.C: Likewise. * g++.old-deja/g++.other/init18.C: Likewise. * g++.old-deja/g++.other/dyncast1.C: Likewise. * g++.old-deja/g++.other/dyncast2.C: Likewise. * g++.old-deja/g++.other/dtor11.C: Likewise. * g++.old-deja/g++.pt/static11.C: Likewise. * g++.old-deja/g++.pt/crash19.C: Likewise. * g++.old-deja/g++.pt/overload12.C: Likewise. * g++.old-deja/g++.pt/crash46.C: Likewise. * g++.old-deja/g++.pt/mi1.C: Likewise. * g++.old-deja/g++.pt/vaarg3.C: Likewise. * g++.old-deja/g++.pt/nontype5.C: Likewise. * g++.old-deja/g++.pt/local5.C: Likewise. * g++.old-deja/g++.pt/typename2.C: Likewise. * g++.old-deja/g++.pt/explicit80.C: Likewise. * g++.old-deja/g++.pt/auto_ptr.C: Likewise. * g++.old-deja/g++.law/visibility1.C: Likewise. * g++.old-deja/g++.law/visibility2.C: Likewise. * g++.old-deja/g++.law/virtual2.C: Likewise. * g++.old-deja/g++.law/operators19.C: Likewise. * g++.old-deja/g++.law/parsing10.C: Likewise. * g++.old-deja/g++.law/visibility4.C: Likewise. * g++.old-deja/g++.law/operators4.C: Likewise. * g++.old-deja/g++.law/dtors2.C: Likewise. * g++.old-deja/g++.law/missed-error3.C: Likewise. * g++.old-deja/g++.law/visibility10.C: Likewise. * g++.old-deja/g++.law/scope3.C: Likewise. * g++.old-deja/g++.law/casts2.C: Likewise. * g++.old-deja/g++.law/code-gen5.C: Likewise. * g++.old-deja/g++.law/operators33.C: Likewise. * g++.old-deja/g++.law/friend4.C: Likewise. * g++.old-deja/g++.mike/pmf7.C: Likewise. * g++.old-deja/g++.mike/p5611.C: Likewise. * g++.old-deja/g++.mike/net37.C: Likewise. * g++.old-deja/g++.mike/p3570.C: Likewise. * g++.old-deja/g++.mike/p5718.C: Likewise. * g++.old-deja/g++.mike/net21.C: Likewise. * g++.old-deja/g++.mike/p1862.C: Likewise. * g++.old-deja/g++.mike/p4511.C: Likewise. * g++.old-deja/g++.mike/virt3.C: Likewise. * g++.old-deja/g++.mike/p16146.C: Likewise. * g++.old-deja/g++.mike/p1989.C: Likewise. * g++.old-deja/g++.mike/p5571.C: Likewise. * g++.old-deja/g++.gb/scope10.C: Likewise. * g++.old-deja/g++.abi/primary5.C: Likewise. * g++.old-deja/g++.abi/empty2.C: Likewise. * g++.old-deja/g++.abi/arraynew.C: Likewise. * g++.old-deja/g++.eh/vbase4.C: Likewise. * g++.old-deja/g++.eh/ptr1.C: Likewise. * g++.old-deja/g++.eh/cleanup1.C: Likewise. * g++.old-deja/g++.bob/template3.C: Likewise. * g++.old-deja/g++.bob/inherit1.C: Likewise. From-SVN: r123132
Dirk Mueller committed -
2006-03-22 Paul Thomas <pault@gcc.gnu.org> PR fortran/31193 * trans-intrinsic.c (gfc_size_in_bytes): Remove function. (gfc_conv_intrinsic_array_transfer): Remove calls to previous. Explicitly extract TREE_TYPEs for source and mold. Use these to calculate length of source and mold, except for characters, where the se string_length is used. For mold, the TREE_TYPE is recalculated using gfc_get_character_type_len so that the result is correctly cast for character literals and substrings. Do not use gfc_typenode_for_spec for the final cast. 2006-03-22 Paul Thomas <pault@gcc.gnu.org> PR fortran/31193 * gfortran.dg/transfer_array_intrinsic_3.f90: New test. From-SVN: r123131
Paul Thomas committed
-