public inbox for cgen@sourceware.org
 help / color / mirror / Atom feed
* sid thumb file generation error
@ 2003-06-18  6:38 Doug Evans
  2003-06-18 14:28 ` Frank Ch. Eigler
  2003-07-08 16:31 ` Doug Evans
  0 siblings, 2 replies; 5+ messages in thread
From: Doug Evans @ 2003-06-18  6:38 UTC (permalink / raw)
  To: fche; +Cc: cgen

Sorry about this:

make cgen-all
-->
Including file thumb.cpu ...
ERROR: ../../../../../src/sid/component/cgen-cpu/arm7t/../../../../cgen/cpu/thumb.cpu:46: define-ifield: ifield already defined::
 (f-op3)

I fixed the rule in cgen-cpu/Makefile.am so the file generation
will stop when there's a failure now.

Down the road maybe the thing to do is move fields,operands,insns,minsns
to the <isa> class.
[Maybe h/w too, except an arm/thumb chip only has one pc.]

For now, an easier fix is not flag an error for objects from disjoint isas.
I'll work on this tomorrow.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: sid thumb file generation error
  2003-06-18  6:38 sid thumb file generation error Doug Evans
@ 2003-06-18 14:28 ` Frank Ch. Eigler
  2003-07-08 16:31 ` Doug Evans
  1 sibling, 0 replies; 5+ messages in thread
From: Frank Ch. Eigler @ 2003-06-18 14:28 UTC (permalink / raw)
  To: Doug Evans; +Cc: cgen

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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: sid thumb file generation error
  2003-06-18  6:38 sid thumb file generation error Doug Evans
  2003-06-18 14:28 ` Frank Ch. Eigler
@ 2003-07-08 16:31 ` Doug Evans
  2003-07-09 19:40   ` Frank Ch. Eigler
  1 sibling, 1 reply; 5+ messages in thread
From: Doug Evans @ 2003-07-08 16:31 UTC (permalink / raw)
  To: fche; +Cc: cgen

Frank wrote:
 > 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.

For my own education, do you recall what change caused this?
IIRC, the sid arm/thumb simulator was working pretty well in this regard
at one point.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: sid thumb file generation error
  2003-07-08 16:31 ` Doug Evans
@ 2003-07-09 19:40   ` Frank Ch. Eigler
  2003-07-10  0:41     ` Doug Evans
  0 siblings, 1 reply; 5+ messages in thread
From: Frank Ch. Eigler @ 2003-07-09 19:40 UTC (permalink / raw)
  To: Doug Evans; +Cc: cgen

Hi -

>  > 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.
> 
> For my own education, do you recall what change caused this?
> IIRC, the sid arm/thumb simulator was working pretty well in this regard
> at one point.

I have no direct recollection.  Either a sid or a cgen change could
have resulted in the base_insn_size interpretation mismatch for the
thumb instructions, but there appears to be no relevant sid ChangeLog
entry.

Anyway, the proposed patch I posted seems to solve the problem in a
reasonably elegant way: it lets cgen understand that different ISAs
have different base-insn-size units.

- FChE

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: sid thumb file generation error
  2003-07-09 19:40   ` Frank Ch. Eigler
@ 2003-07-10  0:41     ` Doug Evans
  0 siblings, 0 replies; 5+ messages in thread
From: Doug Evans @ 2003-07-10  0:41 UTC (permalink / raw)
  To: Frank Ch. Eigler; +Cc: cgen

Frank Ch. Eigler writes:
 > I have no direct recollection.  Either a sid or a cgen change could
 > have resulted in the base_insn_size interpretation mismatch for the
 > thumb instructions, but there appears to be no relevant sid ChangeLog
 > entry.
 > 
 > Anyway, the proposed patch I posted seems to solve the problem in a
 > reasonably elegant way: it lets cgen understand that different ISAs
 > have different base-insn-size units.

Sure, I don't have a problem with the patch.
I was just looking for some history.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2003-07-10  0:41 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-06-18  6:38 sid thumb file generation error Doug Evans
2003-06-18 14:28 ` Frank Ch. Eigler
2003-07-08 16:31 ` Doug Evans
2003-07-09 19:40   ` Frank Ch. Eigler
2003-07-10  0:41     ` Doug Evans

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).