Age | Commit message (Collapse) | Author | Files | Lines |
|
* fold-const.c (tree_expr_nonzero_p): Add function prototype.
(fold) <EQ_EXPR>: Move tree_expr_nonzero_p optimization from
fold_relational_const to here, i.e. "(x | 5) == 0" -> false.
(fold) (UNEQ_EXPR>: Add optimizations for unordered comparisons
of the form "x op x" where op is UNLE, UNGE, UNEQ or LTGT.
(fold_relational_const): Tidy up handling of floating point
comparisons by calling real_compare. Remove tree_expr_nonzero_p
transformation; fold_relational_const assumes constant operands.
From-SVN: r84916
|
|
2004-07-19 Gabriel Dos Reis <gdr@integrable-solution.net>
* doc/sourcebuild.texi: Add libcpp, now that CPP has its own
directory.
From-SVN: r84912
|
|
* c-tree.h (struct c_expr): Define.
(C_SET_EXP_ORIGINAL_CODE): Remove.
(parser_build_binary_op, build_compound_expr): Update prototypes.
* c-parse.in (%union): Add exprtype.
(FUNC_NAME): Mark as ttype.
(expr, expr_no_commas, cast_expr, unary_expr, primary): Change to
exprtype.
(expr): Update. Define directly in terms of expr_no_commas
instead of using nonnull_exprlist.
(nonnull_exprlist, unary_expr, cast_expr, expr_no_commas, primary,
offsetof_member_designator, typespec_nonreserved_nonattr, init,
initval, designator, component_declarator,
component_notype_declarator, enumerator, array_declarator,
condition, exexpr, switch_statement, stmt_nocomp, stmt,
nonnull_asm_operands, ivar_declarator, receiver): Update. Don't
set C_EXP_ORIGINAL_CODE. Use TREE_NO_WARNING for assignments
where appropriate.
* c-common.h (C_EXP_ORIGINAL_CODE): Remove.
* c-common.c (c_common_truthvalue_conversion): Don't check
C_EXP_ORIGINAL_CODE.
* c-typeck.c (parser_build_binary_op): Use c_expr structures.
Don't use C_EXP_ORIGINAL_CODE.
(default_conversion, default_function_array_conversion): Don't use
C_EXP_ORIGINAL_CODE. Preserve TREE_NO_WARNING.
(internal_build_compound_expr): Merge into build_compound_expr.
(build_compound_expr): Take two operands instead of a TREE_LIST.
* objc/objc-act.c (get_super_receiver): Update calls to
build_compound_expr.
cp:
* typeck.c (build_modify_expr, build_x_modify_expr): Set
TREE_NO_WARNING on assignments with an operator other than '='.
testsuite:
* g++.dg/warn/Wparentheses-1.C, g++.dg/warn/Wparentheses-2.C,
gcc.dg/Wparentheses-10.c: New tests.
* gcc.dg/Wparentheses-5.c: Remove XFAILs.
From-SVN: r84911
|
|
2004-07-19 Paolo Bonzini <bonzini@gnu.org>
* config/sh/sh.c (sh_use_dfa_interface): Remove.
(TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Set to
hook_int_void_1.
* config/sh/sh.md: Extract pipeline descriptions
into separate files.
* config/sh/sh1.md: New file, extracted from sh.md.
* config/sh/sh4.md: New file, extracted from sh.md.
* config/sh/shmedia.md: New file, extracted from sh.md
and rewritten using new-style pipeline description.
From-SVN: r84910
|
|
* tree.c (no_linkage_helper): Remove.
(no_linkage_check): Don't use walk_tree_without_duplicates.
From-SVN: r84909
|
|
* config/pa/pa.md: Delete the two remaining define_peephole
patterns.
From-SVN: r84908
|
|
From-SVN: r84906
|
|
is set.
* c-common.c (c_common_truthvalue_conversion): Don't warn if
TREE_NO_WARNING is set.
cp/
* cp-tree.h (C_SET_EXP_ORIGINAL_CODE): Remove.
* decl2.c (grokfield): Don't check current_class_depth via
unused TREE_COMPLEXITY.
* semantics.c (finish_parenthesized_expr): Set TREE_NO_WARNING
to avoid the missing parentheses warning.
Don't set C_SET_EXP_ORIGINAL_CODE.
Co-Authored-By: Joseph Myers <jsm@polyomino.org.uk>
From-SVN: r84903
|
|
* mangle.c (write_expression): Issue a sorry for zero-operand
functional casts.
From-SVN: r84899
|
|
* builtins.c (simplify_builtin_memcmp, simplify_builtin_strcmp,
simplify_builtin_strncmp): Delete.
(fold_builtin_memcmp, fold_builtin_strcmp, fold_builtin_strncmp):
Change argument to accept an arglist instead of an "exp". Assume
that the return type is always integer_type_node. Copy missing
transformations from their now obsolete simplify_builtin_*
equivalents.
(fold_builtin_1): Pass arglist instead of exp to fold_builtin_memcmp,
fold_builtin_strcmp and fold_builtin_strncmp.
(simplify_builtin): Call fold_builtin_memcmp, fold_builtin_strcmp
and fold_builtin_strncmp instead of simplify_builtin_memcmp,
simplify_builtin_strcmp and simplify_builtin_strncmp respectively.
From-SVN: r84898
|
|
From-SVN: r84897
|
|
From-SVN: r84896
|
|
passing via temporary (breaks auto_ptr))
PR c++/16115
* stor-layout.c (relayout_decl): New fn.
* tree.h: Declare it.
(DECL_BY_REFERENCE): New macro.
* cp/call.c (type_passed_as): Make the invisible reference type
__restrict.
* cp/cp-gimplify.c (gimplify_cleanup_stmt): Rename to
cp_genericize_r. Handle invisible reference lowering.
(is_invisiref_parm): New fn.
(cp_genericize): Adjust the types of invisible reference parms.
Don't repeat the walk for clones.
* cp/decl.c (store_parm_decls): Don't generate any code for clones.
From-SVN: r84895
|
|
* builtins.c (max_builtin, min_builtin,
java_build_function_call_expr): Replace calls to build with buildN.
* class.c (build_class_ref, build_static_field_ref,
get_dispatch_table, make_class_data, layout_class_method): Likewise.
* constants.c (build_ref_from_constant_pool): Likewise.
* decl.c (update_aliases, push_jvm_slot, poplevel, finish_method,
add_stmt_to_compound): Likewise.
* except.c (build_exception_object_ref, expand_end_java_handler):
Likewise.
* java-gimplify.c (java_gimplify_case_expr,
java_gimplify_default_expr, java_gimplify_block,
java_gimplify_new_array_init, java_gimplify_try_expr): Likewise.
* jcf-write.c (generate_bytecode_insns): Likewise.
* typeck.c (convert_ieee_real_to_integer): Likewise.
From-SVN: r84894
|
|
PR fortran/16465
* gfortran.dg/g77//ffixed-line-length-0.f,
gfortran.dg/g77/ffixed-line-length-132.f,
gfortran.dg/g77/ffixed-line-length-72.f,
gfortran.dg/g77/ffixed-line-length-none.f: Copy from g77.dg.
gfortran.dg/g77/README: Update.
From-SVN: r84892
|
|
PR fortran/16465
* lang.opt (ffixed-line-length-none, ffixed-line-length-): New
options.
(ffixed-line-length-80, ffixed-line-length-132): Remove.
* options.c (gfc_handle_options): Deal with changed options.
* scanner.c (load_line): Change second arg to 'char **',
allocate if pointing to NULL. Keep track of buffer's length.
Adapt buffer size to overlong lines. Pad lines to full length
in fixed form.
(load_file): Adapt to new interface of load_line.
From-SVN: r84891
|
|
2004-07-18 Bud Davis <bdavis9659@comcast.net>
* configure.ac: Add check for LFS support.
* configure: Regenerate
From-SVN: r84890
|
|
PR c++/13092
* init.c (build_offset_ref): Build SCOPE_REF with non-null
TREE_TYPE for non-dependent names.
* typeck.c (build_x_unary_op): Handle non-dependent SCOPE_REF.
* pt.c (type_dependent_expression_p): Handle SCOPE_REF with
unknown_type_node as its TREE_TYPE.
* cxx-pretty_print.c (pp_cxx_unqualified_id): Handle BASELINK.
* error.c (dump_decl) <SCOPE_REF case>: Use pp_expression.
(dump_expr) <SCOPE_REF case>: Likewise.
* g++.dg/template/non-dependent7.C: New test.
* g++.dg/template/non-dependent8.C: Likewise.
* g++.dg/template/non-dependent9.C: Likewise.
* g++.dg/template/non-dependent10.C: Likewise.
From-SVN: r84889
|
|
2004-07-18 Matthias Klose <doko@debian.org>
* configure.in: Substitute target_noncanonical.
* configure: Regenerate
From-SVN: r84888
|
|
passing via temporary (breaks auto_ptr))
PR c++/16115
* stor-layout.c (relayout_decl): New fn.
* tree.h: Declare it.
(DECL_BY_REFERENCE): New macro.
* cp/call.c (type_passed_as): Make the invisible reference type
__restrict.
* cp/cp-gimplify.c (gimplify_cleanup_stmt): Rename to
cp_genericize_r. Handle invisible reference lowering.
(is_invisiref_parm): New fn.
(cp_genericize): Adjust the types of invisible reference parms.
Don't repeat the walk for clones.
* cp/decl.c (store_parm_decls): Don't generate any code for clones.
From-SVN: r84887
|
|
From-SVN: r84884
|
|
* libgcc2.c (__enable_execute_stack): New symbol.
* libgcc-std.ver (GCC_3.4.2): New version. Inherit from GCC_3.4
and declare __enable_execute_stack.
* mklibgcc.in (lib2funcs): Add _enable_execute_stack.
* config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): ANSIfy.
* config/sol2.h (TRANSFER_FROM_TRAMPOLINE): Rename into
ENABLE_EXECUTE_STACK.
* config/alpha/alpha.c (alpha_initialize_trampoline): Conditionalize
on ENABLE_EXECUTE_STACK instead of TRANSFER_FROM_TRAMPOLINE.
* config/alpha/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Rename into
ENABLE_EXECUTE_STACK.
* config/alpha/osf.h (TRANSFER_FROM_TRAMPOLINE): Likewise.
* config/i386/i386.c (x86_initialize_trampoline): Conditionalize
on ENABLE_EXECUTE_STACK instead of TRANSFER_FROM_TRAMPOLINE.
* config/i386/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Rename into
ENABLE_EXECUTE_STACK.
* config/i386/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Likewise.
* config/i386/netbsd64.h (TRANSFER_FROM_TRAMPOLINE): Likewise.
* config/sparc/freebsd.h (TRANSFER_FROM_TRAMPOLINE): Likewise.
* config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Likewise.
* config/sparc/sparc.c (sparc_initialize_trampoline): Conditionalize
on ENABLE_EXECUTE_STACK instead of TRANSFER_FROM_TRAMPOLINE.
(sparc64_initialize_trampoline): Likewise.
* doc/tm.texi (trampolines): Add ENABLE_EXECUTE_STACK macro.
From-SVN: r84880
|
|
* langhooks.h (builtin_function): New langhook.
* langhooks-def.h (LANG_HOOKS_BUILTIN_FUNCTION): New.
(LANG_HOOKS_INITIALIZER): Update.
* tree.h (builtin_function): Remove.
* doc/tm.texi: Update.
* c-tree.h (builtin_function): Declare.
* c-common.c, config/alpha/alpha.c, config/arm/arm.c,
config/c4x/c4x.c, config/frv/frv.c, config/i386/i386.c,
config/ia64/ia64.c, config/iq2000/iq2000.c,
config/rs6000/rs6000.c, config/s390/s390.c, config/sh/sh.c,
config/stormy16/stormy16.c: All callers of builtin_function
changed.
ada:
* gigi.h (builtin_function): Declare.
cp:
* cp-tree.h (builtin_function): Declare.
fortran:
* trans.h (builtin_function): Declare.
java:
* java-tree.h (builtin_function): Declare.
From-SVN: r84878
|
|
2004-07-17 Andrew Pinski <pinskia@physics.uc.edu>
PR target/16556
* config/i386/darwin.h (UNLIKELY_EXECUTED_TEXT_SECTION_NAME):
Remove white space after the backslash.
From-SVN: r84877
|
|
PR bootstrap/16469
* scripts/create_testsuite_files: Pass -print to find.
From-SVN: r84875
|
|
PR rtl-optimization/16294
* resource.c (return_insn_p): New predicate.
(mark_target_live_regs): Use it. Special-case return insns.
(init_resource_info): Use it. Don't scan the epilogue past
a return.
From-SVN: r84874
|
|
* loop-init.c (loop_optimizer_init, loop_optimizer_finalize): Do not
destroy dominance information.
* passes.c (rest_of_handle_loop2): Free dominance information.
* tree-cfg.c (cleanup_tree_cfg): Remove unreachable blocks before
jump threading.
(thread_jumps): Update dominance information and remove unreachable
blocks.
* tree-ssa-phiopt.c (replace_phi_with_stmt): Update dominance
information and remove the unreachable block.
From-SVN: r84873
|
|
PR c++/16337
* g++.dg/parse/attr2.C: New test.
From-SVN: r84872
|
|
From-SVN: r84871
|
|
2004-07-17 Michael Koch <konqueror@gmx.de>
* java/lang/String.java: Fixed javadocs all over.
From-SVN: r84870
|
|
2004-07-17 Toon Moene <toon@moene.indiv.nluug.nl>
* doc/sourcebuild.texi: Remove libf2c entry.
From-SVN: r84869
|
|
2004-07-17 Mark Wielaard <mark@klomp.org>
* gnu/java/nio/channels/FileChannelImpl.java (truncate): Only truncate
when size is smaller.
* java/io/RandomAccessFile.java (setLength): Use truncate for
shrinking the file and seek plus write for expanding the file.
2004-07-17 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/channels/natFileChannelPosix.cc
(implTruncate): Always save current position. Only reposition file
pointer to where we started if not beyond new lenght. Reposition file
pointer to file length if it points beyond the end of file.
From-SVN: r84868
|
|
2004-07-17 Paolo Bonzini <bonzini@gnu.org>
* config/i386/i386.md (movv16qi_internal): Fix typo.
From-SVN: r84867
|
|
2004-07-17 Mark Wielaard <mark@klomp.org>
* javax/swing/Box.java: Put FIXME comment above class declaration.
* javax/swing/JButton.java: Remove illegal L&F HTML from comments.
* javax/swing/JCheckBox.java: Likewise.
* javax/swing/JDialog.java: Likewise.
* javax/swing/JRadioButton.java: Likewise.
* javax/swing/JToggleButton.java: Likewise.
* javax/swing/UIManager.java: Likewise.
* javax/swing/border/TitledBorder.java: Likewise.
* javax/swing/plaf/basic/BasicLabelUI.java: Likewise.
* javax/swing/plaf/basic/BasicLookAndFeel.java: Likewise.
* javax/swing/plaf/basic/BasicPopupMenuSeparatorUI.java: Likewise.
* javax/swing/plaf/basic/BasicProgressBarUI.java: Likewise.
* javax/swing/plaf/basic/BasicScrollBarUI.java: Likewise.
* javax/swing/plaf/basic/BasicSeparatorUI.java: Likewise.
* javax/swing/text/JTextComponent.java: Likewise.
From-SVN: r84866
|
|
2004-07-17 Toon Moene <toon@moene.indiv.nluug.nl>
* g77.dg: Removed.
* g77.f-torture: Ditto.
From-SVN: r84865
|
|
2004-07-17 Jeroen Frijters <jeroen@frijters.net>
* java/net/DatagramPacket.java (setAddress): Removed check for
null address.
2004-07-17 Michael Koch <konqueror@gmx.de>
* java/net/DatagramSocket.java
(getLocalAddress): Check if socket is bound or not.
* java/net/Socket.java
(getLocalAddrss): Check if socket is bound or not.
(getPort): Return -1 when not connected. Dont check getImpl() for
null.
(setReuseAddress): Check if socket is closed.
(isConnected): Check if getImpl() returns null.
From-SVN: r84864
|
|
* final.c (final_scan_insn): Fix broken commit from previous
patch.
From-SVN: r84861
|
|
-Wparentheses instead of -Wextra.
* c-typeck.c (parser_build_binary_op): Condition warnings for
X<=Y<=Z on -Wparentheses instead of -Wextra.
* doc/invoke.texi: Update. Document that most of -Wparentheses is
supported for C only.
testsuite:
* gcc.dg/Wparentheses-2.c, gcc.dg/Wparentheses-3.c,
gcc.dg/Wparentheses-4.c, Wparentheses-5.c, Wparentheses-6.c,
Wparentheses-7.c, Wparentheses-8.c, Wparentheses-9.c: New tests.
From-SVN: r84860
|
|
calling notifyAll().
2004-07-17 Mark Wielaard <mark@klomp.org>
* java/awt/event/InvocationEvent.java (dispatch): Synchronize
on notifier object before calling notifyAll().
From-SVN: r84859
|
|
* gnu/java/nio/channels/FileChannelImpl.java
(finalize): Added javadoc.
From-SVN: r84858
|
|
* java/text/CollationElementIterator.java
(text_decomposition): Changed type to RuleBasedCollator.CollationElement[]
(setText): Use ArrayList instead of Vector.
From-SVN: r84857
|
|
* java/nio/ByteOrder.java
(static): Removed. Not needed.
Thanks to Patrick Reali for noticing.
* java/nio/charset/CharsetDecoder.java
(decode): Fix for classpath bug #9177: Reset state before flipping.
From-SVN: r84856
|
|
2004-07-17 Michael Koch <konqueror@gmx.de>
* java/security/Security.java: Fixed javadocs all over.
From-SVN: r84855
|
|
* gnu/java/awt/EmbeddedWindow.java
(static): Removed.
(addNotify): Set peer via reflection.
(setWindowPeer): Removed.
* gnu/java/awt/natEmbeddedWindow.cc: Removed.
* Makefile.am (nat_source_files):
Removed gnu/java/awt/natEmbeddedWindow.cc.
* Makefile.in: Regenerated.
From-SVN: r84854
|
|
* class.c (finish_struct_methods): Remove unncessary code.
(add_implicitly_declared_members): Create declarations for default
constructors and copy constructors lazily.
* cp-tree.h (lang_type_class): Remove lazy_default_ctor and
lazy_copy_ctor.
(CLASSTYPE_LAZY_DEFAULT_CTOR): New macro.
(CLASSTYPE_LAZY_COPY_CTOR): Likewise.
* decl2.c (check_classfn): Robustify.
(locate_dtor): Handle empty CLASSTYPE_METHOD_VEC.
(locate_ctor): Handle lazy default constructors.
(locate_copy): Handle lazy copy constructors.
(implicitly_declare_fn): Make sure we're looking at the
TYPE_MAIN_VARIANT for a class before creating functions. Don't
set TYPE_HAS_CONSTRUCTOR.
(lazily_declare_fn): New function.
* name-lookup.c (constructor_name_full): Simplify.
* search.c (lookup_fnfields_1): Lazily create methods, as
necessary.
(lookup_for_overrides): Handle empty CLASSTYPE_METHOD_VEC.
From-SVN: r84851
|
|
unreachable code warnings.
* cfgcleanup.c (try_simplify_condjump): Don't remove line
notes to avoid unreachable code warnings.
* toplev.c (backend_init): Don't emit line notes for
unreachable code warnings.
* combine.c (distribute_notes): Don't distribute a
REG_VTABLE_REF note.
* final.c (final_scan_insn): Don't handle it.
* rtl.c (reg_note_name): Remove it.
* rtl.h (enum reg_node): Dito.
* emit-rtl.c (force_line_numbers, restore_line_number_status):
Remove.
* rtl.h (force_line_numbers, restore_line_number_status):
Remove prototypes.
* stmt.c (using_eh_for_cleanups_p, using_eh_for_cleanups): Move...
* tree-eh.c (using_eh_for_cleanups_p): ...here. Make static.
(using_eh_for_cleanups): Also moved here.
* expr.c (expand_expr_real_1) <CASE_LABEL_EXPR>: Die if we see one.
<SWITCH_EXPR>: Die if we have a non-NULL SWITCH_BODY. Update calls
to expand_start_case and add_case_node.
* stmt.c (struct nesting): Cleanup unused fields condition_code,
last_unconditional_cleanup, nominal_type, printname, and
line_number_status.
(struct fixup_goto): Remove.
(struct stmt_status): Remove x_goto_fixup_chain field.
(goto_fixup_chain): Remove.
(strip_default_case_nodes, group_case_nodes, emit_jump_if_reachable,
pushcase, pushcase_range): Remove.
(expand_start_bindings_and_block): Don't set unused fields in
the nesting stack.
(expand_start_case, add_case_node): Cleanup unused formal arguments.
(expand_end_case_type): Don't simplify the case-list. Use emit_jump
instead of emit_jump_if_reachable.
(emit_case_nodes): Likewise.
* tree-cfg.c (group_case_labels, cleanup_dead_labels): No longer
static.
(update_eh_label): Work around left-over exception handing regions.
* tree-flow.h (group_case_labels, cleanup_dead_labels): Add protos.
* tree-optimize.c (execute_cleanup_cfg_post_optimizing): New function.
(pass_cleanup_cfg_post_optimizing): New pass.
(init_tree_optimization_passes): Run the new pass after all
optimizations.
* tree.h (pushcase, pushcase_range): Remove prototypes.
(expand_start_case, add_case_node): Update prototypes.
cp/
* cp-tree.h (struct lang_type): Don't have three GTY options on a
single bit GTY desc.
java/
* parse.y (java_complete_expand_methods, java_expand_classes): Don't
abuse restore_line_number_status.
From-SVN: r84849
|
|
From-SVN: r84847
|
|
From-SVN: r84844
|
|
* configure.in(ZIP, GCJH): Remove white space around '=' in variable
assignment.
* configure: Regenerated.
From-SVN: r84843
|
|
* builtins.c (std_expand_builtin_va_arg): Remove.
(expand_builtin_va_arg): Remove.
* expr.h: Don't declare them.
* gimplify.c (mark_decls_volatile_r): Remove.
(copy_if_shared_r): Don't call it.
* target-def.h: Don't test EXPAND_BUILTIN_VA_ARG.
* expr.c (expand_expr_real_1): Don't handle VA_ARG_EXPR.
* gimple-low.c (lower_stmt): Likewise.
* tree-cfg.c (cfg_remove_useless_stmts_bb): Likewise.
* tree-gimple.c (is_gimple_tmp_rhs, is_gimple_stmt): Likewise.
* tree-ssa-operands.c (get_expr_operands): Likewise.
* doc/tm.texi (TARGET_GIMPLIFY_VA_ARG_EXPR): Don't mention
EXPAND_BUILTIN_VA_ARG.
* system.h (EXPAND_BUILTIN_VA_ARG): Poison.
* config/alpha/alpha.h, config/alpha/unicosmk.h, config/i386/i386.h,
config/ia64/ia64.h, config/rs6000/rs6000.h, config/s390/s390.h,
config/sparc/sparc.h (EXPAND_BUILTIN_VA_ARG): Remove.
From-SVN: r84842
|