[Openmcl-devel] Vinsn Error

Brent Fulgham bfulg at pacbell.net
Thu Jan 11 21:49:21 PST 2007


I was trying to build the current version of Maxima (5.11.0) with the  
current version of OpenMCL I get this error:

===============8<===================8<======================8<========== 
==================
;Loading #P"binary-openmcl/numerical/slatec/xermsg.dfsl"...
;        - Compiling source file
;          "/opt/local/var/db/dports/build/_Users_brent_dports- 
dev_math_maxima/work/maxima-5.11.0/src/numerical/slatec/initds.lisp"
;Compiling "/opt/local/var/db/dports/build/_Users_brent_dports- 
dev_math_maxima/work/maxima-5.11.0/src/numerical/slatec/initds.lisp"...
 > Error: Vinsn DOUBLE->HEAP expects 2 result/argument specs,  
received 3 .
 > While executing: CCL::MATCH-TEMPLATE-VREGS, in process listener(1).
 > Type :GO to continue, :POP to abort, :R for a list of available  
restarts.
 > If continued: Skip evaluation of (progn (load "../lisp-utils/ 
defsystem.lisp") (funcall (intern (symbol-name :operate-on- 
system) :mk) "maxima" :compile :verbose t) (ccl::quit))
 > Type :? for other options.
===============8<===================8<======================8<========== 
==================

