[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [Axiom-developer] Re: problem plotting simple functions
From: |
Bill Page |
Subject: |
RE: [Axiom-developer] Re: problem plotting simple functions |
Date: |
Sun, 3 Jun 2007 22:17:04 -0400 |
On June 3, 2007 7:42 PM Waldek Hebisch wrote:
> ...
> It seems that error occurs in manexp function. More preciesly,
> manexp calls sign function which looks like the only place which
> could signal this error.
>
> Could you try:
>
> exponent(-5.0)$DoubleFloat
Here's the results:
...
(1) -> )set break break
(1) -> )lisp (si::use-fast-links nil)
Value = NIL
(1) -> exponent(-5.0)$DoubleFloat
Loading
/export/home0/wspage/wh-test/target/i386-pc-solaris2.10/algebra/FLOAT.o
for domain Float
Loading
/export/home0/wspage/wh-test/target/i386-pc-solaris2.10/algebra/DFLOAT.o
for domain DoubleFloat
>> Error detected within library code:
Not an integer
Break.
Broken at SYSTEM::BREAK-LEVEL. Type :H for Help.
BOOT>>:bt
#0 BREAK {loc0=nil,loc1=nil,loc2=#<synonym stream to *terminal-io*>,loc3="
",loc4=nil,loc...} [ihs=38]
#1 handleLispBreakLoop {loc0=|break|,loc1=nil,loc2=((arg (nil))),loc3=nil}
[ihs=37]
#2 errorSupervisor1 {loc0=|AlgebraError|,loc1="Not an
integer",loc2=|break|,loc3="Error detected wit...} [ihs=36]
#3 errorSupervisor {loc0=|AlgebraError|,loc1="Not an integer"} [ihs=35]
#4 error {loc0="Not an integer"} [ihs=34]
#5 DFLOAT;manexp {loc0=-5.0,loc1=#<vector 08e40dc0>,loc2=((|Integer|)
$),loc3=#<vector 08e40dc0>,...} [ihs=33]
#6 DFLOAT;exponent;$I;9 {loc0=-5.0,loc1=#<vector 08e40dc0>} [ihs=32]
#7 FUNCALL {loc0=#<compiled-function
|DFLOAT;exponent;$I;9|>,loc1=-5.0,loc2=#<vector 08e40d...} [ihs=31]
#8 FUNCALL {loc0=#<compiled-function
|DFLOAT;exponent;$I;9|>,loc1=-5.0,loc2=#<vector 08e40d...} [ihs=30]
#9 EVAL {loc0=nil,loc1=nil,loc2=nil,loc3=(let ((#0=#:g1426 #)) (the
(values t) (funcall ...} [ihs=27]
#10 timedEvaluate {code=(spadcall -5.0 (quote (#<compiled-function
|DFLOAT;exponent;$I;9|> . #<vec...} [ihs=26]
#11 timedEVALFUN {loc0=(spadcall -5.0 (quote (#<compiled-function
|DFLOAT;exponent;$I;9|> . #<vec...} [ihs=25]
#12 evalFormMkValue {loc0=#<vector 08e83660>,loc1=(spadcall -5.0 (quote
(#<compiled-function |DFLOAT...} [ihs=24]
#13 evalForm {loc0=#<vector 08e83660>,loc1=|exponent|,loc2=((#<vector
08e83680> (#<vector 08e...} [ihs=23]
#14 bottomUpForm2 {loc0=(#<vector 08e83660> (#<vector 08e83680> (#<vector
08e836a0> # #))),loc1=#<...} [ihs=22]
#15 bottomUpForm3 {loc0=(#<vector 08e83660> (#<vector 08e83680> (#<vector
08e836a0> # #))),loc1=#<...} [ihs=21]
#16 bottomUpForm {loc0=(#<vector 08e83660> (#<vector 08e83680> (#<vector
08e836a0> # #))),loc1=#<...} [ihs=20]
#17 bottomUp {loc0=(#<vector 08e83660> (#<vector 08e83680> (#<vector
08e836a0> # #))),loc1=1} [ihs=19]
#18 upDollar {loc0=(#<vector 08e83640> |DoubleFloat| (#<vector 08e83660>
(#<vector 08e83680> ...} [ihs=18]
#19 bottomUp {loc0=(#<vector 08e83640> |DoubleFloat| (#<vector 08e83660>
(#<vector 08e83680> ...} [ihs=17]
#20 interpret1 {loc0=((|$elt| |DoubleFloat| |exponent|) (- (# 5 0
...))),loc1=nil,loc2=(|Applic...} [ihs=16]
#21 interpret {g104636=((|$elt| |DoubleFloat| |exponent|) (- (# 5 0
...))),loc1=(|Application|...} [ihs=15]
#22 interpretTopLevel {loc0=((|$elt| |DoubleFloat| |exponent|) (- (# 5 0
...))),loc1=(|Application| (|...} [ihs=14]
#23 processInteractive1 {loc0=((|$elt| |DoubleFloat| |exponent|) (- (# 5 0
...))),loc1=(|Application| (|...} [ihs=13]
#24 processInteractive {loc0=((|$elt| |DoubleFloat| |exponent|) (- (# 5 0
...))),loc1=(|Application| (|...} [ihs=12]
#25 intInterpretPform {loc0=(|Application| (|Fromdom| (# . |exponent|) (#
. |DoubleFloat|)) (|Applicat...} [ihs=11]
#26 ncConversationPhase {fn=#<compiled-function
|phInterpret|>,args=(((|carrier| # # ...))),loc2=(((# . ...} [ihs=10]
#27 intloopSpadProcess,interp {loc0=((|carrier| (|ok?| . t)
(|ptreePremacro| . #0=(|Application| # #)) ...)),l...} [ihs=9]
#28 intloopSpadProcess {loc0=1,loc1=(((# . 1) .
"exponent(-5.0)$DoubleFloat")),loc2=(|Application| (|Fr...} [ihs=8]
#29 intloopProcess {loc0=1,loc1=t,loc2=(((#) (|Application| # #))
|nonnullstream| #<compiled-functi...} [ihs=7]
#30 intloopProcessString {loc0="exponent(-5.0)$DoubleFloat",loc1=1}
[ihs=6]
#31 TOP-LEVEL {} [ihs=5]
#32 FUNCALL {loc0=#<compiled-function
system:top-level>,loc1=nil,loc2=0,loc3=0,loc4=nil,loc5...} [ihs=4]
NIL
BOOT>> (quit)
>
> sign(-5.0)$DoubleFloat
>
Same result.
...
>> Error detected within library code:
Not an integer
> )lisp (float-sign -5.0 1.0)
>
This one works.
(1) -> )lisp (float-sign -5.0 1.0)
Value = -1.0
> The first line is intended to test manexp -- manexp is internal
> to DoubleFloat, so we can not test it directly, but exponent
> just calls manexp and extracts one of components.
>
> Also, it may worth checking int/algebra/DFLOAT.NRLIB/code.lsp.
> In my copy I have:
>
> (DEFUN |DFLOAT;sign;$I;81| (|x| $)
> (SPADCALL (FLOAT-SIGN |x| 1.0) (QREFELT $ 115)))
>
> and earlier:
>
> (DEFUN |DFLOAT;retract;$I;79| (|x| $)
> (PROG (|n|)
> (RETURN
> (SEQ (LETT |n| (FIX |x|) |DFLOAT;retract;$I;79|)
> (EXIT (COND
> ((= |x| (FLOAT |n| MOST-POSITIVE-DOUBLE-FLOAT)) |n|)
> ('T (|error| "Not an integer"))))))))
>
In my 'int/algebra/DFLOAT.NRLIB/code.lsp' I see the same code:
(DEFUN |DFLOAT;sign;$I;81| (|x| $)
(SPADCALL (FLOAT-SIGN |x| 1.0) (QREFELT $ 115)))
and
(DEFUN |DFLOAT;retract;$I;79| (|x| $)
(PROG (|n|)
(RETURN
(SEQ (LETT |n| (FIX |x|) |DFLOAT;retract;$I;79|)
(EXIT (COND
((= |x| (FLOAT |n| MOST-POSITIVE-DOUBLE-FLOAT)) |n|)
('T (|error| "Not an integer"))))))))
-----------
Did I mention earlier that I am testing this on a Solaris 10
x86 system with the Blastwave toolchain?
-bash-3.00$ gcc --version
gcc (GCC) 3.4.3 (csl-sol210-3_4-branch+sol_rpath)
Copyright (C) 2004 Free Software Foundation, Inc.
Back in April my first attempts to build Axiom on this system
failed due to a problem with gcl. But Camm Maquire was able to
solve the gcl problem and his changes are in cvs gcl-2.6.8pre.
This is the version of gcl that I am using now to build
wh-sandbox. I have not found any other errors until now but
I must admit that I did not review all of the test output.
Perhaps this is a gcl bug?
Regards,
Bill Page.