2007-06-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/32446
* io/write.c (output_float): Calculate ndigits correctly for large
numbered formats that must pad zeros before the decimal point.
From-SVN: r125985
2007-06-24 Paul Thomas <pault@gcc.gnu.org>
PR fortran/32298
PR fortran/31726
* trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Calculate
the offset between the loop counter and the position as
defined. Add the offset within the loop so that the mask acts
correctly. Do not advance the location on the basis that it
is zero.
2007-06-24 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31726
* gfortran.dg/minmaxloc_1.f90: New test.
PR fortran/32298
* gfortran.dg/minmaxloc_2.f90: New test.
From-SVN: r125983
2007-06-23 Mark Mitchell <mark@codesourcery.com>
* doc/extend.texi: Document that dllimport and dllexport imply
default visibility.
* tree.c (handle_dll_attribute): Set DECL_VISIBILITY on the
imported or exported declaration, including type declarations.
* c-common.c (handle_visibility_attribute): Check for conflicts
with dllimport/dllexport.
(c_determine_visibility): Handle dllimport/dllexport as an
explicit visibility atttribute.
2007-06-23 Mark Mitchell <mark@codesourcery.com>
* decl2.c (determine_visibility): Don't look for dllexport here.
(determine_visibility_from_class): Tidy.
2007-06-23 Mark Mitchell <mark@codesourcery.com>
* gcc.dg/visibility-12.c: New test.
* gcc.dg/visibility-13.c: Likewise.
* g++.dg/ext/visibility-9.C: Likewise.
* g++.dg/ext/visibility-10.C: Likewise.
From-SVN: r125975
2007-06-23 Richard Guenther <rguenther@suse.de>
PR tree-optimization/16876
PR middle-end/29478
* tree.h (CALL_CANNOT_INLINE_P): New macro to access static_flag
for CALL_EXPRs.
* tree-inline.c (initialize_inlined_parameters): Do not call
lang_hooks.tree_inlining.convert_parm_for_inlining.
* cgraphbuild.c (initialize_inline_failed): Set inline failed
reason for mismatched types.
* gimplify.c (gimplify_call_expr): Verify the call expression
arguments match the called function type signature. Otherwise
mark the call expression to be not considered for inlining
using CALL_CANNOT_INLINE_P flag.
* ipa-inline.c (cgraph_mark_inline): Honor CALL_CANNOT_INLINE_P on the
edges call expression.
(cgraph_decide_inlining_of_small_function): Likewise.
(cgraph_decide_inlining): Likewise.
* c-objc-common.h (LANG_HOOKS_TREE_INLINING_CONVERT_PARM_FOR_INLINING):
Remove define.
* c-tree.h (c_convert_parm_for_inlining): Remove declaration.
* c-typeck.c (c_convert_parm_for_inlining): Remove.
* langhooks-def.h (lhd_tree_inlining_convert_parm_for_inlining):
Remove declaration.
(LANG_HOOKS_TREE_INLINING_CONVERT_PARM_FOR_INLINING): Remove define.
* langhooks.c (lhd_tree_inlining_convert_parm_for_inlining):
Remove.
* langhooks.h (struct lang_hooks_for_tree_inlining): Remove
convert_parm_for_inlining member.
* gcc.dg/pr29254.c: The warning is bogus.
* gcc.dg/warn-1.c: Likewise.
* gcc.dg/assign-warn-3.c: Likewise.
* gcc.dg/noncompile/pr16876.c: The testcase is bogus, remove.
From-SVN: r125974
2007-06-23 Kenneth Zadeck <zadeck@naturalbridge.com>
PR middle-end/32437
*dce.c (deletable_insn_p): Add extra parameter and recurse if insn
is a PARALLEL.
(prescan_insns_for_dce): Add extra parameter.
From-SVN: r125972
PR target/32413
* config/i386/i386.c (ix86_register_move_cost): Rise the cost of
moves between MMX/SSE registers to at least 8 units to prevent
ICE caused by non-tieable SI/HI/QImodes in SSE registers.
From-SVN: r125951
2007-06-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/32360
* expr.c (gfc_check_assign): If the rvalue expression type is NULL_EXPR,
check to see if the lvalue has attribute pointer and data.
From-SVN: r125949
PR tree-optimization/19590
* tree-vrp.c (adjust_range_with_scev): Set the range when the result
of scev is a constant.
* gcc/testsuite/gcc.dg/tree-ssa/pr19590.c: New.
From-SVN: r125925
2007-06-21 Kenneth Zadeck <zadeck@naturalbridge.com>
* df-problems.c (df_note_bb_compute): Made computation of live
info consistent with df_lr.
From-SVN: r125924
2007-06-21 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (processor_target_table): Increase maximum
skip from 7 byte to 10 byte for Pentium Pro, Core 2 Duo and
default 64bit.
* config/i386/linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Ensure 8
byte alignment if > 8 byte alignment is preferred.
* config/i386/x86-64.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
From-SVN: r125920
PR tree-optimization/31866
* tree-ssa-coalesce.c (create_outofssa_var_map): Do nothing
if ASM_EXPR's input is not a SSA_NAME.
* gcc.dg/pr31866.c: New test.
From-SVN: r125919
PR middle-end/32362
* omp-low.c (lookup_decl_in_outer_ctx): Don't ICE if t is NULL,
but decl is a global var, instead return decl.
* gimplify.c (gimplify_adjust_omp_clauses_1): Add shared clauses
even for is_global_var decls, if they are private in some outer
context.
* testsuite/libgomp.c/pr32362-1.c: New test.
* testsuite/libgomp.c/pr32362-2.c: New test.
* testsuite/libgomp.c/pr32362-3.c: New test.
From-SVN: r125917
2007-06-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/32361
* match.c (gfc_match_common): If the symbol value expression type is
NULL_EXPR, don't error if previously initialized.
From-SVN: r125908
2007-06-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/25061
* decl.c (get_proc_name) Check symbol for generic interface
and issue an error.
From-SVN: r125906
* classpath/lib/gnu/classpath/jdwp/value/StringValue.class:
Regenerate.
* gnu/classpath/jdwp/value/StringValue.java
(StringValue): Tag of StringValue is STRING not OBJECT.
(write): String values are written to the wire as tag byte
and object ID, not JdwpString.
From-SVN: r125897
* gnu/classpath/jdwp/processor/ClassTypeCommandSet.java
(executeInvokeMethod): No need to use ValueFactory any more;
MethodResult.getReturnedValue now returns a Value.
(executeNewInstance): Double-check that return result is
an ObjectValue; throw JdwpInternalErrorException if it is not.
(invokeMethod): Method IDs come from VMMethod, not VMIdManager.
Arguments are Values not Objects.
Use ValueFactory to create arguments.
Pass invocation options to VMVirtualMachine.executeMethod.
Don't do any thread suspend/resume work: VMVM.executeMethod
will take care of it.
* gnu/classpath/jdwp/processor/ObjectReferenceCommandSet.java
(executeInvokeMethod): Method IDs come from VMMethod, not
VMIdManager.
Arguments should be Values instead of Objects.
Use ValueFactory to create Values.
Remove specific option handling and pass options to
VMVirtualMachine.executeMethod.
Remove thread suspension.
Use MethodResult.getReturnedValue to get method's result.
* gnu/classpath/jdwp/util/MethodResult.java
(returnedValue): Change type to Value.
(thrownException): Change type to Throwable.
(resType): Remove.
(MethodResult): New constructor.
(setReturnedValue): Remove.
(SetThrownException): Remove.
(getResultType): Remove.
(setResultType): Remove.
* gnu/classpath/jdwp/value/ObjectValue.java (getValue):
New method.
* vm/reference/gnu/classpath/jdwp/VMVirtualMachine.java
(executeMethod): Replace "nonVirtual" parameter with more
generic "options" parameter.
Replace java.lang.reflect.Method parameter with VMMethod.
Replace Object[] parameter with Value[] parameter.
From-SVN: r125895
2007-06-20 Seongbae Park <seongbae.park@gmail.com>
Maxim Kuvyrkov <mkuvyrkov@ispras.ru>
* dbgcnt.def (global_alloc_at_func, global_alloc_at_reg):
New counters.
* haifa-sched.c (queue_to_ready): Don't requeue next insn
if dbg_cnt (sched_insn) reaches the limit.
(choose_ready): New parameter INSN_PTR and new return value.
(schedule_block): Handle dbg_cnt (sched_insn). Handle
the new return value from choose_ready.
* global.c (global_aloc): New dbgcnt global_alloc_at_reg.
(rest_of_handle_global_alloc): New global_alloc_at_func.
Co-Authored-By: Maxim Kuvyrkov <mkuvyrkov@ispras.ru>
From-SVN: r125891