Here's a backtrace:
===============8<===================8<======================8<========== 
==================
1 > :B
(F0135770) : 0 (MATCH-TEMPLATE-VREGS #S(CCL::VINSN-TEMPLATE :NAME  
CCL::DOUBLE->HEAP :RESULT-VREG-SPECS (#) ...) #<DOUBLE->HEAP> '(# #  
#)) 400
(F0135780) : 1 (SELECT-VINSN 'CCL::DOUBLE->HEAP #<HASH-TABLE :TEST EQ  
size 502/687 #x82D0106> '(# # #)) 96
(F0135790) : 2 (%EMIT-VINSN #<DLL-HEADER  #x87C4BCE> 'CCL::DOUBLE- 
 >HEAP #<HASH-TABLE :TEST EQ size 502/687 #x82D0106> [...]) 48
(F01357A0) : 3 (PPC2-VREF1 #<DLL-HEADER  #x87C4BCE> #<LREG 30 GPR [27] 
 > NIL :DOUBLE-FLOAT-VECTOR #<LREG 33 GPR {22}> #<LREG 31 GPR {23}>  
'FORMAT) 7364
(F01357B0) : 4 (PPC2-ONE-LREG-FORM #<DLL-HEADER  #x87C4BCE> '(29854 #  
# #) #<LREG 30 GPR [27]>) 172
(F01357C0) : 5 (PPC2-SEQ-BIND-VAR #<DLL-HEADER  #x87C4BCE> #<CCL::VAR  
#x87C7ABE> '(29854 # # #)) 880
(F01357D0) : 6 (PPC2-SEQ-BIND #<DLL-HEADER  #x87C4BCE> '(#) NIL) 108
(F01357E0) : 7 (FUNCALL #'#<CCL::PPC2-LAMBDA-BIND> #<DLL-HEADER   
#x87C4BCE> #<LREG 29 GPR [23]> NIL '(#) '(#) #<LREG 39 GPR {3}> NIL  
'(NIL NIL) '(42 # # NIL) 2162688) 176
(F01357F0) : 8 (PPC2-ONE-LREG-FORM #<DLL-HEADER  #x87C4BCE> '(104 # #  
NIL NIL ...) #<LREG 29 GPR [23]>) 172
(F0135800) : 9 (PPC2-FORMLIST #<DLL-HEADER  #x87C4BCE> NIL [...]) 572
(F0135810) : 10 (PPC2-CALL-FN #<DLL-HEADER  #x87C4BCE> #<LREG 27 GPR  
[23]> 0 '(24616 ABS) '(NIL #) 'SYMBOL-VALUE) 1228
(F0135820) : 11 (PPC2-ONE-LREG-FORM #<DLL-HEADER  #x87C4BCE> '(42 # #  
NIL) #<LREG 27 GPR [23]>) 172
(F0135830) : 12 (PPC2-TWO-TARGETED-REG-FORMS #<DLL-HEADER  #x87C4BCE>  
'(27 SINGLE-FLOAT #) #<LREG 26 GPR [22]> '(42 # # NIL) #<LREG 27 GPR  
[23]>) 440
(F0135840) : 13 (PPC2-BINARY-BUILTIN #<DLL-HEADER  #x87C4BCE> #<LREG  
8 GPR [31]> NIL 'CCL::+-2 '(27 SINGLE-FLOAT #) '(42 # # NIL)) 152
(F0135850) : 14 (PPC2-ONE-LREG-FORM #<DLL-HEADER  #x87C4BCE> '(27  
NUMBER #) #<LREG 8 GPR [31]>) 172
(F0135860) : 15 (FUNCALL #'#<CCL::PPC2-SETQ-LEXICAL> #<DLL-HEADER   
#x87C4BCE> NIL NIL #<CCL::VAR #x87CB1D6> '(27 NUMBER #)) 128
(F0135870) : 16 (FUNCALL #'#<CCL::PPC2-LOCAL-TAGBODY> #<DLL-HEADER   
#x87C4BCE> NIL NIL '(#) '(# # # #)) 384
(F0135880) : 17 (FUNCALL #'#<CCL::PPC2-PROGN> #<DLL-HEADER   
#x87C4BCE> #<LREG 39 GPR {3}> #(0 0 0 0 0 ...) '(# #)) 144
(F0135890) : 18 (FUNCALL #'#<CCL::PPC2-IF> #<DLL-HEADER  #x87C4BCE>  
'FORMAT NIL '(62475 # # #) '(22529 #) '(#:|nil|)) 1344
(F01358A0) : 19 (FUNCALL #'#<CCL::PPC2-LOCAL-RETURN-FROM> #<DLL- 
HEADER  #x87C4BCE> NIL NIL '(#) '(5135 # # #)) 616
(F01358B0) : 20 (FUNCALL #'#<CCL::PPC2-LOCAL-TAGBODY> #<DLL-HEADER   
#x87C4BCE> NIL NIL '(#) '(# # #)) 384
(F01358C0) : 21 (PPC2-UNDO-BODY #<DLL-HEADER  #x87C4BCE> #(0 0 0 0  
0 ...) #<LREG 39 GPR {3}> '(8223 # #) #(0 0 44 #<LCELL 11>)) 448
(F01358D0) : 22 (FUNCALL #'#<CCL::PPC2-LET*> #<DLL-HEADER  #x87C4BCE>  
NIL NIL '(# #) '(# #) '(8223 # #) 2162688) 180
(F01358E0) : 23 (FUNCALL #'#<CCL::PPC2-LOCAL-BLOCK> #<DLL-HEADER   
#x87C4BCE> 'FORMAT NIL '(#) '(29 # # # 2162688)) 384
(F01358F0) : 24 (FUNCALL #'#<CCL::PPC2-LOCAL-TAGBODY> #<DLL-HEADER   
#x87C4BCE> #<LREG 0 GPR [23]> 262143 '(# #) '(# # # # # ...)) 384
(F0135900) : 25 (PPC2-UNDO-BODY #<DLL-HEADER  #x87C4BCE> #<LREG 0 GPR  
[23]> 262143 '(8223 # #) #(0 0 40 #<LCELL 10>)) 200
(F0135910) : 26 (FUNCALL #'#<CCL::PPC2-LET> #<DLL-HEADER  #x87C4BCE>  
#<LREG 0 GPR [23]> 262143 '(# # # # #) 'SYMBOL-VALUE '(8223 # #)  
2162688) 820
(F0135920) : 27 (FUNCALL #'#<CCL::PPC2-LOCAL-BLOCK> #<DLL-HEADER   
#x87C4BCE> #<LREG 0 GPR [23]> 262143 '(#) '(28 # # # 2162688)) 384
(F0135930) : 28 (FUNCALL #'#<CCL::PPC2-LAMBDA> #<DLL-HEADER   
#x87C4BCE> #<LREG 0 GPR [23]> 262143 '(# # #) NIL 'SYMBOL-VALUE NIL  
'(NIL NIL) '(44 # #) 2162688) 4696
(F0135940) : 29 (PPC2-COMPILE #<CCL::AFUNC #x87CB8AE> [...]) 1724
(F0135970) : 30 (COMPILE-NAMED-FUNCTION '(LAMBDA # # # #) [...]) 452
(F0135990) : 32 (FCOMP-NAMED-FUNCTION '(LAMBDA # # # #) 'INITDS  
#<CCL::LEXICAL-ENVIRONMENT #x87B0FA6>) 152
(F01359A0) : 33 (FCOMP-LOAD-%DEFUN '(CCL::%DEFUN # #) #<CCL::LEXICAL- 
ENVIRONMENT #x87B0FA6>) 348
(F01359C0) : 35 (FCOMP-FORM '(CCL::%DEFUN # #) #<CCL::LEXICAL- 
ENVIRONMENT #x87B0FA6> :NOT-COMPILE-TIME) 1140
(F01359D0) : 36 (FCOMP-FORM-LIST '(# # #) #<CCL::LEXICAL-ENVIRONMENT  
#x87B0FA6> :NOT-COMPILE-TIME) 76
(F01359F0) : 38 (FCOMP-FORM '(PROGN # # #) #<CCL::LEXICAL-ENVIRONMENT  
#x87B0FA6> :NOT-COMPILE-TIME) 1140
(F0135A10) : 40 (FCOMP-FORM '(DEFUN INITDS # # #) #<CCL::LEXICAL- 
ENVIRONMENT #x87B0FA6> :NOT-COMPILE-TIME) 1140
(F0135A20) : 41 (FCOMP-READ-LOOP "/opt/local/var/db/dports/build/ 
_Users_brent_dports-dev_math_maxima/work/maxima-5.11.0/src/numerical/ 
slatec/initds.lisp" "/opt/local/var/db/dports/build/ 
_Users_brent_dports-dev_math_maxima/work/maxima-5.11.0/src/numerical/ 
slatec/initds.lisp" #<CCL::LEXICAL-ENVIRONMENT #x87B0FA6> :NOT- 
COMPILE-TIME) 880
===============8<===================8<======================8<========== 
==================

The declaration for this (compiler/PPC/PPC32/ppc32-vinsns.lisp) seems  
to take three arguments:

(define-ppc32-vinsn double->heap (((result :lisp)) ; tagged as a  
double-float
                                   ((fpreg :double-float))
                                   ((header-temp :u32)))

.... so I'm confused.  Doesn't this seem like it *does* want three  
arguments?

The code was apparently auto-generated from Fortran, so perhaps this  
is part of the problem:

;;; Compiled by f2cl version 2.0 beta Date: 2006/01/31 15:11:05
;;; Using Lisp CMU Common Lisp Snapshot 2006-01 (19C)
;;;
;;; Options: ((:prune-labels nil) (:auto-save t) (:relaxed-array- 
decls t)
;;;           (:coerce-assigns :as-needed) (:array-type ':simple-array)
;;;           (:array-slicing nil) (:declare-common nil)
;;;           (:float-format double-float))


Any ideas how to proceed?  Should I be regenerating the Fortran->Lisp  
perhaps?

Thanks,

-Brent



More information about the Openmcl-devel mailing list