]>
sourceware.org Git - cgen.git/log
Doug Evans [Thu, 16 Jul 2009 17:43:49 +0000 (17:43 +0000)]
* read.scm (parse-error): Don't print single entry args as a list.
(-reader-process-expanded-1): Convert symbol to string for
string-append.
Doug Evans [Thu, 16 Jul 2009 17:22:44 +0000 (17:22 +0000)]
* insn.scm (multi-insn-instantiate!): Tweak logging message.
Doug Evans [Wed, 15 Jul 2009 16:49:32 +0000 (16:49 +0000)]
* gen-all-doc: Generate index.html.
Doug Evans [Tue, 14 Jul 2009 16:14:25 +0000 (16:14 +0000)]
Fix typo in earlier entry, s/iq20.cpu/iq10.cpu/
Doug Evans [Mon, 13 Jul 2009 20:55:21 +0000 (20:55 +0000)]
Extend pmacro language, add testsuite.
* Makefile.am (SUBDIRS): Add testsuite.
* Makefile.in: Regenerate.
* configure.in (AC_OUTPUT): Create testsuite/Makefile,
testsuite/test-utils.sh.
* configure: Regenerate.
* dev.scm (cload): Handle testsuite app.
(load-testsuite): New function.
* pmacros.scm: (-pmacro-debug?): New global.
(-smacro-table): New global.
(-smacro-lookup, -smacro-set!): New functions.
(-pmacro-make): New argument `syntactic-form?', all callers updated.
(-pmacro-syntactic-form?): New function.
(-pmacro-expected-number, -pmacro-verify-number): New functions.
(-pmacro-expected-integer, -pmacro-verify-integer): New functions.
(-pmacro-expected-non-negative-integer): New function.
(-pmacro-verify-non-negative-integer): New function.
(-pmacro-expand-expr-list): New function.
(-pmacro-process-args-1): Renamed from -pmacro-process-args.
(-pmacro-process-args): Renamed from -pmacro-invoke.
(-pmacro-apply, -smacro-apply): New functions.
(-pmacro-expand): Rewrite syntactic form processing.
(-pmacro-build-lambda): Reformat.
(define-pmacro): Watch for more errors in definition.
(pmacro-debug): New function.
(pmacro-trace): Set/reset -pmacro-debug?.
(all existing builtin pmacro helpers): Rename to -pmacro-builtin-foo.
(-pmacro-builtin-substring): Fix. Add support for `end' marker.
(-pmacro-builtin-for-each, et.al.): New helpers for .for-each, .let,
.if, .case, .cond, .begin, .print, .dump, .error, .list, .ref,
.length, .replicate, .equals, .and, .or, .not, .eq, .ne, .lt, .gt,
.le, .ge, .add, .sub, .mul, .div, .rem, .sll, .srl, .sra, .bitand,
.bitor, .bitxor, bitinv, .car, .cdr, .caar, .cadr, .cdar, .cddr.
(pmacros-init!): Initialize -smacro-table.
Rewrite pmacro initialization.
* read.scm (reader-process-expanded): Renamed from
-reader-process-expanded. All callers updated.
Recognize () as a no-op.
(cpu-load): Tweak logging messages.
* utils.scm (message): Add comment.
* cpu/play.cpu: Add some instructions to play with .let.
* doc/cgenint.texi: Move some debugging related docs to here from
cgen.texi.
* doc/pmacros.texi: Reorganize. Add docs for new builtin pmacros.
* testsuite/Makefile.am: New file.
* testsuite/Makefile.in: New file.
* testsuite/test-utils.sh.in: New file.
* testsuite/run-tests.sh: New file.
* testsuite/testsuite.cpu: New file.
* testsuite/pmacros-1.test: New file.
Doug Evans [Mon, 13 Jul 2009 15:56:04 +0000 (15:56 +0000)]
* decode.scm: Comment and formatting tweaks.
(-build-decode-table-guts): Add more data to logging message.
Doug Evans [Sun, 12 Jul 2009 16:23:38 +0000 (16:23 +0000)]
Add xc16x back until opcodes is updated.
Doug Evans [Sun, 12 Jul 2009 16:03:39 +0000 (16:03 +0000)]
Delete files that now live in ../cpu.
* cpu/iq20.cpu: Delete.
* cpu/iq2000.cpu: Delete.
* cpu/iq2000.opc: Delete.
* cpu/iq2000m.cpu: Delete.
* cpu/m32r.cpu: Delete.
* cpu/m32r.opc: Delete.
* cpu/xc16x.cpu: Delete.
* cpu/xc16x.opc: Delete.
Doug Evans [Fri, 10 Jul 2009 03:32:31 +0000 (03:32 +0000)]
* utils-sim.scm (-gen-decode-bits): New argument `entire-val'.
All callers updated. Work around -ve shifts by referencing the
entire value.
Doug Evans [Fri, 10 Jul 2009 03:20:14 +0000 (03:20 +0000)]
* utils.scm (message): Handle pairs.
DJ Delorie [Wed, 8 Jul 2009 05:37:28 +0000 (05:37 +0000)]
* cpu/mep-ivc2.cpu (cpmovtocsar0_C3, cpmovtocsar1_C3,
cpmovtocc_C3, cpmovtocsar0_P0S_P1, cpmovtocsar1_P0S_P1,
cpmovtocc_P0S_P1): Mark volatile. Note which registers are
written to.
Doug Evans [Tue, 7 Jul 2009 18:52:32 +0000 (18:52 +0000)]
(-parse-insn-format-ifield-spec): Tweak error message.
Doug Evans [Tue, 7 Jul 2009 18:44:10 +0000 (18:44 +0000)]
* cpu/play.cpu (add): Use (ifield enum) for one format element.
* cpu/play.opc: New file.
Allow arbitrary enums in instruction formats, e.g. (f-op1 OP1_4).
* insn.scm (-parse-insn-format-ifield-spec): Recognize (ifield enum).
* doc/rtl.texi (Instructions): Update.
Doug Evans [Tue, 7 Jul 2009 18:27:08 +0000 (18:27 +0000)]
* cgen-opc.scm (-opc-file-path,opc-file-path): Move to opcodes.scm
(opc-arguments, -OPC): Call set-opc-file-path!.
* opcodes.scm (-opc-file-path,opc-file-path): Moved here.
(set-opc-file-path!): New function.
* dev.scm: Mention set-opc-file-path!. Mention doc options.
Doug Evans [Tue, 7 Jul 2009 18:19:07 +0000 (18:19 +0000)]
* opc-ibld.scm (gen-insn-builder): Convert symbols to strings
before passing to gen-c-args.
DJ Delorie [Tue, 7 Jul 2009 01:55:59 +0000 (01:55 +0000)]
[cgen]
* cpu/mep-core.cpu (fsft, ssarb): Mark as VOLATILE.
* cpu/mep-ivc2.cpu (many): Add VOLATILE to more insns that make
unspecified accesses to control registers.
[sid/component/cgen-cpu/mep]
* mep-cop1-16-decode.cxx: Regenerate.
* mep-cop1-16-decode.h: Regenerate.
* mep-cop1-16-defs.h: Regenerate.
* mep-cop1-16-model.cxx: Regenerate.
* mep-cop1-16-model.h: Regenerate.
* mep-cop1-16-sem.cxx: Regenerate.
* mep-cop1-32-decode.cxx: Regenerate.
* mep-cop1-32-decode.h: Regenerate.
* mep-cop1-32-defs.h: Regenerate.
* mep-cop1-32-model.cxx: Regenerate.
* mep-cop1-32-model.h: Regenerate.
* mep-cop1-32-sem.cxx: Regenerate.
* mep-cop1-48-decode.cxx: Regenerate.
* mep-cop1-48-decode.h: Regenerate.
* mep-cop1-48-defs.h: Regenerate.
* mep-cop1-48-model.cxx: Regenerate.
* mep-cop1-48-model.h: Regenerate.
* mep-cop1-48-sem.cxx: Regenerate.
* mep-cop1-64-decode.cxx: Regenerate.
* mep-cop1-64-decode.h: Regenerate.
* mep-cop1-64-defs.h: Regenerate.
* mep-cop1-64-model.cxx: Regenerate.
* mep-cop1-64-model.h: Regenerate.
* mep-cop1-64-sem.cxx: Regenerate.
* mep-core1-decode.cxx: Regenerate.
* mep-core1-decode.h: Regenerate.
* mep-core1-defs.h: Regenerate.
* mep-core1-model.cxx: Regenerate.
* mep-core1-model.h: Regenerate.
* mep-core1-sem.cxx: Regenerate.
* mep-cpu.h: Regenerate.
* mep-decode.cxx: Regenerate.
* mep-decode.h: Regenerate.
* mep-defs.h: Regenerate.
* mep-desc.h: Regenerate.
* mep-model.cxx: Regenerate.
* mep-model.h: Regenerate.
* mep-sem.cxx: Regenerate.
[opcodes]
* mep-desc.c: Regenerate.
* mep-desc.h: Regenerate.
* mep-opc.c: Regenerate.
* mep-opc.h: Regenerate.
DJ Delorie [Thu, 2 Jul 2009 02:10:44 +0000 (02:10 +0000)]
* config/mep/mep-ivc2.cpu: Add VOLATILE to insns that make
unspecified accesses to control registers.
DJ Delorie [Wed, 1 Jul 2009 20:06:42 +0000 (20:06 +0000)]
* cpu/mep-ivc2.cpu (cmov, cmovc, cmovh): Add intrinsic names to VLIW variants.
(ivc2rm, ivc2crn): Make data type consistent with non-VLIW variants.
Doug Evans [Sat, 27 Jun 2009 16:45:34 +0000 (16:45 +0000)]
* gen-all-intrinsics: New file.
Doug Evans [Wed, 24 Jun 2009 15:03:09 +0000 (15:03 +0000)]
* All *.scm files: Update copyright year.
* utils.scm (copyright-fsf, copyright-redhat): Ditto.
Doug Evans [Wed, 24 Jun 2009 14:08:29 +0000 (14:08 +0000)]
Update for 1.1.
DJ Delorie [Wed, 24 Jun 2009 03:06:40 +0000 (03:06 +0000)]
[cgen]
* intrinsics.scm: Updates to support IVC2.
(belongs-to-group?): Check IVC2 slots.
(-slots-attribute): New.
(targets::attributes): Add SLOTS.
(target:add-well-known-intrinsics): Add CPMOV.
(md-insn): Add CPTYPE and CRET?.
(add-md-insn): Likewise.
(add-intrinsic-for-isa): Disable the duplicate tests, as IVC2 has
duplicate insns with different bit patterns.
(write-cgen-insn?): Add cret? support.
(intrinsics.h): Add vector types.
(runtime-op): Add vector support.
(intrinsic-protos.h): Let GCC define its types. Add cret? support.
* cpu/mep-core.cpu: Add CPTYPE and CRET attributes.
* cpu/mep-ivc2.cpu: Update all insns to include type information.
(h-cr-ivc2): Default to typeless.
(h-ccr-ivc2): Fix register width.
(SLOTS): Fix values and default.
(ivc2_*): Add control register names.
(crop, crqp, crpp, croc, crqc, crpc): Default to typeless.
[opcodes]
* mep-desc.c: Regenerate.
* mep-desc.h: Regenerate.
* mep-dis.c: Regenerate.
* mep-ibld.c: Regenerate.
* mep-opc.c: Regenerate.
[sid/component/cgen-cpu/mep]
* ivc2-cop.cxx (ivc2_cphadd_w): Change to return value.
(ivc2_cpsubaca0u_b): Remove debug line.
* ivc2-cpu.h (ivc2_cpccadd_b): Change to return value.
* mep-cop1-16-decode.cxx: Regenerate.
* mep-cop1-16-sem.cxx: Regenerate.
* mep-cop1-32-decode.cxx: Regenerate.
* mep-cop1-32-sem.cxx: Regenerate.
* mep-cop1-48-decode.cxx: Regenerate.
* mep-cop1-48-sem.cxx: Regenerate.
* mep-cop1-64-decode.cxx: Regenerate.
* mep-cop1-64-sem.cxx: Regenerate.
* mep-core1-decode.cxx: Regenerate.
* mep-cpu.h: Regenerate.
* mep-decode.cxx: Regenerate.
* mep-desc.h: Regenerate.
DJ Delorie [Wed, 24 Jun 2009 01:44:52 +0000 (01:44 +0000)]
[cgen]
* cpu/mep.opc (mep_cgen_insn_supported_asm): New, skip the short
version of BSR when assembling VLIW bundles. Use it in mep-asm.c
[opcodes]
* mep-asm.c: Regenerate.
* mep-opc.c: Regenerate.
* mep-opc.h: Regenerate.
Doug Evans [Mon, 22 Jun 2009 15:46:18 +0000 (15:46 +0000)]
* semantics.scm (insn-build-known-values): Fix typo in comment.
Doug Evans [Mon, 22 Jun 2009 07:02:36 +0000 (07:02 +0000)]
* rtl-xform.scm (rtx-simplify-insn): New function.
* html.scm (gen-insn-docs): Call it.
* sem-frags.scm (sem-find-common-frags, -frag-test-data): Ditto.
* iformat.scm (ifmt-analyze): Minor simplification.
Doug Evans [Mon, 22 Jun 2009 06:58:59 +0000 (06:58 +0000)]
Remove now outdated comment.
Doug Evans [Mon, 22 Jun 2009 05:14:09 +0000 (05:14 +0000)]
* semantics.scm (semantic-compile): Change arg sem-code-list to
sem-code.
(semantic-attrs): Ditto.
* iformat.scm (ifmt-analyze): Update.
(ifmt-compute!): Update.
* rtl-traverse.scm (-compile-expr-fn, rtx-compile): Move to
rtl-xform.scm.
(-rtx-trim-args, -rtx-trim-for-doc, rtx-trim-for-doc): Ditto.
* rtl.scm (-rtx-canonicalize-expr, rtx-canonicalize): Ditto.
* semantics.scm (rtx-simplify): Ditto.
(rtx-const-equal, rtx-const-list-equal): Ditto, and make local.
(rtx-simplify-eq-attr-mach, rtx-simplify-eq-attr-insn): Ditto.
(-simplify-expr-fn): Move to rtl-xform.scm.
(-solve-expr-fn, rtx-solve): Ditto.
* rtl-xform.c: New file.
* read.scm: Load it.
Doug Evans [Sun, 21 Jun 2009 17:53:17 +0000 (17:53 +0000)]
* rtl-traverse.scm (-rtx-traverse-expr): Tweak comments.
(-rtx-traverse, rtx-traverse): Ditto.
Doug Evans [Sun, 21 Jun 2009 17:41:47 +0000 (17:41 +0000)]
* rtl-c.scm (delay): Add FIXME, tweak formatting.
Doug Evans [Sun, 21 Jun 2009 06:54:49 +0000 (06:54 +0000)]
* doc/rtl.texi (Expressions): Enhance docs of shift ops.
Doug Evans [Sat, 20 Jun 2009 21:58:01 +0000 (21:58 +0000)]
* configure.in: Update version to 1.1.
* configure: Regenerate.
* read.scm (-CGEN-VERSION): Update to 1.1.0.
Doug Evans [Sat, 20 Jun 2009 21:34:28 +0000 (21:34 +0000)]
* desc-cpu.scm (cgen-desc.h): Tweak logit message for consistency.
(cgen-desc.c): Ditto.
* sid-cpu.scm (cgen-desc.h, cgen-cpu.h, cgen-defs.h): Ditto.
(cgen-write.cxx, cgen-semantics.cxx, cgen-sem-switch.cxx): Ditto.
* sid-decode.scm (cgen-decode.h, cgen-decode.cxx): Ditto.
* sid-model.scm (cgen-model.cxx, cgen-model.h): Ditto.
* sim-arch.scm (cgen-arch.h, cgen-arch.c): Ditto.
(cgen-cpuall.h, cgen-ops.c): Ditto.
* sim-cpu.scm (cgen-cpu.h, cgen-defs.h, cgen-cpu.c): Ditto.
(cgen-read.c, cgen-write.c, cgen-semantics.c): Ditto.
(cgen-sem-switch.c): Ditto.
* sim-decode.scm (cgen-decode.h, cgen-decode.c): Ditto.
* sim-model.c (cgen-model.c): Ditto.
Doug Evans [Thu, 18 Jun 2009 18:23:13 +0000 (18:23 +0000)]
* gen-all-doc: Add fr30, ip2k, iq2000, lm32, mep, mt.
Doug Evans [Thu, 18 Jun 2009 18:18:13 +0000 (18:18 +0000)]
fix typo in previous entry
Doug Evans [Thu, 18 Jun 2009 18:17:50 +0000 (18:17 +0000)]
* html.scm (doc-analyze!): Provide defualt IDOC attribute if missing.
Doug Evans [Thu, 18 Jun 2009 18:12:32 +0000 (18:12 +0000)]
* dev.scm (cload): Change #:arch argument to take the path to the
.cpu file instead of just the name of the architecture.
* read.scm (arch-path): Remove trailing '/'.
(cpu-load): Set `arch-path' to directory of .cpu file.
(-cgen): Don't set `arch-path' here.
(include): Update.
* doc/porting.texi: Update.
Doug Evans [Mon, 15 Jun 2009 05:52:42 +0000 (05:52 +0000)]
* gen-all-doc: Use files in ../cpu where possible.
Doug Evans [Mon, 15 Jun 2009 05:00:26 +0000 (05:00 +0000)]
* Makefile.am (ARCHFILE): Fix path.
* Makefile.in: Regenerate.
* html.scm: Use "pre" instead of "plaintext".
Doug Evans [Sun, 14 Jun 2009 22:07:08 +0000 (22:07 +0000)]
Back out change in version number.
Doug Evans [Sun, 14 Jun 2009 21:58:17 +0000 (21:58 +0000)]
* read.scm (-CGEN-VERSION): Set version number to 1.1.0.
Doug Evans [Sun, 14 Jun 2009 18:32:28 +0000 (18:32 +0000)]
* doc/cgenint.texi: Renamed from internals.texi. Several cleanups.
* doc/app.texi: Cleanup pass.
* doc/cgen.texi: Cleanup pass.
* doc/glossary.texi: Add entries for ifield, iformat, sformat, insn.
* doc/intro.texi: Cleanup pass.
* doc/mdate-sh: New file.
* doc/opcodes.texi: Cleanup pass.
* doc/pmacros.texi: Cleanup pass.
* doc/porting.texi: Cleanup pass.
* doc/rtl.texi: Cleanup pass.
* doc/running.texi: Cleanup pass. Document more runtime options.
* doc/stamp-vti: Update.
* doc/version.texi: Update.
Doug Evans [Sun, 14 Jun 2009 18:18:34 +0000 (18:18 +0000)]
* Makefile.am (AUTOMAKE_OPTIONS): Add 1.9
(GUILE): Fix definition.
* Makefile.in: Regenerate with automake 1.9.6.
* aclocal.m4: Regenerate with aclocal 1.9.6.
* configure.in (AC_PREREQ): Set to 2.59.
(AM_INIT_AUTOMAKE): Change version to 1.1.
(GENINSRC_NEVER): Define.
* configure: Regenerate with autoconf 2.59.
* doc/Makefile.am (info_TEXINFOS): Add cgenint.texi.
(cgen.info,cgen.dvi): Delete.
(cgen_TEXINFOS,cgenint_TEXINFOS): Define.
(noinst_TEXINFOS): Add cgenint.texi.
(DOCFILES): Add missing files.
(MAINTAINERCLEANFILES,DISTCLEANFILES): Define.
* doc/Makefile.in: Regenerate with automake 1.9.6.
Doug Evans [Sun, 14 Jun 2009 17:16:45 +0000 (17:16 +0000)]
* guile.scm: Add "." to %load-path if >= guile version 1.8.
Doug Evans [Sun, 14 Jun 2009 17:14:33 +0000 (17:14 +0000)]
* attr.scm: Removing trailing whitespace.
* cgen-intrinsics.scm: Ditto.
* cgen-sim.scm: Ditto.
* cos.scm: Ditto.
* enum.scm: Ditto.
* guile.scm: Ditto.
* sim.scm: Ditto.
DJ Delorie [Thu, 28 May 2009 22:53:08 +0000 (22:53 +0000)]
[cgen]
* cpu/mep.opc (parse_signed16_range): New.
(parse_unsigned16_range): New.
* cpu/mep-ivc2.cpu (imm16p0, simm16p0): Use them.
[opcodes]
* mep-asm.c: Regenerate.
* mep-desc.c: Regenerate.
DJ Delorie [Wed, 27 May 2009 01:49:44 +0000 (01:49 +0000)]
[cgen/cpu]
* cpu/mep-ivc2.cpu (h-ccr-ivc2): Enable for C3 slots, fix
accumulator names.
(f-ivc2-ccrn-c3hi): New.
(f-ivc2-ccrn-c3lo): New.
(f-ivc2-ccrn-c3): New.
(ivc2c3ccrn): Use it.
[sid/component/cgen-cpu/mep]
* mep-cop1-32-decode.cxx: Regenerate.
* mep-cop1-32-decode.h: Regenerate.
* mep-cop1-32-sem.cxx: Regenerate.
* mep-cop1-48-sem.cxx: Regenerate.
[opcodes]
* mep-asm.c: Regenerate.
* mep-desc.c: Regenerate.
* mep-desc.h: Regenerate.
* mep-dis.c: Regenerate.
* mep-ibld.c: Regenerate.
* mep-opc.c: Regenerate.
* mep-opc.h: Regenerate.
DJ Delorie [Fri, 22 May 2009 17:37:43 +0000 (17:37 +0000)]
[cgen]
* cpu/mep.opc (mep_examine_ivc2_insns): Fix bug in ivc2 decoder.
(mep_config_map): Regenerate.
* cpu/mep-ivc2.cpu (h-ccr-ivc2): Add generic names as well as
ivc2-specific names.
(simm8p20): New.
(cmovc): move to after field definitions, use ivc2-specific
register names.
(cpmovi_b_P0S_P1): New.
[utils/mep]
* mepcfgtool.c (do_cgen_config_opc): Propagate endianness and VLIW
size to default configuration.
[sid/component/cgen-cpu/mep]
* mep-cop1-16-decode.cxx: Regenerate.
* mep-cop1-16-decode.h: Regenerate.
* mep-cop1-16-model.cxx: Regenerate.
* mep-cop1-16-model.h: Regenerate.
* mep-cop1-16-sem.cxx: Regenerate.
* mep-cop1-64-decode.cxx: Regenerate.
* mep-cop1-64-decode.h: Regenerate.
* mep-cop1-64-model.cxx: Regenerate.
* mep-cop1-64-model.h: Regenerate.
* mep-cop1-64-sem.cxx: Regenerate.
[opcodes]
* mep-asm.c: Regenerate.
* mep-desc.c: Regenerate.
* mep-desc.h: Regenerate.
* mep-dis.c: Regenerate.
* mep-ibld.c: Regenerate.
* mep-opc.c: Regenerate.
* mep-opc.h: Regenerate.
DJ Delorie [Tue, 19 May 2009 23:34:36 +0000 (23:34 +0000)]
* cpu/mep.opc: Regenerate configuration.
(parse_cdisp10): Only check CPU flags, not COP flags.
(check_configured_mach): Likewise.
DJ Delorie [Thu, 14 May 2009 01:39:58 +0000 (01:39 +0000)]
* intrinsics.scm (insns.md): Add RTL predicates.
(intrinsics.h): Remove old C intrinsics.
DJ Delorie [Thu, 30 Apr 2009 21:07:57 +0000 (21:07 +0000)]
* mep-ivc2.cpu: New.
* mep-core.cpu: Regenerated. Add support for deferred register
writes.
(SLOT): Add IVC2 slot types.
(sim-syscall): Rename to something more appropriate.
* mep-ext-cop.cpu: Regenerate.
* mep.opc: Regenerate. Add "coprocessor supported" define area.
(print_slot_insn): New.
(mep_examine_ivc2_insns): New.
(mep_print_insn_set_ivc2_mode): New.
(mep_print_insn): Support IVC2 slotting.
DJ Delorie [Mon, 20 Apr 2009 19:38:09 +0000 (19:38 +0000)]
* intrinsics.scm (intrinsics-analyze!): Include aliases.
(guess-mode): Drop COP* syntax.
(need-insn): Add "--syscall--" to the list.
(enum-type): Drop COP* syntax.
(intrinsics.h): Likewise.
(intrinsic-protos.h): Change file header to allow it to be
included.
DJ Delorie [Sat, 18 Apr 2009 02:56:43 +0000 (02:56 +0000)]
[cgen]
* cpu/mep-c5.cpu (f-12s20): Change to signed.
(lhucpm1): Limit to C5 mach.
(dsp0,dsp1): Rewrite as aliases so that intrinsics are generated.
* cpu/mep-core.cpu (extend-cdisp10): New.
(f-cdisp10): Change to signed, use extend-cdisp10 to sign extend.
[opcodes]
* mep-desc.c: Regenerate.
* mep-ibld.c: Regenerate.
* mep-opc.c: Regenerate.
* mep-opc.h: Regenerate.
[sid/component/cgen-cpu/mep]
* mep-core1-decode.cxx: Regenerate.
* mep-core1-decode.h: Regenerate.
* mep-decode.cxx: Regenerate.
* mep-decode.h: Regenerate.
DJ Delorie [Sat, 18 Apr 2009 01:48:08 +0000 (01:48 +0000)]
Missed ChangeLog Entry:
* cpu/mep-c5.cpu: New.
* cpu/mep-core.cpu: Add C5 support.
* cpu/mep.opc: Likewise.
DJ Delorie [Wed, 8 Apr 2009 20:39:34 +0000 (20:39 +0000)]
[cgen]
* cpu/mep-c5.cpu: New.
* cpu/mep-core.cpu: Add C5 support.
* cpu/mep.opc: Likewise.
[opcodes]
* mep-asm.c: Regenerate.
* mep-desc.c: Regenerate.
* mep-desc.h: Regenerate.
* mep-dis.c: Regenerate.
* mep-ibld.c: Regenerate.
* mep-opc.c: Regenerate.
* mep-opc.h: Regenerate.
[sid]
* component/cache/cache.cxx (cache_component::cache_component):
Add write_hint_pin(). Attach it to write-hint.
(cache_component::write_hint): New.
* component/cache/cache.h (write_hint_pin): New.
(write_hint): New.
* component/cgen-cpu/mep/Makefile.am: Regenerate.
* component/cgen-cpu/mep/Makefile.in: Regenerate.
* component/cgen-cpu/mep/mep-core1-decode.cxx: Regenerate.
* component/cgen-cpu/mep/mep-core1-decode.h: Regenerate.
* component/cgen-cpu/mep/mep-core1-defs.h: Regenerate.
* component/cgen-cpu/mep/mep-core1-model.cxx: Regenerate.
* component/cgen-cpu/mep/mep-core1-model.h: Regenerate.
* component/cgen-cpu/mep/mep-core1-sem.cxx: Regenerate.
* component/cgen-cpu/mep/mep-decode.cxx: Regenerate.
* component/cgen-cpu/mep/mep-decode.h: Regenerate.
* component/cgen-cpu/mep/mep-defs.h: Regenerate.
* component/cgen-cpu/mep/mep-desc.h: Regenerate.
* component/cgen-cpu/mep/mep-model.cxx: Regenerate.
* component/cgen-cpu/mep/mep-model.h: Regenerate.
* component/cgen-cpu/mep/mep-sem.cxx: Regenerate.
* component/cgen-cpu/mep/mep.cxx (mep_cpu): Connect
write-hint pin.
(do_cache): Add C5 support.
(do_cache_prefetch): Likewise.
(do_casb3, do_cash3, do_casw3): New.
* component/cgen-cpu/mep/mep.h: Add C5 support and write-hint pin.
(do_casb3, do_cash3, do_casw3): New.
* component/families/mep/Makefile.in: Regenerate.
* component/families/mep/dsu.in: Add C5 support.
* main/dynamic/mainDynamic.cxx: Add C5 support.
* main/dynamic/mepCfg.cxx: Connect write-hint pin.
* main/dynamic/mepCfg.h: Add C5 support.
Nick Clifton [Wed, 18 Feb 2009 17:13:03 +0000 (17:13 +0000)]
* fr30-opc.c: Regenerate.
* frv-opc.c: Regenerate.
* ip2k-opc.c: Regenerate.
* iq2000-opc.c: Regenerate.
* lm32-opc.c: Regenerate.
* m32c-opc.c: Regenerate.
* m32r-opc.c: Regenerate.
* mep-opc.c: Regenerate.
* mt-opc.c: Regenerate.
* xc16x-opc.c: Regenerate.
* xstormy16-opc.c: Regenerate.
* tic54x-dis.c (print_instruction): Avoid compiler warning on
sprintf call.
* opc-itab.scm (<>_cgen_init_opcode_table): Avoid compiler warning
about calling memset with a zero length.
DJ Delorie [Tue, 3 Feb 2009 21:30:16 +0000 (21:30 +0000)]
* cpu/mep-core.cpu: Update to new MeP configuration.
* cpu/mep-ext-cop.cpu: Likewise.
* cpu/mep.opc: Likewise.
Frank Ch. Eigler [Tue, 23 Dec 2008 17:31:59 +0000 (17:31 +0000)]
2008-12-23 Frank Ch. Eigler <fche@redhat.com>
* sim.scm (-op-gen-queued-write): Add needed symbol->string.
Doug Evans [Wed, 17 Dec 2008 04:27:18 +0000 (04:27 +0000)]
Update my email address.
Dave Brolley [Tue, 17 Jun 2008 18:04:42 +0000 (18:04 +0000)]
2008-06-17 Dave Brolley <brolley@redhat.com>
* cpu/xstormy16.cpu (h-pc): Add a set handler.
(h-gr): Likewise.
Dave Brolley [Tue, 13 Nov 2007 17:19:31 +0000 (17:19 +0000)]
2007-11-13 Dave Brolley <brolley@redhat.com>
* cgen-intrinsics.scm (load-files): Remove reference to fixup.scm.
Dave Brolley [Mon, 5 Nov 2007 15:46:19 +0000 (15:46 +0000)]
2007-11-05 Dave Brolley <brolley@redhat.com>
* intrinsics.scm,cgen-intrinsics.scm: New application which
generates code to support intrinsic functions for insns in the
mep architecture in gcc.
Dave Brolley [Fri, 21 Sep 2007 18:57:39 +0000 (18:57 +0000)]
2007-09-21 Dave Brolley <brolley@redhat.com>
* cpu/mep-core.cpu (rnc, rnuc, rns, rnus, rn3c, rn3uc, rn3s)
(rn3us): CDATA attribute now LONG.
Dave Brolley [Tue, 21 Aug 2007 19:37:43 +0000 (19:37 +0000)]
2007-08-21 Dave Brolley <brolley@redhat.com>
* rtl-c.scm (const): Generate call to MAKEDI for integers larger
than 32 bits.
Nick Clifton [Thu, 5 Jul 2007 09:49:03 +0000 (09:49 +0000)]
Change source files over to GPLv3.
Nick Clifton [Tue, 22 May 2007 09:16:36 +0000 (09:16 +0000)]
Use @copying around copyright notices
Dave Brolley [Mon, 5 Feb 2007 19:46:38 +0000 (19:46 +0000)]
2007-02-05 Dave Brolley <brolley@redhat.com>
* *mep*: New cpu description for Toshiba Media Processor (MeP).
Dave Brolley [Mon, 5 Feb 2007 19:43:30 +0000 (19:43 +0000)]
2007-02-05 Dave Brolley <brolley@redhat.com>
* opc-asmdis.scm (-gen-init-asm-fn): Include CGEN_ASM_INIT_HOOK
in the generated code for @arch@_cgen_init_asm if it is defined.
* Contribute the following changes:
2005-04-05 Richard Sandiford <rsandifo@redhat.com>
* attr.scm (<string-attribute>): New attribute class.
(attr-kind): Handle <string-attribute>.
(parse-simple-attribute): New function.
(<boolean-attribute> 'parse-value): Use parse-simple-attribute.
(<bitset-attribute> 'parse-value): Likewise.
(<boolean-attribute> 'parse-value): Likewise.
(<enum-attribute> 'parse-value): Likewise.
(<string-attribute> 'parse-value): New function.
(-attr-parse): Handle <string-attribute>.
(-attr-read): Likewise.
(<string-attribute> 'gen-value-for-defn-raw): New function.
(<string-attribute> 'gen-value-for-defn): New function.
Dave Brolley [Tue, 7 Nov 2006 21:12:08 +0000 (21:12 +0000)]
2006-11-07 Dave Brolley <brolley@redhat.com>
* sid-model.scm (gen-model-unit-fn-decl): Use symbol->string where
necessary.
Dave Brolley [Wed, 18 Oct 2006 18:04:40 +0000 (18:04 +0000)]
2006-10-18 Dave Brolley <brolley@redhat.com>
* Contribute the following changes:
2006-07-11 Dave Brolley <brolley@redhat.com>
* cpu/sh64-compact.cpu (movual, movual2): New insns.
(movcol): New insn.
* cpu/sh.cpu (sh4a-nofpu-models): New pmacro.
* sid.scm (-op-gen-delayed-set-maybe-trace): If delay used, note the
hardware or memory mode which was used.
* sid-cpu.scm (hw-need-write-stack?): New function.
(-gen-hw-stream-and-destream-fns): Compute stack-regs. Use it to
identify hardware which uses write stacks.
(useful-mode-names): Renamed to write-stack-memory-mode-names.
Initialized to an empty list.
(-gen-writestacks, -gen-reset-fn, -gen-unified-write-fn): Use
hw-need-write-stack?.
* hardware.scm (used-in-delay-rtl?): New member of <hardware-base>.
(define-getters <hardware-base>): Define used-in-delay-rtl?.
(used-in-delay-rtl?): New method of <hardware-base>.
(hw-used-in-delay-rtl?): New function.
2006-06-20 Dave Brolley <brolley@redhat.com>
* sid.scm (gen-attr-type): Removed.
* cpu/sh.cpu (SH2a-nofpu-MACH): Add sh5.
(SH2a-MACH): Add sh5.
(sh2a-nofpu-models): Add units for sh5.
(sh2a-fpu-models): Likewise.
2006-06-15 Dave Brolley <brolley@redhat.com>
* cpu/sh-sim.cpu: New file.
* cpu/sh-sid.cpu: New file.
* cpu/sh64-media.cpu (dshci): Add xtiming argument and splice it in.
(All fields): Remap for (insn-lsb0? #f)
(All insns): Add timing specs.
* cpu/sh64-compact.cpu (dshcf,dshcop): Replace 'ignored' argument with
'xattrs' and .splice it in.
(32-BIT-INSN,SH4-GROUP,SH4A-GROUP): New insn attributes.
(h-frc,h-drc): Add PROFILE attribute.
(h-fpccr): Removed.
(h-vbr): New hardware.
(All fields): Remap for (insn-lsb0? #f)
(f-imm20-hi,f-imm20-lo,f-imm20): New fields.
(fr0,fmovm,fmovn,imm20,imm12x4,imm12x8,vbr): New operands.
(fpscr): Use h-fpscr.
(fsdm,fsdn): Use h-fsd.
(dshci): Add xtiming argument and splice it in.
(dr,xd): pmacros removed.
(All insns): Add timing specs, *-MACH attribibutes,
SH4{A}-GROUP attributes.
(divu,mulr,ldc-vbr,ldc-sr,ldcl-vbr,movl12,movl13,stcl-vbr): New insns.
* cpu/sh.cpu): Include sh-sid.cpu or sh-sim.cpu depending on whether
we're being processed for sim or sid.
(define-arch): Change insn-lsb0? for #f. Add machs sh2e, sh2a-fpu,
sh2a-nofpu, sh4-nofpu, sh4a-nofpu, sh4a, sh4al.
(define-isa compact): Add (isa-parallel-insns 2).
(define-isa media): Add (isa-parallel-insns 2). Add
(default-insn-word-bitsize 32). Change base-insn-bitsize to 32.
(define-mach): Add sh2e, sh2a-fpu, sh2a-nofpu, sh4-nofpu, sh4a-nofpu,
sh4a, sh4al
(SH2-MACH, SH2e-MACH, SH2a-nofpu-MACH, SH2a-MACH, SH3-MACH)
(SH3e-MACH, SH4-nofpu-MACH, SH4-MACH, SH4a-nofpu-MACH, SH4a-MACH)
(SH4al-MACH, SH5-MACH): New pmacros.
(common-units, common-fp-units, sh2a-nofpu-units, sh2a-fpu-units)
(sh4-nofpu-units, sh4-common-fp-units, sh5-media-units)
(sh5-media-fp-units, common-model, common-model-with-fp)
(sh3-model, sh3e-model): New pmacros.
(define-model sh2): New model.
(define-model sh2e): New model.
(define-model sh3): New model.
(define-model sh3e): New model.
(define-model sh2a-nofpu): New model.
(define-model sh2a-fpu): New model.
(define-model sh4-nofpu): New model.
(define-model sh4): New model.
(define-model sh4a-nofpu): New model.
(define-model sh4a): New model.
(define-model sh4al): New model.
(define-model sh5-media): New model.
(define-model sh5): Add all units.
(all-models, sh2e-models, sh2a-nofpu-models, sh2a-fpu-models)
(sh3-models, sh3e-models, sh4-nofpu-models, sh4-models)
(sh5-media-models, shad-models, fsqrt-models): New pmacros.
(h-pc): Add PROFILE attribute.
(h-fr): Likewise.
(h-tr): Likewise.
(h-gr,h-grc): Likewise.
(h-cr): Set h-sr in setter.
(h-frbit): Get/Set h-fpscr.
(h-szbit,h-prbit): Likewise.
(h-fp): Add PROFILE attribute. Now indexed by even indices 0-62.
Add getter and setter.
(h-fc): Add PROFILE attribute. Now indexed by quad indices 0-60.
Adjust getter and setter.
(h-fmtx): Add PROFILE attribute. Now indexed by 0, 16, 32 and 48.
Adjust getter and setter.
(h-dr): Add PROFILE attribute. Now indexed by even indices 0-62.
(h-fsd,h-fmov): New hardware.
Nick Clifton [Mon, 24 Jul 2006 13:49:48 +0000 (13:49 +0000)]
Fix spelling typos
Dave Brolley [Fri, 14 Jul 2006 18:49:32 +0000 (18:49 +0000)]
2006-07-14 Dave Brolley <brolley@redhat.com>
* sid.scm (-op-gen-delayed-set-maybe-trace): If delay used, note the
hardware or memory mode which was used.
* sid-cpu.scm (hw-need-write-stack?): New function.
(-gen-hw-stream-and-destream-fns): Compute stack-regs. Use it to
identify hardware which uses write stacks.
(useful-mode-names): Renamed to write-stack-memory-mode-names.
Initialized to an empty list.
(-gen-writestacks, -gen-reset-fn, -gen-unified-write-fn): Use
hw-need-write-stack?.
* hardware.scm (used-in-delay-rtl?): New member of <hardware-base>.
(define-getters <hardware-base>): Define used-in-delay-rtl?.
(used-in-delay-rtl?): New method of <hardware-base>.
(hw-used-in-delay-rtl?): New function.
Dave Brolley [Tue, 20 Jun 2006 19:51:11 +0000 (19:51 +0000)]
2006-06-20 Dave Brolley <brolley@redhat.com>
* sid.scm (gen-attr-type): Removed.
Dave Brolley [Wed, 10 May 2006 17:49:38 +0000 (17:49 +0000)]
2006-05-10 Dave Brolley <brolley@redhat.com>
* read.scm (cmd-if): Provide the correct argument to reader-error. Add
support for (if (application-is? <appname>) (...) (...)).
Dave Brolley [Wed, 10 May 2006 16:24:53 +0000 (16:24 +0000)]
2006-05-10 Dave Brolley <brolley@redhat.com>
* read.scm (-cgen): Add trailing "/" to arch-path.
* utils.scm (dirname): Removed. dirname is a primitive function.
Dave Brolley [Tue, 9 May 2006 19:00:12 +0000 (19:00 +0000)]
2006-05-09 Dave Brolley <brolley@redhat.com>
* sid-cpu.scm (-gen-hw-stream-and-destream-fns): Use symbol->string instead of
object->string om the mode.
(-hw-gen-write-stack-decl): Likewise.
Dave Brolley [Tue, 9 May 2006 18:41:13 +0000 (18:41 +0000)]
2006-05-09 Dave Brolley <brolley@redhat.com>
* utils-sim.scm (-gen-decode-insn-entry): Generated code should shift
'entire_insn' not 'base_insn'.
Dave Brolley [Tue, 9 May 2006 18:33:04 +0000 (18:33 +0000)]
2006-05-09 Dave Brolley <brolley@redhat.com>
* sid-model.scm (-gen-model-class-decls): Handle the case where insn-timing
is null.
* sim.scm (-gen-arch-model-decls): Likewise.
Dave Brolley [Tue, 9 May 2006 18:24:22 +0000 (18:24 +0000)]
2006-05-09 Dave Brolley <brolley@redhat.com>
* utils.scm (dirname): New function.
Dave Brolley [Tue, 9 May 2006 18:07:51 +0000 (18:07 +0000)]
2006-05-09 Dave Brolley <brolley@redhat.com>
* sid-cpu.scm (-gen-scache-semantic-fn): Generate code to set
abuf->written if profiling.
Dave Brolley [Tue, 9 May 2006 16:17:07 +0000 (16:17 +0000)]
2006-05-09 Dave Brolley <brolley@redhat.com>
* read.scm (include): Use arch-path as file location.
(arch-path): Define it with a default setting.
(-cgen): Update arch-path when "-a" option is specified.
Steve Ellcey [Fri, 5 May 2006 17:18:25 +0000 (17:18 +0000)]
* configure.in: Remove AC_ARG_PROGRAM.
* configure: Regenerate with autoconf 2.59.
Hans-Peter Nilsson [Tue, 14 Mar 2006 12:48:21 +0000 (12:48 +0000)]
* dev.scm (cload) <SID-SIMULATOR>: New case, duplicated from
SIMULATOR.
Nick Clifton [Fri, 3 Mar 2006 15:57:44 +0000 (15:57 +0000)]
Fix parseing functions to return an error message if the parse failed
Nick Clifton [Fri, 17 Feb 2006 14:36:22 +0000 (14:36 +0000)]
Add support for the Infineon XC16X.
Nick Clifton [Fri, 10 Feb 2006 12:05:12 +0000 (12:05 +0000)]
Fix %hi() operator for 64-bit hosts.
Nathan Sidwell [Wed, 28 Dec 2005 18:59:24 +0000 (18:59 +0000)]
* sid-cpu.scm (-gen-hw-stream-and-destream-fns): Stringize mode
for concatenation.
(-hw-gen-write-stack-decl): Likewise.
Hans-Peter Nilsson [Mon, 5 Dec 2005 01:27:23 +0000 (01:27 +0000)]
* utils-sim.scm (-gen-decode-insn-entry): Correct last change for
non-(adata-integral-insn? CURRENT-ARCH) case.
Dave Brolley [Fri, 28 Oct 2005 19:30:02 +0000 (19:30 +0000)]
2005-10-28 Dave Brolley <brolley@redhat.com>
Contribute the following changes:
2005-09-19 Dave Brolley <brolley@redhat.com>
* attr.scm (gen-value-for-defn-raw): New methods.
(gen-value-for-defn): Don't test for 'SID-SIMULATOR. Call
gen-value-for-defn-raw.
* sid.scm (gen-obj-attr-sid-defn): Call gen-value-for-defn-raw.
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
"opcode/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.
Alan Modra [Thu, 27 Oct 2005 06:57:56 +0000 (06:57 +0000)]
* cpu/m32r.opc (parse_hi16): Do not assume a 32-bit host word size.
DJ Delorie [Mon, 24 Oct 2005 22:56:45 +0000 (22:56 +0000)]
* operand.scm (-anyof-merge-syntax): Print a more useful error
message.
Nick Clifton [Wed, 19 Oct 2005 14:44:16 +0000 (14:44 +0000)]
* m32r.opc (parse_slo16): Fix bad application of previous patch.
Nick Clifton [Tue, 18 Oct 2005 07:53:17 +0000 (07:53 +0000)]
m32r.opc (parse_slo16): Better version of previous patch.
Nick Clifton [Fri, 14 Oct 2005 08:33:27 +0000 (08:33 +0000)]
m32r.opc (parse_slo16): Do not assume a 32-bit host word size.
Dave Brolley [Tue, 2 Aug 2005 19:30:10 +0000 (19:30 +0000)]
2005-08-02 Dave Brolley <brolley@redhat.com>
* rtl-c.scm (s-unop): Don't dereference
CGEN_CPU_FPU (current_cpu)->ops->xxxxx in the generated code.
(s-binop, s-convop, s-cmpop): Likewise.
Dave Brolley [Fri, 29 Jul 2005 19:25:33 +0000 (19:25 +0000)]
2005-07-29 Dave Brolley <brolley@redhat.com>
* sid-cpu.scm (-gen-scache-semantic-fn): Generate a declation of 'writte
n'
if with-profile or with-parallel-write.
(cgen-semantics.cxx): Make the @prefix@ namespace available if with-para
llel.
Dave Brolley [Fri, 29 Jul 2005 18:51:24 +0000 (18:51 +0000)]
2005-07-29 Dave Brolley <brolley@redhat.com>
* operand.scm (op:new-mode): Convert (obj:name op) to a string for
string-append.
Alan Modra [Fri, 15 Jul 2005 13:57:38 +0000 (13:57 +0000)]
* cpu/fr30.opc (print_register_list): Correct format strings.
* cpu/ip2k.opc: Likewise.
Nick Clifton [Tue, 5 Jul 2005 15:07:45 +0000 (15:07 +0000)]
Fix compile time warnings from a GCC 4.0 compiler
Nick Clifton [Fri, 1 Jul 2005 11:16:30 +0000 (11:16 +0000)]
Update function declarations to ISO C90 formatting
Dave Brolley [Wed, 15 Jun 2005 21:28:19 +0000 (21:28 +0000)]
2005-06-15 Dave Brolley <brolley@redhat.com>
* sid-cpu.scm (-gen-hw-stream-and-destream-fns): New function.
(cgen-cpu.h): Call it.
Contributed on behalf of Graydon Hoare
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 ...).
This page took 0.099275 seconds and 5 git commands to generate.