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]

Re: Generating CPU family headers for multiple isas


Hi -

On Thu, Nov 23, 2000 at 11:37:25AM +1100, Ben Elliston wrote:
: [...]  I see that the error arises here:
: 	[gen-define-ifields () 0 ...]
: [...]
: This is due to a call in (cgen-cpu.h) to (-gen-extract-macros).
: It looks like this function is meant to emit macros for extracting ifields
: -- this gives me a bad feeling, since these would need to be emitted for
: *each* isa in a multiple-isa cpu.  Any ideas?

Yes.  It looks like you are asking cgen to generate a common cpu.h file
for a multiple-isa machine.  For old simulators, this file contains lots
of isa-specific stuff.  For the m32r/m32rx case, cgen is told to generate
two separate cpu*.h files with one isa each, but this does not apply to
your situation.

(The sid application generates only isa-independent goods into cpu.h,
so this problem does not appear there.  sfmts, insn enums, parexec etc.
all go into isa-specific defs.h files.)

Hm, that reminds me.  Does it make much sense to have isa-specific
hardware?  I can see some cgen-time error checking (to keep isa semantics
limited to isa-visible hardware/operands), but at run time, generating 
a single unified struct of all isas' hardware seems appropriate.

- FChE

PGP signature


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