2003-10-21  Richard Sandiford  <rsandifo@redhat.com>

	* desc-cpu.scm (@arch@_cgen_ifld_table): Fix terminator.
	(@arch@_cgen_hw_table): Likewise.
	(@arch@_cgen_operand_table): Likewise.
	(@arch@_cgen_insn_table): Likewise.
	(@arch@_cgen_rebuild_tables): Treat cd->isas as a bitset pointer.
	(@arch@_cgen_cpu_open): Likewise.
	* desc.scm (<keyword>,'gen-defn): Fix attribute initialisation.

2003-10-09  Jim Blandy  <jimb@redhat.com>

	* desc-cpu.scm (gen-hw-table-decls): Remove Red Hat sanitization
	around extern declaration for @arch@_cgen_hw_table.

	* mach.scm (def-isa-attr!): Remove Red Hat sanitization around
	extended list of things that can have the ISA attribute.  This
	change is now in the public CGEN sources.

2003-10-01  Nick Clifton  <nickc@redhat.com>

	* read.scm (-keep-mach-set!): Suppress check for mismatched
	cpu families.  The test appears to be useless and it breaks the
	building of several ports. 

2003-09-29  Dave Brolley  <brolley@redhat.com>

	* desc-cpu.scm (gen-fld-defns): Use gen-obj-attr-end-defn.
	(gen-operand-table): Ditto.

2003-09-26 Stan Cox  <scox@redhat.com>

	2003-07-30  Jim Blandy  <jimb@redhat.com>

	* intrinsics.scm (suffixed-hardware-recognizer, is-h-cr64?,
	is-h-cr?, is_h-ccr?): New functions.
	(target:guess-mode-from-hw, target:base-reg,
	target:reg-constraint): Use the predicates, instead of assuming
	fixed names for the coprocessor registers.

	2003-05-28  Richard Sandiford  <rsandifo@redhat.com>

	* intrinsics.scm (bitmask): Use gen-c-symbol.
	(md-insn-groups): New variable.
	(md-insn:groups): If an instruction uses a specific rtl code, put it
	in the "known-code" group.
	(intrinsic:unspec-version, add-intrinsic): New functions.
	(gcc-hook): Add an unspec-version field.
	(well-known-intrinsic): Use add-intrinsic.  If the intrinsic uses
	a specific rtl code, add another version that uses an unspec.
	(find-intrinsic): Use add-intrinsic.
	(make-md-insn): Rename to...
	(add-md-insn): ...this.  Take the intrinsic and define_insn prefix
	as arguments.  Add the instruction to md-insns.
	(analyze-intrinsics!): Rework accordingly.  If a well-known intrinsic
	has an unspec variant, add an instruction to that variant too.
	(next-unspec, auto-incr-next-unspec): Remove.
	(first-unspec): New variable.
	(write-inputs): Use intrinsic:index and first-unspec to calculate
	the unspec number.
	(intrinsics.h): Use md-insn-groups rather than target:groups.

	2003-05-07  Richard Sandiford  <rsandifo@redhat.com>

	* intrinsics.scm (md-operand:true-immediate?): Remove.
	(md-operand:immediate?): Only return true for real immediates.
	Replace uses of true-immediate? with immediate? throughout file.
	(make-md-insn): Accept regnums as outputs.
	(write-syntax): Remove regnum handling.
	(write-cgen-insn): Write information about regnum operands.
	(intrinsics.h): Declare the associated structures and fields.

	2003-05-06  Richard Sandiford  <rsandifo@redhat.com>

	* intrinsics.scm (intrinsics.h): Generate a table describing the
	range and alignment of immediate operands.

	2003-05-04  Richard Sandiford  <rsandifo@redhat.com>

	* intrinsics.scm (target:declare-fields): New.
	(target:initialize-fields): New.  Add the length of the instruction
	to the cgen_insn structure.
	(target:add-well-known-intrinsics): Add *i3 and cmov* intrinsics.
	(write-insn): Rename CGEN_ENABLE_INTRINSIC_P to CGEN_ENABLE_INSN_P.
	(write-cgen-insn): Call target:initialize-fields.
	(intrinsics.h): Call target:declare-fields.  Rename
	CGEN_ENABLE_INTRINSIC_P to CGEN_ENABLE_INSN_P.

	2003-04-29  Richard Sandiford  <rsandifo@redhat.com>

	* intrinsics.scm: Rework to handle INTRINSIC attribute.

2003-08-26  Dave Brolley  <brolley@redhat.com>

	* gen-all-doc: Add fr550.

2003-05-06  Dave Brolley  <brolley@redhat.com>

	* Pick up missing bits from the last merge from sources.redhat.com.
	
2002-12-13  Dave Brolley  <brolley@redhat.com>

	* utils-cgen.scm (gen-attr-type): Moved from sid.scm.
	(-gen-attr-accessors): New function.
	(gen-obj-attr-defn): Update terminating initializer.
	(gen-obj-attr-end-defn): New function.
	* sid.scm (gen-attr-type): Moved to utils-cgen.scm.
	* sid-cpu.scm (cgen-desc.h): Generate code to include
	"opcde/cgen-bitset.h"
	* intrinsics.scm (kept-insn-isas): Correct the extraction of the isa
	name.
	* desc.scm ('gen-defn): Update terminating initializer.
	* desc-cpu.scm (gen-ifld-decls): Call -gen-attr-accessors. Update
	terminatinig initializer.
	(gen-hw-decls): Ditto.
	(gen-operand-decls): Ditto.
	(gen-insn-decls): Ditto.
	(-gen-hash-defines): Generate code to include "opcde/cgen-bitset.h"
	(gen-insn-table): Update terminating initializer.
	(-gen-cpu-open): Update generation of @arch@_cgen_rebuild_tables,
	@arch@_cgen_cpu_open, @arch@_cgen_cpu_close.
	* attr.scm (charmask-bytes): New function.
	(bitset-attr->charmask): New function.
	(<bitset-attribute>): Handle isa-attributes specially. Also handle
	differences for SID-SIMULATOR.
	(<integer-attribute>): Handle differences for SID-SIMULATOR.
	(<enum-attribute>): Ditto.

2001-06-05  graydon hoare  <graydon@redhat.com>

	* utils.scm (foldl): Define.
	(foldr): Define.
	(filter): Define.
	(union): Define.
	(intersection): Simplify.
	* sid.scm : Set APPLICATION to SID-SIMULATOR.
	(-op-gen-delayed-set-maybe-trace): Define.
	(<operand> 'gen-set-{quiet,trace}): Delegate to
	op-gen-delayed-set-quiet etc. Note: this is still a little tangled
	up and needs cleaning.
	(-with-parallel?): Hardwire with-parallel to #t.
	(<operand> 'cxmake-get): Replace with lookahead-aware code
	* sid-decode.scm: Remove per-insn writeback fns.
	(-gen-idesc-decls): Redefine sem_fn type.
	* sid-cpu.scm (gen-write-stack-structure): Replace parexec stuff
	with write stack stuff.
	(cgen-write.cxx): Replace per-insn writebacks with single write
	stack writeback. Add write stack reset function.
	(-gen-scache-semantic-fn insn): Replace parexec stuff with write
	stack stuff.
	* rtl-c.scm (xop): Clone operand into delayed operand if #:delayed
	estate attribute set.
	(delay): Set #:delayed attribute to calculated delay, update
	maximum delay of cpu, check (delay ...) usage.
	* operand.scm (<operand>): Add delayed slot to <operand>.
	* mach.scm (<cpu>): Add max-delay slot to <cpu>.
	* dev.scm (load-sid): Set APPLICATION to SID-SIMULATOR.
	* doc/rtl.texi (Expressions): Add section on (delay ...).

2001-10-08  Nick Clifton  <nickc@cambridge.redhat.com>

	* cpu/frv.opc: Add missing prototypes.
	Fix formatting.
	* cpu/sh.opc: Add missing prototypes.
	Fix formatting.

2001-05-23  Dave Brolley  <brolley@redhat.com>

	* frv.opc (parse_u12): New function.
	* frv.cpu (u-media-2-acc): New execution unit for fr400.
	(u-media-2-acc-dual): Ditto.
	(u-media-2-add-sub): Ditto.
	(u-media-2-add-sub-dual): Ditto.
	(u-media-3-dual): Ditto.
	(u-media-4-acc-dual): Ditto.
	(f-s5): New ifield.
	(f-u12-h): New ifield.
	(f-u12-l): New ifield.
	(f-u12): New multi ifield.
	(f-ACCj-null): New ifield.
	(f-misc-null-11): New ifield.
	(s5): New operand.
	(u12): New operand.
	(ACCj-null): New pmacro.
	(misc-null-11): New pmacro.
	(media-set-12): New pmacro.
	(mhsetlos): New insn.
	(mhsethis): New insn.
	(mhdsets): New insn.
	(set-5-semantics): New pmacro.
	(media-set-5): New pmacro.
	(mhsetloh): New insn.
	(mhsethih): New insn.
	(mhdseth): New insn.
	(mdcutssi): New insn.
	(media-dual-word-rotate-r-r): New pmacro.
	(mdrotli): New insn.
	(mcplhi): New insn.
	(mcpli): New insn.
	(mqsaths): New insn.
	(saturate-v): Operate on DI type operands.
	(mabshs): New insn.
	(media-arith-sat-semantics): Declare 'tmp' as DI.
	(media-acc-arith-sat): New pmacro.
	(maddaccs): New insn.
	(msubaccs): New insn.
	(media-dual-acc-arith-sat): New pmacro.
	(mdaddaccs): New insn.
	(mdsubaccs): New insn.
	(masaccs): New insn.
	(mdasaccs): New insn.
	(media-quad-multiply-cross-acc-semantics): New pmacro.
	(media-quad-multiply-cross-acc): New pmacro.
	(mqxmachs): New insn.
	(media-quad-cross-multiply-cross-acc-semantics): New pmacro.
	(media-quad-cross-multiply-cross-acc): New pmacro.
	(mqxmacxhs): New insn.
	(media-quad-cross-multiply-acc-semantics): New pmacro.
	(media-quad-cross-multiply-acc): New pmacro.
	(mqmacxhs): New insn.

2001-05-15  Dave Brolley  <brolley@redhat.com>

	* frv.cpu (f-ae): New ifield.
	(f-GRk-null): New ifield.
	(ae): New insn operand.
	(GRk-null): New pmacro.
	(cmpb): New insn.
	(cmpba): New insn.
	(cache-invalidate): Add new argument 'all' and pass it to
	@CPU@_{data|insn}_cache_invalidate.
	(ici): Pass 0 for 'all' argument.
	(dci): Pass 0 for 'all' argument.
	(cache-invalidate-entry): New pmacro.
	(icei): New insn.
	(dcei): New insn.
	(dcef): New insn.

2001-05-14  Dave Brolley  <brolley@redhat.com>

	* frv.cpu: Call @cpu@_model_branch for all branching insns. Reassign
	trap and check insns to u-trap and u-check respectively.
	(u-branch): Remove ICCi_3 and FCCi_3 inputs.
	(u-trap): New execution unit.
	(u-check): New execution unit.
	(u-media-dual-unpack): Removed in fr400 model.
	
2001-05-09  Dave Brolley  <brolley@redhat.com>

	* frv.cpu: Assign execution units for fr400.
	(model fr400): Add state and execution units.
	(prev-fp-load): New model state variable.
	(prev-media-p1): Ditto.
	(prev-acc-p2): Ditto.
	(cur-fp-load): New model state variable.
	(cur-media-p1): Ditto.
	(cur-acc-p2): Ditto.

2001-05-02  Dave Brolley  <brolley@redhat.com>

	* frv.cpu (fr500): Move state data structures which are global to all
	machines to sim/frv/profile.h.

2001-04-27  Dave Brolley  <brolley@redhat.com>

	* frv.opc (FRV_PIPE_SIZE): Rename to FRV_VLIW_SIZE.
	(VLIW_PIPE): Rename to VLIW_COMBO.
	(FRV_PIPE): Rename to FRV_VLIW.
	(FRV_VLIW): New member 'mach'.
	(FRV_VLIW): New member 'unit_mapping'.
	(frv_pipe_reset): Renamed to frv_vliw_reset.
	(frv_pipeline_add_insn): Renamed to frv_vliw_add_insn.
	(FRV_IS_BRANCH_INSN): Deleted.
	(FRV_IS_FLOAT_INSN): Deleted.
	(FRV_IS_MEDIA_INSN): Deleted.
	(frv_is_branch_major): New function.
	(frv_is_float_major): New function.
	(frv_is_media_major): New function.
	(frv_is_branch_insn): New function.
	(frv_is_float_insn): New function.
	(frv_is_media_insn): New function.
	(fr400_allowed_vliw): New table.
	(allowed_vliw): Renamed to fr500_allowed_vliw.
	(fr400_unit_mapping): New table.
	(fr500_unit_mapping): New table.
	(frv_vliw_reset): Set 'mach' and 'unit_mapping' fields.
	(match_pipe): Renamed to match_unit.
	(match_pipeline): Renamed to match_vliw.
	(add_next_to_pipe): Renamed to add_next_to_vliw.
	(find_major_in_pipeline): Renamed to find_major_in_vliw.
	(fr400_check_insn_major_constraints): New function.
	(fr500_check_insn_major_constraints): New function.
	(check_insn_major_constraints): Call machine specific functions.
	* frv.cpu: Added fr400 major insn categories.
	(PIPE): Renamed to UNIT.
	(PIPE NULL): Renamed to (UNIT NIL).
	(PIPE NUM_PIPES): Renamed to (UNIT NUM_UNITS).
	(MULT-DIV): new UNIT enumerator.
	(LOAD): new UNIT enumerator.
	(MAJOR): Renamed to FR500-MAJOR.
	(FR400-MAJOR): New insn enumeration.
	(sdiv): Assign to UNIT MULT-DIV.
	(nsdiv): Ditto.
	(udiv): Ditto.
	(nudiv): Ditto.
	(multiply-r-r): Ditto.
	(scan): Ditto.
	(csmul): Ditto.
	(csdiv): Ditto.
	(cudiv): Ditto.
	(cscan): Ditto.
	(multiply-cc-r-r): Ditto.
	(csmulcc): Ditto.
	(sdivi): Ditto.
	(nsdivi): Ditto.
	(udivi): Ditto.
	(nudivi): Ditto.
	(multiply-r-simm): Ditto.
	(scani): Ditto.
	(multiply-cc-r-simm): Ditto.
	(all load insns): Assign to UNIT LOAD.

2001-04-23  Dave Brolley  <brolley@redhat.com>

	* frv.cpu (h-acc40S): Check write access.
	(h-acc40U): Check write access.

2001-04-10  Dave Brolley  <brolley@redhat.com>

	* frv.cpu: Use MACH attribute to indicate insns not implemented on
	fr400.
	(h-psr_imple): New hardware element.
	(h-psr_ver):  New hardware element.
	(h-psr_ice):  New hardware element.
	(h-psr_be):  New hardware element.

2001-04-05  Jason Eckhardt  <jle@redhat.com>

        * frv.cpu (conditional-register-transfer cmovfg): Obtain the
        operands of cmovfg from the correct fields.

2001-04-05  Eric Christopher  <echristo@redhat.com>
	    Dave Brolley   <brolley@redhat.com>

	* frv.cpu: (media-complex-semantics-i): New define.
	(media-dual-complex-semantics): New define.
	(media-dual-complex-i): New define.
	(mcpxis): Use media-dual-complex-i.
	(mcpxiu): Ditto.
	(conditional-media-dual-complex-i): New define.
	(cmcpxis): Use conditional-media-dual-complex-i.
	(cmcpxiu): Ditto.
	(media-quad-complex-i): New define.
	(mqcpxis): Use media-quad-complex-i.
	(mqcpxiu): Ditto.

2001-04-05  Dave Brolley  <brolley@redhat.com>

	* frv.cpu (define-arch): Add fr400 machine.
	(fr400): New define-mach.
	(fr400): New define-model.

2001-01-11  Ben Elliston  <bje@redhat.com>

	* sh64-media.cpu (fldp, fldxp): Fix semantics for loading pairs.
	(fstp, fstxp): Likewise for storing pairs.
	
	* sh.cpu (h-grc): Zero extend mask.
	* sh64-media.cpu (f-uimm6): New field.
	(uimm6): New operand.
	(shari, sharil): Use it.
	(shlli, shllil): Likewise.
	(shlri, shlril): Likeiwse.

2001-01-08  Ben Elliston  <bje@redhat.com>

	* sh.cpu (h-pc): Define get and set methods. Set h-ism to the
	least significant bit of the pc whenever the pc is altered.
	(h-endian): Prohibit setting, via (error ..) in the set method.
	(h-ism): Define get and set methods (prohibit setting).
	* sh64-compact.cpu (bf): Do not set `ism' directly or mask the
	least significant bit of the pc; just set the pc directly.
	(bfs, bra, braf, bsr, bsrf, bt, bts, jmp, jsr, rts): Likewise.
	* sh64-media.cpu (beq, beqi, bge, bgeu, bgt, bgtu): Likewise.
	(blink, bne, bnei): Likewise.

2001-01-06  Ben Elliston  <bje@redhat.com>

	* sh64-media.cpu (addl, addil): Infer mode from operand modes.
	* sh.cpu (h-dr, get): Zero extend partial result.
	(h-dr, set): Re-work.

2001-01-04  Ben Elliston  <bje@redhat.com>

	* sh64-compact.cpu (fcmpgt): Reverse order of operands.

2001-01-03  Ben Elliston  <bje@redhat.com>

	* sh64-compact.cpu (fmov5): Test transfer size in frm, not frn.
	(bf): Handle instruction set mode switches based on the pc.
	(bfs, bra, braf, brk, bsrf, bt, bts, jmp, jsr, rts): Likewise.

	* sh.cpu (h-cr): CR0 is an alias for the status register (h-sr).

2000-12-26  Ben Elliston  <bje@redhat.com>

	* sh64-media.cpu (beq): Set instruction set mode (ism) based on
	the least significant bit of the target address.
	(beqi, bge, bgeu, bgt, bgtu, blink, bne, bnei): Likewise.
	(ldxub): Use UQI mode for memory read.
	(ldxuw): Likewise, use UHI mode.
	(stxl): Use SI mode for (subword ..), not QI!

2000-12-19  Ben Elliston  <bje@redhat.com>

	* sh64-media.cpu (fldp): Remove unused local symbol.
	(fldxp): Likewise.
	(subl): Sign extend to DI, not SI.

2000-12-15  Ben Elliston  <bje@redhat.com>

	* sh64-compact.cpu (trapa): Call sh64_compact_trapa.

	* sh64-media.cpu: Do not redundantly include "simplify.inc".
	(f-8-2): Rename from f-8. Update throughout.
	(f-imm6, f-imm10, f-imm16): Make fields signed.
	(f-disp6, f-disp10): Likewise.
	(f-uimm16): New field.
	(f-disp16): Don't add/subtract 1 when computing value.
	(uimm16): New operand.
	(addl): Use correct subword index.
	(addil): Likewise.
	(addzl): Likewise. Zero extend result to 64 bits.
	(-byterev-step): Enclose expressions in a sequence.
	(fiprs): Rewrite semantics.
	(fldp, fldxp): Likewise.
	(fmovdq, fmovls, fmovqd, fmovsl): Implement semantics.
	(ldl): Use disp10x4 operand.
	(ldq): Use disp10x8 operand.
	(ldw, lduw): Use disp10x2 operand.
	(ldxl): Read an SI from memory, not HI.
	(ldxuw, ldxw): Read an HI from memory, not SI.
	(slice-byte): Use correct subword indices.
	(slice-word, slice-word-unop): Likewise.
	(slice-long, slice-long-unop): Likewise.
	(all multimedia insns): Use (-join ..).
	(make-mextr): Rename from erroneously named `make-mextrn'.
	Simplify pmacro defintion.
	(mpermw): Correct semantics.
	(mulsl, mulul): Use correct subword indices.
	(pta): Add one to target address.
	(shardl, sharil): Use correct subword index.
	(shlldl, shllil): Likewise.
	(shlrdl, shlril): Likewise.
	(shori): Use uimm16 operand.
	(stb): Mask bottom 8 bits instead of using (subword ..).
	(stl): Likewise for 32 bits.
	(stw): Likewise for 16 bits.
	(-sthi-byte): New pmacro.
	(sthil): New instruction.
	(sthiq): Likewise.
	(stxb, stxl, stxw): Use correct register indices.
	(subl): Likewise.
	
2000-12-11  Ben Elliston  <bje@redhat.com>

	* sh.cpu (-slice-hi, -slice-si): Remove.
	* sh64-compact.cpu: Apply changes for -join-si.

2000-12-09  Ben Elliston  <bje@redhat.com>

	* sh.cpu (-slice-hi): New pmacro.
	(-slice-si): Likewise.
	(-join-si): Rename from -join2.
	(-join-hi): Rename from -join4.
	(-join-qi): Rename from -join8.

2000-12-08  Ben Elliston  <bje@redhat.com>

	* sh.cpu (h-cr): Make non-virtual.

2000-12-03  Ben Elliston  <bje@redhat.com>

	* sh64-compact.cpu (braf, bsrf): Sign extend register value for
	address computation.
	(fcmpeq, fcmpgt): Helper C functions return BI.

2000-12-01  Ben Elliston  <bje@redhat.com>

	* sh64-compact.cpu (fvc-names): Remove.
	(h-fvc): Name registers inline.
	(h-macl, set): Use (-join2 ..), not (subword ..).
	(h-mach, set): Likewise.
	(f-8-1): Rename from f-8. Update all users.
	(f-4, f-disp4): Remove.
	(xdm, xdn): Likewise.
	(dshci): Append "-compact" to instruction names.
	(xd): New pmacro.
	(cmpstr): Fix semantics.
	(div1): Rewrite semantics.
	(extd): New pmacro.
	(fmov1 to fmov7): Rewrite semantics.
	(negc): Fix semantics.
	(rotl, rotr, rotcl, rotcr): Likewise.
	(subc, subv): Likewise.

2000-11-29  Ben Elliston  <bje@redhat.com>

	* sh.cpu (arch sh, machs): Add sh2, sh3, sh3e and sh4.
	(mach sh2, mach sh3, mach sh3e, mach sh4): Define.
	(mach sh5, bfd-name): Remove.
	(h-gr): Avoid endian-sensitive `subword' rtx.
	(h-dr): Clean up getter and setter expressions.
	(h-endian): Make virtual. Define getter/setter expressions.
	(-join2, -join4, -join8): New private pmacros.

2000-11-24  Ben Elliston  <bje@redhat.com>

	* sh.cpu (sh5 mach): Specify bfd-name.
	(gr-names, dr-names): Remove. Specify in-line.
	(-build-greg-name): New pmacro.
	(h-gr): Use it.
	(h-grc): Likewise.
	(-build-creg-name): New pmacro.
	(h-cr): Use it.
	(-build-freg-name): New pmacro.
	(h-fr): Use it.
	(-build-fpair-name): New pmacro.
	(h-fp): New hardware element.
	(-build-fvec-name): New pmacro.
	(h-fv): Use it.
	(h-fmtx): Provide keyword names.
	(-build-dreg-name): New pmacro.
	(h-dr): Use it.
	(h-tr): Provide keyword names.

2000-11-22  Dave Brolley  <brolley@redhat.com>

	* frv.cpu (cr-undefined): New p-macro.
	(conditional-check-int-condition-code): Set the target CR to undefined
	if the condition is false.
	(cckra): Ditto.
	(cckno): Ditto.
	(conditional-check-float-condition-code): Ditto.
	(cfckra): Ditto.
	(cfckno): Ditto.

2000-11-22  Ben Elliston  <bje@redhat.com>

	* sh64-compact.cpu: Don't redundantly include "simplify.inc".
	
	* sh64-media.cpu (fpf): New operand.
	(fldp, fldxp, fstp, fstxp): Fix semantics.
	(ldloq, trapa): Fix typos in assembly syntax strings.

2000-11-21  Ben Elliston  <bje@redhat.com>

	* sh.cpu (h-dr): Fix getter and setter.
	(ism): New operand.
	(keep-isa?): Keep media.
	* sh64-media.cpu (blink): Improve semantics.
	(fstx): Eliminate use of (join ..).
	* sh64-compact.cpu: Many semantic bug fixes.

2000-11-16  Ben Elliston  <bje@redhat.com>

	* sh-compact.cpu: Rename from this ..
	* sh64-compact.cpu: .. to this.
	* sh-media.cpu: Rename from this ..
	* sh64-media.cpu: .. to this.
	* sh.opc: New file.
	* sh.cpu: Factor out some common hardware.

2000-11-10  Frank Ch. Eigler  <fche@redhat.com>

	* sid-decode.scm (-gen-extract-fn): New fn to generate extract
	functions.  Replaces
	(-gen-extract-case): Gone.
	(-define-all-extractor-fns, -declare-all-extractor-fns): New fns.
	(-gen-all-extractors): Gone.
	(-gen-decode-fn): Tell (gen-decoder) to emit calls to extractor fns.
	Emit extractor declarations and bodies.

2000-10-25  Frank Ch. Eigler  <fche@redhat.com>

	* sid-cpu.scm (-gen-write-fn, -gen-scache-semantic-fn): Swap
	return values.
	* sid-decode.scm (-gen-idesc-decls): Ditto, so writeback function
	returns actual sem_status.

2000-10-23  Frank Ch. Eigler  <fche@redhat.com>

	Support parallel insns via queued writebacks.
	* sid-cpu.scm (cgen-defs.h): Tweak header include guard and comments.
	Enable parallel-exec-type generation.
	(-gen-write-fn, -gen-write-fns): New functions for writeback function
	generation.
	(cgen-write.cxx): Call these.
	(-gen-write-case, -gen-write-switch): Remove.
	(-gen-scache-semantic-fn): Handle par_exec case.
	* sid-decode.scm (-gen-write-fn-name, -gen-write-fn-decls): New.
	(-gen-decode-insn-globals): Call them.
	(cgen-decode.h): Ditto.
	(-gen-idesc-decls): Declare writeback functions too.
	* sid.scm (<hw-register> save-index?): Handle non-scalars.
	(-op-gen-set-trace-parallel): Correct C++ tracing.
	
2000-09-08  Frank Ch. Eigler  <fche@redhat.com>

	* sid.scm (<operand> cxmake-get): Pass #:output-language to
	<derived-operand> op:getter.
	(-op-gen-set-trace): Ditto for op:getter.

2000-09-06  Frank Ch. Eigler  <fche@redhat.com>

	* sid-decode.scm (gen-record-args): Handle derived-operands.

2000-08-24  Frank Ch. Eigler  <fche@redhat.com>

	* sid.scm (-op-gen-set-trace): Support <derived-operand> lvalues.

2000-08-22  Catherine Moore  <clm@cygnus.com>
 
        * frv.opc (parse_d12): Support #gprel12 syntax.
        (parse_s12): Likewise.

2000-08-22  Frank Ch. Eigler  <fche@redhat.com>

	* sid-decode.scm (gen-sfmt-op-argbuf-defns): Add tracing.
	* sid.scm (hardware-base cxmake-get): Don't assert 'ifield type.
	(operand cxmake-get): Handle derived-operands (those with op:getter).
	(derived-operand cxmake-get): Remove.

2000-08-09  Ben Elliston  <bje@redhat.com>

	* sh.cpu: New file.
	* sh-media.cpu: Likewise.
	* sh-compact.cpu: Likewise.

2000-07-27  Dave Brolley  <brolley@redhat.com>

	* frv.cpu (f-hint-taken): New ifield.
	(f-hint-not-taken): New ifield.
	(hint-taken): New pmacro.
	(hint-not-taken): New pmacro.
	(bra): Use hint-taken.
	(bno): Use hint-not-taken.
	(fbra): Use hint-taken.
	(fbno): Use hint-not-taken.
	(bralr): Use hint-taken.
	(bnolr): Use hint-not-taken.
	(fbralr): Use hint-taken.
	(fbnolr): Use hint-not-taken.
	(bcralr): Use hint-taken.
	(bcnolr): Use hint-not-taken.
	(fcbralr): Use hint-taken.
	(fcbnolr): Use hint-not-taken.

2000-07-26  Dave Brolley  <brolley@redhat.com>

	* frv.cpu (cfcmps): Correct syntax.
	(nfdcmps): New insn.
	(cccr-names): Remove CRx.

2000-07-24  Dave Brolley  <brolley@redhat.com>

	* frv.opc (print_hi): Mark unused parameters with ATTRIBUTE_UNUSED.
	(print_lo): Mark unused parameters with ATTRIBUTE_UNUSED.
	* frv.cpu (saturate-unsigned): New pmacro.
	(msathu): Use saturate-unsigned.


Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
change-log-default-name: "ChangeLog.RedHat"
End:
