1. 01 Apr, 2003 14 commits
    • unwind-dw2-fde-darwin.c (DESTRUCTOR_MAY_BE_CALLED_LIVE): New. · 481a8181
      	* unwind-dw2-fde-darwin.c (DESTRUCTOR_MAY_BE_CALLED_LIVE): New.
      	(live_image_destructor): Reset image to initial state.
      	(examine_objects): Set DESTRUCTOR_MAY_BE_CALLED_LIVE.
      
      From-SVN: r65145
      Geoffrey Keating committed
    • sparc.c (input_operand): Accept bare CONSTANT_P_RTX operands. · 375ffbe6
      	* config/sparc/sparc.c (input_operand): Accept bare
      	CONSTANT_P_RTX operands.
      
      From-SVN: r65143
      Eric Botcazou committed
    • config-lang.in (gtfiles): add \$(srcdir)/cp/name-lookup.c after \$(srcdir)/cp/name-lookup.h. · 28ea4c88
      2003-04-01  Andrew Pinski  <pinskia@physics.uc.edu>
      
              * config-lang.in (gtfiles): add \$(srcdir)/cp/name-lookup.c
              after \$(srcdir)/cp/name-lookup.h.
              * name-lookup.c: (cxx_binding_make): Use ggc_alloc_clearedinstead
              of ggc_alloc.  Include gt-cp-name-lookup.h at the end of the file.
              * Make-lang.in: (gt-cp-name-lookup.h): is generated by the gtype.
              (cp/name-lookup.o): depends on gt-cp-name-lookup.h.
      
      From-SVN: r65142
      Andrew Pinski committed
    • gcse.c (struct ls_expr): Added pattern_regs field. · 47a3dae1
      	* gcse.c (struct ls_expr): Added pattern_regs field.
      	(ldst_entry): Initialize it.
      	(extract_mentioned_regs, extract_mentioned_regs_helper): New.
      	(store_ops_ok): Use regs precomputed by them.
      	(find_loads, store_killed_in_insn, load_kills_store): Change return
      	type to bool.
      	(store_killed_before, store_killed_after): Take position of register
      	set in account.
      	(reg_set_info): Store position of the setter.
      	(gcse_main): Enable store motion.
      	(mems_conflict_for_gcse_p): Enable load motion of non-symbol mems.
      	(pre_insert_copy_insn, update_ld_motion_stores, insert_store): Prevent rtl
      	sharing.
      	(simple_mem): Enable store motion of non-symbol mems.
      	(regvec): Type changed.
      	(LAST_AVAIL_CHECK_FAILURE): New.
      	(compute_store_table_current_insn): New.
      	(build_store_vectors): Computation of availability and anticipatability
      	moved ...
      	(compute_store_table, find_moveable_store): ... here.
      	(delete_store): Remove senseless comment.
      	(store_motion): Reorganize.
      
      From-SVN: r65141
      Zdenek Dvorak committed
    • Fix a typo in ChangeLog. · 63855aa6
      From-SVN: r65140
      Kazu Hirata committed
    • mips.c (override_options): Provide mappings for HI_REGNUM and LO_REGNUM. · 77d4f3a4
      	* config/mips/mips.c (override_options): Provide mappings for
      	HI_REGNUM and LO_REGNUM.
      	* config/mips/mips.h (MD_DBX_FIRST): Define.
      
      From-SVN: r65139
      Kevin Buettner committed
    • simd-1.C: New. · 705412b0
      2003-04-01  Aldy Hernandez  <aldyh@redhat.com>
      
              * g++.dg/eh/simd-1.C: New.
      
              * g++.dg/eh/simd-2.C: New.
      
      From-SVN: r65138
      Aldy Hernandez committed
    • combine.c (merge_outer_ops): Fix typo. · 7d4444ea
      	2003-04-01  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
      
      	* combine.c (merge_outer_ops): Fix typo.
      
      	* varasm.c (make_decl_one_only): Revert 2003-03-09 patch.
      
      From-SVN: r65136
      Franz Sirl committed
    • {40x.md,603.md,6xx.md,7450.md,7xx.md,mpc.md, [...]: Change mult_compare to imul_compare. · 9259f3b0
              * config/rs6000/{40x.md,603.md,6xx.md,7450.md,7xx.md,mpc.md,
              power4.md,rios1.md,rios2.md,rs64.md}: Change mult_compare to
              imul_compare.  Add lmul_compare.
              * config/rs6000/power4.md: Bump some latencies.  Model extra cycle
              in second pair of dispatch slots.  Model stores more accurately.
              Tweak multiply model.  Add bypasses for CR instructions dependent
              on complicated compares.
              * config/rs6000/rs6000.md (mulsi3): Name imul_compare patterns.
              (muldi3): Add lmul_compare patterns.
              * config/rs6000/rs6000.c (rs6000_variable_issue): Move FPLOAD_UX
              and FPSTORE_UX to split instructions and add COMPARE,
              DELAYED_COMPARE, IMUL_COMPARE, LMUL_COMPARE, IDIV, LDIV.
              (rs6000_adjust_cost): Add IMUL_COMPARE and LMUL_COMPARE.
              (rs6000_rtx_costs): Separate POWER4 multiply case.
      
      From-SVN: r65135
      David Edelsohn committed
    • s390.c (s390_fixup_clobbered_return_reg): Do nothing if __builtin_return_address was not used. · 7fe317e4
      	* config/s390/s390.c (s390_fixup_clobbered_return_reg):
      	Do nothing if __builtin_return_address was not used.
      
      From-SVN: r65133
      Ulrich Weigand committed
    • * i386.md (test patterns): Allow memory operand in operand1. · e1fea6ee
      From-SVN: r65132
      Jan Hubicka committed
    • simd-3.c: New. · d744e06e
              * testsuite/gcc.c-torture/execute/simd-3.c: New.
      
              * expr.c (expand_expr): Handle VECTOR_CST.
              (const_vector_from_tree): New.
      
              * varasm.c (output_constant): Handle VECTOR_CST.
      
              * c-typeck.c (digest_init): Build a vector constant from a
              VECTOR_TYPE.
      
              * config/rs6000/rs6000.c: Remove prototype for
              easy_vector_constant.
              (easy_vector_constant): Add mode parameter.  Rewrite to handle
              more easy constants.
              (rs6000_emit_move): Pass mode to easy_vector_constant.
              Call emit_easy_vector_insn for SPE V2SI vector constant moves.
              (emit_easy_vector_insn): New.
              (easy_vector_same): New.
              (EASY_VECTOR_15): New macro.
              (EASY_VECTOR_15_ADD_SELF): New macro.
              (bdesc_2arg): Rename to xorv2si3.
              (easy_vector_constant_add_self): New.
              (input_operand): Allow vector constants.
      
              * config/rs6000/rs6000.h (PREDICATE_CODES): Add
              easy_vector_constant, easy_vector_constant_add_self.
              (EXTRA_CONSTRAINT): Add 'W'.
      
              * config/rs6000/rs6000-protos.h: Add prototype for
              easy_vector_constant, emit_easy_vector_insn.
      
              * config/rs6000/altivec.md (xorv8hi3): New.
              (xorv16qi3): New.
              Remove all _const0 patterns.
              (movv4si_internal): Rewrite to use code.  Add vector constant to
              vector alternative.  Add splitter.
              (movv8hi_internal): Same.
              (movv16qi_internal): Same.
              (movv4sf_internal): Same.
              Change the unspecs for vspltis* to use constants.
      
              * config/rs6000/spe.md ("xorv4hi3"): New.
              ("spe_evxor"): Rename to xorv2si3.
              ("xorv1di3"): New.
              Remove all _const0 patterns.
              (movv2si_internal): Rewrite to use code.  Add vector constant to
              alternatives.  Add splitter.
              (movv4hi_internal): Add vector constant to alternatives.
              (movv1di_internal): Same.
              (movv2sf_internal): Same.
      
      From-SVN: r65130
      Aldy Hernandez committed
    • re PR middle-end/9936 (ICE with local function and variable-length 2d array) · 46e33d43
      	PR c/9936
      	* c-decl.c (grokdeclarator): Clear SAVE_EXPR_CONTEXT for
      	variably-sized arrays in parameters.
      	(set_save_expr_context): New function.
      	(c_expand_body): Use it, via walk_tree.
      
      	PR c/9936
      	* gcc.dg/20030331-2.c: New test.
      
      From-SVN: r65128
      Mark Mitchell committed
    • Daily bump. · 6fa91a1d
      From-SVN: r65125
      GCC Administrator committed
  2. 31 Mar, 2003 26 commits
    • combine.c (can_combine_p): Allow ZERO_EXTRACT and STRICT_LOW_PART. · 73a39fc4
      2003-03-31  Eric Christopher  <echristo@redhat.com>
      
      	* combine.c (can_combine_p): Allow ZERO_EXTRACT and STRICT_LOW_PART.
      	(combinable_i3pat): Remove call to expand_field_assignment and
      	#if 0'd code.
      
      From-SVN: r65118
      Eric Christopher committed
    • re PR c++/10278 (ICE in parser) · 6b665219
      	PR c++/10278
      	* c-common.c (finish_label_address_expr): Handle the
      	error_mark_node.
      
      	PR c++/10278
      	* g++.dg/parse/crash2.C: New test.
      
      From-SVN: r65116
      Mark Mitchell committed
    • re PR ada/10020 (Can't bootstrap gcc on AIX with Ada enabled) · b174e2d4
      	PR ada/10020
      	* link.c : Fix misspelled "const" keyword
      
      From-SVN: r65115
      Geert Bosch committed
    • real.c (real_identical): Reorg so as to not compare signalling for normals. · 6c06208f
              * real.c (real_identical): Reorg so as to not compare
              signalling for normals.
      
      From-SVN: r65111
      Richard Henderson committed
    • m68hc11.c (m68hc11_gen_movhi): Don't rely on REG_WAS_0 notes as they are boggus. · c25292ce
      	* config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Don't rely on REG_WAS_0
      	notes as they are boggus.
      	(m68hc11_gen_movqi): Likewise.
      
      From-SVN: r65107
      Stephane Carrez committed
    • 20030331-1.c: New test, moved from... · 44f19ccb
      	* gcc.c-torture/compile/20030331-1.c: New test, moved from...
      	* gcc.c-torture/execute/20030331-1.c: ...here.
      
      From-SVN: r65106
      Richard Sandiford committed
    • m68hc11.c (expand_prologue): For an interrupt handler save the soft registers… · 07faf2d6
      m68hc11.c (expand_prologue): For an interrupt handler save the soft registers after the frame pointer so...
      
      	* config/m68hc11/m68hc11.c (expand_prologue): For an interrupt handler
      	save the soft registers after the frame pointer so that gdb can unwind
      	the frame more easily.
      	(expand_epilogue): Likewise in opposite order; allow to use X register
      	as scratch if the return value is by reference.
      
      From-SVN: r65104
      Stephane Carrez committed
    • re PR java/10145 (java and c++ disagree about class layout) · adff28c3
              PR java/10145
              * stor-layout.c (update_alignment_for_field): Respect
              DECL_USER_ALIGN for zero-length bitfields, too.
              * c-decl.c (finish_struct): Don't set DECL_ALIGN for normal
              fields.
              * cp/class.c (check_field_decl): Don't set DECL_ALIGN.
      
      From-SVN: r65103
      Jason Merrill committed
    • * gcc.c-torture/execute/20030331-1.c: New test. · e66833ac
      From-SVN: r65102
      Richard Sandiford committed
    • cpppch.c (struct cpp_savedstate): Add defs and n_defs members. · c419b113
      	* cpppch.c (struct cpp_savedstate): Add defs and n_defs members.
      	(count_defs): Keep track of number of defs as well as total size.
      	(write_defs): Put every definition in cpp_savedstate's defs array.
      	(comp_hashnode): Define.  Comparison function for qsort.
      	(cpp_write_pch_deps): Sort definitions before writing them.
      	(struct ht_node_list): Define. Like cpp_savedstate but simpler.
      	(collect_ht_nodes): Define.
      	(cpp_valid_state): When verifying that undefined identifiers in
      	the pch file are still undefined, read a sorted list of undefined
      	identifiers, collect all defined identifiers into a sorted list,
      	and walk through both lists to make sure there's no match.
      
      From-SVN: r65101
      Matt Austern committed
    • * config/h8300/h8300.md (a peephole2): New. · ef3a7d56
      From-SVN: r65098
      Kazu Hirata committed
    • std_streambuf.h (_M_out_buf_size()): Remove. · eb98bd16
      2003-03-31  Paolo Carlini  <pcarlini@unitus.it>
      
      	* include/std/std_streambuf.h (_M_out_buf_size()): Remove.
      	* include/bits/fstream.tcc (_M_allocate_internal_buffer):
      	Don't set _M_out_end.
      	(basic_filebuf::overflow): Replace _M_out_buf_size() with
      	this->_M_out_cur && this->_M_out_cur < this->_M_out_end.
      	* include/bits/sstream.tcc (basic_stringbuf::overflow):
      	Replace _M_out_buf_size() with this->_M_out_cur < this->_M_out_end;
      	* include/bits/streambuf.tcc (basic_streambuf::sputc):
      	Replace _M_out_buf_size() with _M_out_cur && _M_out_cur < _M_out_end.
      	(basic_streambuf::xsputn): Replace _M_out_buf_size() with
      	_M_out_end - _M_out_cur.
      	(__copy_streambufs): Likewise.
      	* include/std/std_fstream.h (_M_set_determinate): Set
      	_M_out_end here.
      
      From-SVN: r65093
      Paolo Carlini committed
    • re PR target/10177 (VRsave mask wrong) · c8ae788f
      2002-03-31  Segher Boessenkool  <segher@koffie.nl>
      
              PR target/10177
              * config/rs6000/rs6000.h (HARD_REGNO_RENAME_OK): New.
              * config/rs6000/rs6000.c (compute_vrsave_mask):
              Don't mark all call-clobbered registers as used.
      
      From-SVN: r65092
      Segher Boessenkool committed
    • cppexp.c (cpp_classify_number): Accept '.' after "0x". · 7f1fc38e
      	* cppexp.c (cpp_classify_number): Accept '.' after "0x".
      	* testsuite/gcc.dg/cpp/c99-hexfloat-3.c: New file.
      
      From-SVN: r65091
      Michael Matz committed
    • gcov.c: Add -a & -u options. · 27283c73
      	* gcov.c: Add -a & -u options.
      	(struct arc_info): Add local_span, is_call_non_return,
      	is_nonlocal_return, is_unconditional flags, remove is_call flag.
      	(struct block_info): Add flags, is_call_site, is_nonlocal_return
      	members. Make encodings a union with span member.
      	(struct function_info): Add blocks_executed, line, src, line_next
      	members.
      	(struct coverage_info): Make branches a union with blocks member.
      	(struct source_info): Add functions member.
      	(object_summary, program_count): New global variables.
      	(flag_all_blocks, flag_unconditional): New flags.
      	(find_source, output_branch_count): New functions.
      	(print_usage): Adjust.
      	(options): Adjust.
      	(process_args): Adjust.
      	(read_graph_file) <GCOV_TAG_FUNCTION>: Adjust.
      	<GCOV_TAG_BLOCKS>: Read flags.
      	<GCOV_TAG_LINES>: Adjust.
      	(read_count_file): Process SUMMARY tags.
      	(solve_flow_graph): Set is_unconditional and clear is_call_site
      	appropriately.
      	(add_branch_counts): Adjust. Don't count unconditional branches.
      	(add_line_counts): Deal with all-blocks mode, accumulate block
      	coverage.
      	(accumulate_line_counts): Adjust, generate local spanning tree for
      	all-blocks mode.
      	(output_lines): Adjust.
      	* profile.c (branch_prob): Alter GCOV_FUNCTION_TAG record.
      	* doc/gcov.texi: Document.
      testsuite:
      	* lib/gcov.exp: Adjust call return testing strings.
      	* g77.dg/gcov/gcov-1.f: Don't expect unconditional branches.
      
      From-SVN: r65090
      Nathan Sidwell committed
    • h8300.md: Organize peephole2's that trasform (compare (reg:HI) (const_int)). · 212d9313
      	* config/h8300/h8300.md: Organize peephole2's that trasform
      	(compare (reg:HI) (const_int)).
      
      From-SVN: r65089
      Kazu Hirata committed
    • emit-rtl.c (dconstm2, dconsthalf): New real constants. · 03f2ea93
      
      	* emit-rtl.c (dconstm2, dconsthalf): New real constants.
      	(init_emit_once): Initialize dconstm2 and dconsthalf here.
      	* real.h (dconstm2, dconsthalf): Add prototypes here.
      	* real.c (real_sqrt): Use dconsthalf rather than local copy.
      	* builtins.c (fold_builtin): When optimizing sqrt(exp(x)) as
      	exp(x/2.0) remember to fold the division if possible.
      	Fold sin(0.0) as 0.0, cos(0.0) as 1.0, pow(x,1.0) as x,
      	pow(x,-1.0) as 1.0/x, pow(x,2.0) as x*x, pow(x,-2.0) as
      	1.0/(x*x) and pow(x,0.5) as sqrt(x).
      
      	* gcc.dg/builtins-3.c: Add new tests for sin and cos.
      	* gcc.dg/builtins-7.c: New test case.
      	* gcc.dg/builtins-8.c: New test case.
      
      From-SVN: r65088
      Roger Sayle committed
    • 2003-03-31 Michael Koch <konqueror@gmx.de> · 8c1e9e34
      	* javax/swing/AbstractAction.java
      	(AbstractAction): Reformatted.
      	(serialVersionUID): New private member variable.
      	* javax/swing/plaf/BorderUIResource.java
      	(serialVersionUID): New private member variable.
      	* javax/swing/plaf/basic/BasicLookAndFeel.java
      	(serialVersionUID): New private member variable.
      
      From-SVN: r65087
      Michael Koch committed
    • 2003-03-31 Michael Koch <konqueror@gmx.de> · 75160ca7
      	* java/sql/Date.java
      	(valueOf): Deprecated, reformatted.
      	(toString): Deprecated, reformatted.
      	* java/sql/Time.java
      	(valueOf): Deprecated, reformatted.
      	(toString): Deprecated, reformatted.
      
      From-SVN: r65086
      Michael Koch committed
    • Removed wrong changelog entry · 7ff7feaa
      From-SVN: r65085
      Michael Koch committed
    • VMID.java, [...]: New version from libgcj. · 0b116356
      2003-03-31  Michael Koch  <konqueror@gmx.de>
      
      	* java/rmi/dgc/VMID.java,
      	java/rmi/registry/RegistryHandler.java,
      	java/rmi/server/LoaderHandler.java,
      	java/rmi/server/LogStream.java,
      	java/rmi/server/Operation.java,
      	java/rmi/server/RemoteCall.java,
      	java/rmi/server/RemoteRef.java,
      	java/rmi/server/RemoteStub.java,
      	java/rmi/server/Skeleton.java:
      	New version from libgcj.
      
      From-SVN: r65084
      Michael Koch committed
    • 2003-03-31 Michael Koch <konqueror@gmx.de> · aa7f7531
      	* java/rmi/dgc/VMID.java
      	(isUnique): Deprecated.
      
      From-SVN: r65083
      Michael Koch committed
    • * config/h8300/h8300.md (a new peephole2): New. · 155de338
      From-SVN: r65082
      Kazu Hirata committed
    • 2003-03-31 Michael Koch <konqueror@gmx.de> · da557ab8
      	* java/io/File.java
      	(separator): Merged documentation from classpath.
      	(separatorChar): Merged documentation from classpath.
      	(pathSeparator): Merged documentation from classpath.
      	(pathSeparatorChar): Merged documentation from classpath.
      	(path): Merged documentation from classpath.
      	(canRead): Merged documentation from classpath.
      	(canWrite): Merged documentation from classpath.
      	(createNewFile): Merged documentation from classpath.
      	(delete): Merged documentation from classpath.
      	(equals): Merged documentation from classpath.
      	(exists): Merged documentation from classpath.
      	(File): Renamed p to name to match classpath, merged documentation
      	from classpath.
      	(getAbsolutePath): Merged documentation from classpath.
      	(getCanonicalPath): Merged documentation from classpath.
      	(getCanonicalFile): Merged documentation from classpath.
      	(getName): Merged documentation from classpath.
      	(getParent): Merged documentation from classpath.
      	(getParentFile): Merged documentation from classpath.
      	(getPath): Merged documentation from classpath.
      	(hashCode): Merged documentation from classpath.
      	(isAbsolute): Merged documentation from classpath.
      	(isDirectory): Merged documentation from classpath.
      	(isFile): Merged documentation from classpath.
      	(isHidden): Merged documentation from classpath.
      	(lastModified): Merged documentation from classpath.
      	(length): Merged documentation from classpath.
      	(list): Merged documentation from classpath.
      	(listFiles): Merged documentation from classpath.
      	(toString): Merged documentation from classpath.
      	(toURL): Merged documentation from classpath.
      	(mkdir): Merged documentation from classpath.
      	(mkdirs): Merged documentation from classpath.
      	(createTempFile): Merged documentation from classpath.
      	(setReadOnly): Merged documentation from classpath.
      	(listRoots): Merged documentation from classpath.
      	(compareTo): Merged documentation from classpath.
      	(renameTo): Merged documentation from classpath.
      	(setLastModified): Merged documentation from classpath.
      	* java/io/PrintStream.java
      	(auto_flush): Merged documentation from classpath.
      	(PrintStream): Merged documentation from classpath.
      	(checkError): Merged documentation from classpath.
      	(setError): Merged documentation from classpath.
      	(close): Merged documentation from classpath.
      	(flush): Merged documentation from classpath.
      	(print): Merged documentation from classpath.
      	(println):  Merged documentation from classpath.
      	(write): Renamed count to len to match classpath,
      	merged documentation from classpath.
      	* java/io/RandomAccessFile.java
      	(readShort): Merged documentation from classpath.
      	(readUnsignedByte): Merged documentation from classpath.
      	(readUnsignedShort): Merged documentation from classpath.
      	(readUTF): Merged documentation from classpath.
      	(seek): Reformatted, merged documentation from classpath.
      	(skipBytes): Renamed some variables to match classpath, reformatted,
      	merged documentation from classpath.
      	(write): Merged documentation from classpath.
      	(writeBoolean): Merged documentation from classpath.
      	(writeByte): Merged documentation from classpath.
      	(writeShort): Merged documentation from classpath.
      	(writeChar): Merged documentation from classpath.
      	(writeInt): Merged documentation from classpath.
      	(writeLong): Merged documentation from classpath.
      	(writeFloat): Merged documentation from classpath.
      	(writeDouble): Merged documentation from classpath.
      	(writeBytes): Merged documentation from classpath.
      	(writeChars): Merged documentation from classpath.
      	(writeUTF): Reformatted.
      	(getChannel): Reformatted.
      
      From-SVN: r65081
      Michael Koch committed