Generating CPU family headers for multiple isas
Ben Elliston
bje@redhat.com
Wed Nov 22 16:37:00 GMT 2000
Done analysis.
Computing sformat argument buffers ...
ERROR: multiple isas selected (bar baz)
No backtrace available.
On Frank's suggestion, I reverted to Guile 1.3, which has better (working)
backtraces. I see that the error arises here:
[error "multiple isas selected (bar baz)"]
(if (= (length keep-isa) 1) (current-isa-lookup (car keep-isa)) ...)
(if (equal? keep-isa (quote #)) (let (#) (if # # ...)) ...)
(let ((keep-isa #)) (if (equal? keep-isa #) (let # #) ...))
[current-isa]
[isa-integral-insn?]
[#<procedure ()>]
[force #<promise #<procedure ()>>]
[adata-integral-insn? #(#("object" # # ...) (# #f # ...))]
(if (adata-integral-insn? CURRENT-ARCH) 32 ...)
(let * ((base-length #) (chunk-specs #)) (string-list (...))
[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?
Ben
More information about the Cgen
mailing list