Index: desc-cpu.scm =================================================================== RCS file: /cvs/src/src/cgen/desc-cpu.scm,v retrieving revision 1.13 diff -c -p -r1.13 desc-cpu.scm *** desc-cpu.scm 2 Dec 2002 21:53:53 -0000 1.13 --- desc-cpu.scm 11 Feb 2003 19:54:01 -0000 *************** static const CGEN_MACH @arch@_cgen_mach_ *** 128,135 **** (define (gen-ifld-defns) (logit 2 "Generating ifield table ...\n") ! (let* ((ifld-list (find (lambda (f) (not (has-attr? f 'VIRTUAL))) ! (non-derived-ifields (current-ifld-list)))) (all-attrs (current-ifld-attr-list)) (num-non-bools (attr-count-non-bools all-attrs))) (string-list --- 128,134 ---- (define (gen-ifld-defns) (logit 2 "Generating ifield table ...\n") ! (let* ((ifld-list (current-ifld-list)) (all-attrs (current-ifld-attr-list)) (num-non-bools (attr-count-non-bools all-attrs))) (string-list *************** const CGEN_IFLD @arch@_cgen_ifld_table[] *** 149,160 **** " { " (ifld-enum ifld) ", " "\"" (obj:name ifld) "\", " ! (number->string (ifld-word-offset ifld)) ", " ! (number->string (ifld-word-length ifld)) ", " ! (number->string (ifld-start ifld #f)) ", " ! (number->string (ifld-length ifld)) ", " (gen-obj-attr-defn 'ifld ifld all-attrs ! num-non-bools gen-A-attr-mask) " },\n"))) ifld-list) "\ --- 148,164 ---- " { " (ifld-enum ifld) ", " "\"" (obj:name ifld) "\", " ! (if ! (or (has-attr? ifld 'VIRTUAL) ! (derived-ifield? ifld)) ! "0, 0, 0, 0," ! (string-append ! (number->string (ifld-word-offset ifld)) ", " ! (number->string (ifld-word-length ifld)) ", " ! (number->string (ifld-start ifld #f)) ", " ! (number->string (ifld-length ifld)) ", ")) (gen-obj-attr-defn 'ifld ifld all-attrs ! num-non-bools gen-A-attr-mask) " },\n"))) ifld-list) "\ *************** const CGEN_HW_ENTRY @arch@_cgen_hw_table *** 404,410 **** (set! field-ref (string-append "&" (ifld-enum fld) "_MULTI_IFIELD[0]")) (set! field-count (number->string (length (elm-get fld 'subfields))))) ; else ! (set! field-ref (string-append "&@arch@_cgen_ifld_table[" (ifld-number fld) "]")))) (string-append "{ " field-count ", { (const PTR) " field-ref " } }"))) (define (gen-multi-ifield-nodes) --- 408,414 ---- (set! field-ref (string-append "&" (ifld-enum fld) "_MULTI_IFIELD[0]")) (set! field-count (number->string (length (elm-get fld 'subfields))))) ; else ! (set! field-ref (string-append "&@arch@_cgen_ifld_table[" (ifld-enum fld) "]")))) (string-append "{ " field-count ", { (const PTR) " field-ref " } }"))) (define (gen-multi-ifield-nodes)