This is the mail archive of the cgen@sources.redhat.com mailing list for the CGEN project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: sid thumb file generation error


Hi -

> Including file thumb.cpu ...
> ERROR: ../../../../../src/sid/component/cgen-cpu/arm7t/../../../../cgen/cpu/thumb.cpu:46: define-ifield: ifield already defined::
>  (f-op3)
> [...]
> For now, an easier fix is not flag an error for objects from disjoint isas.
> I'll work on this tomorrow.

A related problem was pointed out by a thumb sid user on the net a while
ago: the sid decoders were confused by the different base-insn-size for
arm vs thumb.  I have been planning to fix it thusly:

Index: mach.scm
===================================================================
RCS file: /cvs/src/src/cgen/mach.scm,v
retrieving revision 1.5
diff -u -p -r1.5 mach.scm
--- mach.scm    10 Jun 2003 21:22:02 -0000      1.5
+++ mach.scm    18 Jun 2003 14:27:51 -0000
@@ -1358,9 +1358,12 @@
 ; All selected isas must have same value or error.
 
 (define (state-base-insn-bitsize)
-  (let ((bib (map isa-base-insn-bitsize (current-isa-list))))
-    ; FIXME: ensure all have same value.
-    (car bib))
+  (if (with-multiple-isa?)
+      (let ((bib (map isa-base-insn-bitsize (current-isa-list))))
+       (logit 4 "current-isa-list=" (map obj:name (current-isa-list)) " bits=" bib "\n")
+                                       ; FIXME: ensure all have same value.
+       (car bib))
+      (isa-base-insn-bitsize (current-isa)))
 )
 
 ; Return parallel-insns spec.



- FChE


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]