gcl-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Gcl-devel] memory damaged at (system:STRING-MATCH:anykey:verbose)


From: Mike Thomas
Subject: RE: [Gcl-devel] memory damaged at (system:STRING-MATCH:anykey:verbose)
Date: Thu, 8 Jul 2004 13:56:33 +1000

Hi Camm.

Thanks for the quick reply:



| -----Original Message-----
| From: address@hidden
| [mailto:address@hidden
| Behalf Of Camm Maguire
| Sent: Thursday, 8 July 2004 1:29 PM
| To: Mike Thomas
| Cc: address@hidden
| Subject: Re: [Gcl-devel] memory damaged at
| (system:STRING-MATCH:anykey:verbose)
|
|
| Greetings, and thanks!
|
| OK, a bit clearer now.  From what I can tell, the specfntest.lisp is
| broken as it is missing the (eval-when (compile ...) ...) around the
| def-op macro forms which is in maxima's specfn.l.  I will revert the
| eval-when-defaults which were correct before, and under which
| specfntest.lisp should always fail on first compile.  The reason it
| succeeds later is that the macro for f+/f- is in place after the
| aborted load.  So in short, specfntest.lisp is not trapping your
| maxima problems.  I'm being short here, but I hope you get the drift.
|
| As far as maxima goes, I would definitely check heap_end and core_end
| vis a vis (V166))->fixa.fixa_self at the site of the fault, and
| vs_limit for humors sake.

(gdb) p heap_end
$20 = 0x1aeda000 ""
(gdb) p core_end
$21 = 0x1f52a000 <Address 0x1f52a000 out of bounds>
(gdb) p vs_limit
$22 = (object *) 0x7c64d0


| I'd then do a disassemble from within gdb

Below.

| and inspect instruction 500f, pertinent regs, etc.

Sorry but I don't understand this bit.

Cheers

Mike Thomas.

(gdb) disassemble
Dump of assembler code for function L44:
0x1a894c8a <L44+0>:     push   %ebp
0x1a894c8b <L44+1>:     mov    %esp,%ebp
0x1a894c8d <L44+3>:     push   %esi
0x1a894c8e <L44+4>:     push   %ebx
0x1a894c8f <L44+5>:     sub    $0xa0,%esp
0x1a894c95 <L44+11>:    mov    0x746440,%eax
0x1a894c9a <L44+16>:    mov    %eax,0xffffffd4(%ebp)
0x1a894c9d <L44+19>:    mov    0xffffffd4(%ebp),%edx
0x1a894ca0 <L44+22>:    add    $0x24,%edx
0x1a894ca3 <L44+25>:    mov    %edx,0xffffffd0(%ebp)
0x1a894ca6 <L44+28>:    mov    0x73d090,%eax
0x1a894cab <L44+33>:    cmp    0x73d670,%eax
0x1a894cb1 <L44+39>:    jb     0x1a894cb8 <L44+46>
0x1a894cb3 <L44+41>:    call   0x402fa5 <vs_overflow>
0x1a894cb8 <L44+46>:    mov    0xffffffd4(%ebp),%ecx
0x1a894cbb <L44+49>:    mov    (%ecx),%ecx
0x1a894cbd <L44+51>:    mov    %ecx,0xffffffcc(%ebp)
0x1a894cc0 <L44+54>:    mov    0xffffffd4(%ebp),%esi
0x1a894cc3 <L44+57>:    mov    0x4(%esi),%esi
0x1a894cc6 <L44+60>:    mov    %esi,0xffffffc8(%ebp)
0x1a894cc9 <L44+63>:    mov    0xffffffd0(%ebp),%eax
0x1a894ccc <L44+66>:    mov    %eax,0x73d090
---Type <return> to continue, or q <return> to quit---
0x1a894cd1 <L44+71>:    mov    0x1a896cb8,%eax
0x1a894cd6 <L44+76>:    mov    0x4(%eax),%eax
0x1a894cd9 <L44+79>:    mov    %eax,0xffffffc4(%ebp)
0x1a894cdc <L44+82>:    mov    0xffffffd4(%ebp),%edx
0x1a894cdf <L44+85>:    movl   $0x73d4a0,0x8(%edx)
0x1a894ce6 <L44+92>:    mov    0x1a896cd0,%eax
0x1a894ceb <L44+97>:    mov    0xffffffd4(%ebp),%ecx
0x1a894cee <L44+100>:   mov    %eax,0xc(%ecx)
0x1a894cf1 <L44+103>:   mov    0xffffffc4(%ebp),%eax
0x1a894cf4 <L44+106>:   mov    0xffffffd4(%ebp),%esi
0x1a894cf7 <L44+109>:   mov    %eax,0x10(%esi)
0x1a894cfa <L44+112>:   mov    0xffffffc8(%ebp),%ecx
0x1a894cfd <L44+115>:   mov    0xffffffd4(%ebp),%edx
0x1a894d00 <L44+118>:   mov    %ecx,0x14(%edx)
0x1a894d03 <L44+121>:   mov    0xffffffcc(%ebp),%eax
0x1a894d06 <L44+124>:   mov    0xffffffd4(%ebp),%esi
0x1a894d09 <L44+127>:   mov    %eax,0x18(%esi)
0x1a894d0c <L44+130>:   mov    0xffffffd4(%ebp),%eax
0x1a894d0f <L44+133>:   add    $0x8,%eax
0x1a894d12 <L44+136>:   mov    %eax,0x746440
0x1a894d17 <L44+141>:   mov    0x746440,%eax
0x1a894d1c <L44+146>:   add    $0x14,%eax
0x1a894d1f <L44+149>:   mov    %eax,0x73d090
---Type <return> to continue, or q <return> to quit---
0x1a894d24 <L44+154>:   call   0x42fbec <Lformat>
0x1a894d29 <L44+159>:   mov    0xffffffd0(%ebp),%edx
0x1a894d2c <L44+162>:   mov    %edx,0x73d090
0x1a894d32 <L44+168>:   mov    0xffffffd4(%ebp),%ecx
0x1a894d35 <L44+171>:   movl   $0x73d4a0,0x8(%ecx)
0x1a894d3c <L44+178>:   mov    0x1a896cd4,%eax
0x1a894d41 <L44+183>:   mov    0xffffffd4(%ebp),%esi
0x1a894d44 <L44+186>:   mov    %eax,0xc(%esi)
0x1a894d47 <L44+189>:   mov    0xffffffc4(%ebp),%edx
0x1a894d4a <L44+192>:   mov    0xc(%edx),%eax
0x1a894d4d <L44+195>:   mov    (%eax),%eax
0x1a894d4f <L44+197>:   mov    %eax,0x6d6a40
0x1a894d54 <L44+202>:   add    $0x400,%eax
0x1a894d59 <L44+207>:   and    $0xfffff800,%eax
0x1a894d5e <L44+212>:   test   %eax,%eax
0x1a894d60 <L44+214>:   jne    0x1a894d74 <L44+234>
0x1a894d62 <L44+216>:   mov    0x6d6a40,%eax
0x1a894d67 <L44+221>:   shl    $0x3,%eax
0x1a894d6a <L44+224>:   add    $0x73b040,%eax
0x1a894d6f <L44+229>:   mov    %eax,0xffffffc0(%ebp)
0x1a894d72 <L44+232>:   jmp    0x1a894d88 <L44+254>
0x1a894d74 <L44+234>:   sub    $0xc,%esp
0x1a894d77 <L44+237>:   pushl  0x6d6a40
---Type <return> to continue, or q <return> to quit---
0x1a894d7d <L44+243>:   call   0x44f450 <make_fixnum1>
0x1a894d82 <L44+248>:   add    $0x10,%esp
0x1a894d85 <L44+251>:   mov    %eax,0xffffffc0(%ebp)
0x1a894d88 <L44+254>:   mov    0xffffffc0(%ebp),%esi
0x1a894d8b <L44+257>:   mov    0xffffffd4(%ebp),%ecx
0x1a894d8e <L44+260>:   mov    %esi,0x10(%ecx)
0x1a894d91 <L44+263>:   mov    0xffffffd4(%ebp),%eax
0x1a894d94 <L44+266>:   add    $0x8,%eax
0x1a894d97 <L44+269>:   mov    %eax,0x746440
0x1a894d9c <L44+274>:   mov    0x746440,%eax
0x1a894da1 <L44+279>:   add    $0xc,%eax
0x1a894da4 <L44+282>:   mov    %eax,0x73d090
0x1a894da9 <L44+287>:   call   0x42fbec <Lformat>
0x1a894dae <L44+292>:   mov    0xffffffd0(%ebp),%eax
0x1a894db1 <L44+295>:   mov    %eax,0x73d090
0x1a894db6 <L44+300>:   mov    0xffffffd4(%ebp),%edx
0x1a894db9 <L44+303>:   movl   $0x73d4a0,0x8(%edx)
0x1a894dc0 <L44+310>:   mov    0x1a896cd8,%eax
0x1a894dc5 <L44+315>:   mov    0xffffffd4(%ebp),%ecx
0x1a894dc8 <L44+318>:   mov    %eax,0xc(%ecx)
0x1a894dcb <L44+321>:   mov    0xffffffc4(%ebp),%esi
0x1a894dce <L44+324>:   mov    0xc(%esi),%eax
0x1a894dd1 <L44+327>:   add    $0x4,%eax
---Type <return> to continue, or q <return> to quit---
0x1a894dd4 <L44+330>:   mov    (%eax),%eax
0x1a894dd6 <L44+332>:   mov    %eax,0x6d6a40
0x1a894ddb <L44+337>:   add    $0x400,%eax
0x1a894de0 <L44+342>:   and    $0xfffff800,%eax
0x1a894de5 <L44+347>:   test   %eax,%eax
0x1a894de7 <L44+349>:   jne    0x1a894dfb <L44+369>
0x1a894de9 <L44+351>:   mov    0x6d6a40,%eax
0x1a894dee <L44+356>:   shl    $0x3,%eax
0x1a894df1 <L44+359>:   add    $0x73b040,%eax
0x1a894df6 <L44+364>:   mov    %eax,0xffffffbc(%ebp)
0x1a894df9 <L44+367>:   jmp    0x1a894e0f <L44+389>
0x1a894dfb <L44+369>:   sub    $0xc,%esp
0x1a894dfe <L44+372>:   pushl  0x6d6a40
0x1a894e04 <L44+378>:   call   0x44f450 <make_fixnum1>
0x1a894e09 <L44+383>:   add    $0x10,%esp
0x1a894e0c <L44+386>:   mov    %eax,0xffffffbc(%ebp)
0x1a894e0f <L44+389>:   mov    0xffffffbc(%ebp),%edx
0x1a894e12 <L44+392>:   mov    0xffffffd4(%ebp),%eax
0x1a894e15 <L44+395>:   mov    %edx,0x10(%eax)
0x1a894e18 <L44+398>:   mov    0xffffffd4(%ebp),%eax
0x1a894e1b <L44+401>:   add    $0x8,%eax
0x1a894e1e <L44+404>:   mov    %eax,0x746440
0x1a894e23 <L44+409>:   mov    0x746440,%eax
---Type <return> to continue, or q <return> to quit---
0x1a894e28 <L44+414>:   add    $0xc,%eax
0x1a894e2b <L44+417>:   mov    %eax,0x73d090
0x1a894e30 <L44+422>:   call   0x42fbec <Lformat>
0x1a894e35 <L44+427>:   mov    0xffffffd0(%ebp),%ecx
0x1a894e38 <L44+430>:   mov    %ecx,0x73d090
0x1a894e3e <L44+436>:   mov    0xffffffd4(%ebp),%esi
0x1a894e41 <L44+439>:   movl   $0x73d4a0,0x8(%esi)
0x1a894e48 <L44+446>:   mov    0x1a896cdc,%eax
0x1a894e4d <L44+451>:   mov    0xffffffd4(%ebp),%edx
0x1a894e50 <L44+454>:   mov    %eax,0xc(%edx)
0x1a894e53 <L44+457>:   sub    $0x8,%esp
0x1a894e56 <L44+460>:   pushl  0x73b044
0x1a894e5c <L44+466>:   pushl  0xffffffcc(%ebp)
0x1a894e5f <L44+469>:   call   0x4075e4 <fLrow_major_aref>
0x1a894e64 <L44+474>:   add    $0x10,%esp
0x1a894e67 <L44+477>:   mov    0xffffffd4(%ebp),%ecx
0x1a894e6a <L44+480>:   mov    %eax,0x10(%ecx)
0x1a894e6d <L44+483>:   mov    0xffffffd4(%ebp),%eax
0x1a894e70 <L44+486>:   add    $0x8,%eax
0x1a894e73 <L44+489>:   mov    %eax,0x746440
0x1a894e78 <L44+494>:   mov    0x746440,%eax
0x1a894e7d <L44+499>:   add    $0xc,%eax
0x1a894e80 <L44+502>:   mov    %eax,0x73d090
---Type <return> to continue, or q <return> to quit---
0x1a894e85 <L44+507>:   call   0x42fbec <Lformat>
0x1a894e8a <L44+512>:   mov    0xffffffd0(%ebp),%esi
0x1a894e8d <L44+515>:   mov    %esi,0x73d090
0x1a894e93 <L44+521>:   mov    0xffffffd4(%ebp),%eax
0x1a894e96 <L44+524>:   movl   $0x73d4a0,0x8(%eax)
0x1a894e9d <L44+531>:   mov    0x1a896ce0,%eax
0x1a894ea2 <L44+536>:   mov    0xffffffd4(%ebp),%edx
0x1a894ea5 <L44+539>:   mov    %eax,0xc(%edx)
0x1a894ea8 <L44+542>:   sub    $0x8,%esp
0x1a894eab <L44+545>:   pushl  0x73b04c
0x1a894eb1 <L44+551>:   pushl  0xffffffcc(%ebp)
0x1a894eb4 <L44+554>:   call   0x4075e4 <fLrow_major_aref>
0x1a894eb9 <L44+559>:   add    $0x10,%esp
0x1a894ebc <L44+562>:   mov    0xffffffd4(%ebp),%ecx
0x1a894ebf <L44+565>:   mov    %eax,0x10(%ecx)
0x1a894ec2 <L44+568>:   mov    0xffffffd4(%ebp),%eax
0x1a894ec5 <L44+571>:   add    $0x8,%eax
0x1a894ec8 <L44+574>:   mov    %eax,0x746440
0x1a894ecd <L44+579>:   mov    0x746440,%eax
0x1a894ed2 <L44+584>:   add    $0xc,%eax
0x1a894ed5 <L44+587>:   mov    %eax,0x73d090
0x1a894eda <L44+592>:   call   0x42fbec <Lformat>
0x1a894edf <L44+597>:   mov    0xffffffd0(%ebp),%esi
---Type <return> to continue, or q <return> to quit---
0x1a894ee2 <L44+600>:   mov    %esi,0x73d090
0x1a894ee8 <L44+606>:   sub    $0x4,%esp
0x1a894eeb <L44+609>:   pushl  0x1a896ce4
0x1a894ef1 <L44+615>:   pushl  0x73b044
0x1a894ef7 <L44+621>:   pushl  0xffffffcc(%ebp)
0x1a894efa <L44+624>:   call   0x40799e <aset1>
0x1a894eff <L44+629>:   add    $0x10,%esp
0x1a894f02 <L44+632>:   mov    0xffffffd4(%ebp),%eax
0x1a894f05 <L44+635>:   movl   $0x73d4a0,0x8(%eax)
0x1a894f0c <L44+642>:   mov    0x1a896ce8,%eax
0x1a894f11 <L44+647>:   mov    0xffffffd4(%ebp),%edx
0x1a894f14 <L44+650>:   mov    %eax,0xc(%edx)
0x1a894f17 <L44+653>:   mov    0xffffffcc(%ebp),%esi
0x1a894f1a <L44+656>:   mov    0xffffffd4(%ebp),%ecx
0x1a894f1d <L44+659>:   mov    %esi,0x10(%ecx)
0x1a894f20 <L44+662>:   mov    0xffffffd4(%ebp),%eax
0x1a894f23 <L44+665>:   add    $0x8,%eax
0x1a894f26 <L44+668>:   mov    %eax,0x746440
0x1a894f2b <L44+673>:   mov    0x746440,%eax
0x1a894f30 <L44+678>:   add    $0xc,%eax
0x1a894f33 <L44+681>:   mov    %eax,0x73d090
0x1a894f38 <L44+686>:   call   0x42fbec <Lformat>
0x1a894f3d <L44+691>:   mov    0xffffffd0(%ebp),%eax
---Type <return> to continue, or q <return> to quit---
0x1a894f40 <L44+694>:   mov    %eax,0x73d090
0x1a894f45 <L44+699>:   mov    0xffffffc4(%ebp),%edx
0x1a894f48 <L44+702>:   mov    0xc(%edx),%eax
0x1a894f4b <L44+705>:   add    $0x4,%eax
0x1a894f4e <L44+708>:   mov    (%eax),%eax
0x1a894f50 <L44+710>:   mov    %eax,0x6d6a40
0x1a894f55 <L44+715>:   add    $0x400,%eax
0x1a894f5a <L44+720>:   and    $0xfffff800,%eax
0x1a894f5f <L44+725>:   test   %eax,%eax
0x1a894f61 <L44+727>:   jne    0x1a894f75 <L44+747>
0x1a894f63 <L44+729>:   mov    0x6d6a40,%eax
0x1a894f68 <L44+734>:   shl    $0x3,%eax
0x1a894f6b <L44+737>:   add    $0x73b040,%eax
0x1a894f70 <L44+742>:   mov    %eax,0xffffffb8(%ebp)
0x1a894f73 <L44+745>:   jmp    0x1a894f89 <L44+767>
0x1a894f75 <L44+747>:   sub    $0xc,%esp
0x1a894f78 <L44+750>:   pushl  0x6d6a40
0x1a894f7e <L44+756>:   call   0x44f450 <make_fixnum1>
0x1a894f83 <L44+761>:   add    $0x10,%esp
0x1a894f86 <L44+764>:   mov    %eax,0xffffffb8(%ebp)
0x1a894f89 <L44+767>:   mov    0xffffffb8(%ebp),%ecx
0x1a894f8c <L44+770>:   mov    %ecx,0xffffffe0(%ebp)
0x1a894f8f <L44+773>:   sub    $0x4,%esp
---Type <return> to continue, or q <return> to quit---
0x1a894f92 <L44+776>:   pushl  0xffffffc8(%ebp)
0x1a894f95 <L44+779>:   mov    0xffffffe0(%ebp),%eax
0x1a894f98 <L44+782>:   pushl  0x4(%eax)
0x1a894f9b <L44+785>:   pushl  0xffffffcc(%ebp)
0x1a894f9e <L44+788>:   call   0x40799e <aset1>
0x1a894fa3 <L44+793>:   add    $0x10,%esp
0x1a894fa6 <L44+796>:   mov    0xffffffd4(%ebp),%esi
0x1a894fa9 <L44+799>:   movl   $0x73d4a0,0x8(%esi)
0x1a894fb0 <L44+806>:   mov    0x1a896cec,%eax
0x1a894fb5 <L44+811>:   mov    0xffffffd4(%ebp),%edx
0x1a894fb8 <L44+814>:   mov    %eax,0xc(%edx)
0x1a894fbb <L44+817>:   mov    0xffffffcc(%ebp),%esi
0x1a894fbe <L44+820>:   mov    0xffffffd4(%ebp),%ecx
0x1a894fc1 <L44+823>:   mov    %esi,0x10(%ecx)
0x1a894fc4 <L44+826>:   mov    0xffffffd4(%ebp),%eax
0x1a894fc7 <L44+829>:   add    $0x8,%eax
0x1a894fca <L44+832>:   mov    %eax,0x746440
0x1a894fcf <L44+837>:   mov    0x746440,%eax
0x1a894fd4 <L44+842>:   add    $0xc,%eax
0x1a894fd7 <L44+845>:   mov    %eax,0x73d090
0x1a894fdc <L44+850>:   call   0x42fbec <Lformat>
0x1a894fe1 <L44+855>:   mov    0xffffffd0(%ebp),%eax
0x1a894fe4 <L44+858>:   mov    %eax,0x73d090
---Type <return> to continue, or q <return> to quit---
0x1a894fe9 <L44+863>:   mov    0xffffffc4(%ebp),%edx
0x1a894fec <L44+866>:   mov    0xc(%edx),%edx
0x1a894fef <L44+869>:   mov    %edx,0xffffff74(%ebp)
0x1a894ff5 <L44+875>:   mov    0xffffff74(%ebp),%ecx
0x1a894ffb <L44+881>:   cmpl   $0x5,(%ecx)
0x1a894ffe <L44+884>:   ja     0x1a8955a1 <L44+2327>
0x1a895004 <L44+890>:   mov    0xffffff74(%ebp),%esi
0x1a89500a <L44+896>:   mov    (%esi),%eax
0x1a89500c <L44+898>:   shl    $0x2,%eax
0x1a89500f <L44+901>:   mov    0x0(%eax),%eax
0x1a895015 <L44+907>:   jmp    *%eax
0x1a895017 <L44+909>:   mov    0xffffffc4(%ebp),%edx
0x1a89501a <L44+912>:   mov    0xc(%edx),%eax
0x1a89501d <L44+915>:   add    $0x4,%eax
0x1a895020 <L44+918>:   mov    (%eax),%eax
0x1a895022 <L44+920>:   mov    %eax,0x6d6a40
0x1a895027 <L44+925>:   add    $0x400,%eax
0x1a89502c <L44+930>:   and    $0xfffff800,%eax
0x1a895031 <L44+935>:   test   %eax,%eax
0x1a895033 <L44+937>:   jne    0x1a895047 <L44+957>
0x1a895035 <L44+939>:   mov    0x6d6a40,%eax
0x1a89503a <L44+944>:   shl    $0x3,%eax
0x1a89503d <L44+947>:   add    $0x73b040,%eax
---Type <return> to continue, or q <return> to quit---
0x1a895042 <L44+952>:   mov    %eax,0xffffffb4(%ebp)
0x1a895045 <L44+955>:   jmp    0x1a89505b <L44+977>
0x1a895047 <L44+957>:   sub    $0xc,%esp
0x1a89504a <L44+960>:   pushl  0x6d6a40
0x1a895050 <L44+966>:   call   0x44f450 <make_fixnum1>
0x1a895055 <L44+971>:   add    $0x10,%esp
0x1a895058 <L44+974>:   mov    %eax,0xffffffb4(%ebp)
0x1a89505b <L44+977>:   mov    0xffffffb4(%ebp),%ecx
0x1a89505e <L44+980>:   mov    %ecx,0xffffffe4(%ebp)
0x1a895061 <L44+983>:   sub    $0x4,%esp
0x1a895064 <L44+986>:   pushl  0xffffffc8(%ebp)
0x1a895067 <L44+989>:   mov    0xffffffe4(%ebp),%eax
0x1a89506a <L44+992>:   pushl  0x4(%eax)
0x1a89506d <L44+995>:   pushl  0xffffffcc(%ebp)
0x1a895070 <L44+998>:   call   0x40799e <aset1>
0x1a895075 <L44+1003>:  add    $0x10,%esp
0x1a895078 <L44+1006>:  jmp    0x1a895630 <L44+2470>
0x1a89507d <L44+1011>:  mov    0xffffffc4(%ebp),%esi
0x1a895080 <L44+1014>:  mov    0xc(%esi),%eax
0x1a895083 <L44+1017>:  add    $0x4,%eax
0x1a895086 <L44+1020>:  mov    (%eax),%eax
0x1a895088 <L44+1022>:  mov    %eax,0x6d6a40
0x1a89508d <L44+1027>:  add    $0x400,%eax
---Type <return> to continue, or q <return> to quit---
0x1a895092 <L44+1032>:  and    $0xfffff800,%eax
0x1a895097 <L44+1037>:  test   %eax,%eax
0x1a895099 <L44+1039>:  jne    0x1a8950ad <L44+1059>
0x1a89509b <L44+1041>:  mov    0x6d6a40,%eax
0x1a8950a0 <L44+1046>:  shl    $0x3,%eax
0x1a8950a3 <L44+1049>:  add    $0x73b040,%eax
0x1a8950a8 <L44+1054>:  mov    %eax,0xffffffb0(%ebp)
0x1a8950ab <L44+1057>:  jmp    0x1a8950c1 <L44+1079>
0x1a8950ad <L44+1059>:  sub    $0xc,%esp
0x1a8950b0 <L44+1062>:  pushl  0x6d6a40
0x1a8950b6 <L44+1068>:  call   0x44f450 <make_fixnum1>
0x1a8950bb <L44+1073>:  add    $0x10,%esp
0x1a8950be <L44+1076>:  mov    %eax,0xffffffb0(%ebp)
0x1a8950c1 <L44+1079>:  mov    0xffffffb0(%ebp),%eax
0x1a8950c4 <L44+1082>:  mov    %eax,0xffffffe8(%ebp)
0x1a8950c7 <L44+1085>:  mov    0xffffffc4(%ebp),%edx
0x1a8950ca <L44+1088>:  mov    0xc(%edx),%eax
0x1a8950cd <L44+1091>:  add    $0x8,%eax
0x1a8950d0 <L44+1094>:  mov    (%eax),%eax
0x1a8950d2 <L44+1096>:  mov    %eax,0x6d6a40
0x1a8950d7 <L44+1101>:  add    $0x400,%eax
0x1a8950dc <L44+1106>:  and    $0xfffff800,%eax
0x1a8950e1 <L44+1111>:  test   %eax,%eax
---Type <return> to continue, or q <return> to quit---
0x1a8950e3 <L44+1113>:  jne    0x1a8950f7 <L44+1133>
0x1a8950e5 <L44+1115>:  mov    0x6d6a40,%eax
0x1a8950ea <L44+1120>:  shl    $0x3,%eax
0x1a8950ed <L44+1123>:  add    $0x73b040,%eax
0x1a8950f2 <L44+1128>:  mov    %eax,0xffffffac(%ebp)
0x1a8950f5 <L44+1131>:  jmp    0x1a89510b <L44+1153>
0x1a8950f7 <L44+1133>:  sub    $0xc,%esp
0x1a8950fa <L44+1136>:  pushl  0x6d6a40
0x1a895100 <L44+1142>:  call   0x44f450 <make_fixnum1>
0x1a895105 <L44+1147>:  add    $0x10,%esp
0x1a895108 <L44+1150>:  mov    %eax,0xffffffac(%ebp)
0x1a89510b <L44+1153>:  mov    0xffffffac(%ebp),%ecx
0x1a89510e <L44+1156>:  mov    %ecx,0xffffffec(%ebp)
0x1a895111 <L44+1159>:  sub    $0x4,%esp
0x1a895114 <L44+1162>:  pushl  0xffffffc8(%ebp)
0x1a895117 <L44+1165>:  mov    0xffffffe8(%ebp),%eax
0x1a89511a <L44+1168>:  mov    0xffffffcc(%ebp),%esi
0x1a89511d <L44+1171>:  mov    0x18(%esi),%edx
0x1a895120 <L44+1174>:  add    $0x4,%edx
0x1a895123 <L44+1177>:  mov    0x4(%eax),%eax
0x1a895126 <L44+1180>:  imul   (%edx),%eax
0x1a895129 <L44+1183>:  mov    %eax,%edx
0x1a89512b <L44+1185>:  mov    0xffffffec(%ebp),%eax
---Type <return> to continue, or q <return> to quit---
0x1a89512e <L44+1188>:  mov    0x4(%eax),%ecx
0x1a895131 <L44+1191>:  lea    (%edx,%ecx,1),%eax
0x1a895134 <L44+1194>:  push   %eax
0x1a895135 <L44+1195>:  pushl  0xffffffcc(%ebp)
0x1a895138 <L44+1198>:  call   0x40799e <aset1>
0x1a89513d <L44+1203>:  add    $0x10,%esp
0x1a895140 <L44+1206>:  jmp    0x1a895630 <L44+2470>
0x1a895145 <L44+1211>:  mov    0xffffffcc(%ebp),%eax
0x1a895148 <L44+1214>:  mov    0xffffffd4(%ebp),%esi
0x1a89514b <L44+1217>:  mov    %eax,0x8(%esi)
0x1a89514e <L44+1220>:  mov    0xffffffc4(%ebp),%edx
0x1a895151 <L44+1223>:  mov    0xc(%edx),%eax
0x1a895154 <L44+1226>:  add    $0x4,%eax
0x1a895157 <L44+1229>:  mov    (%eax),%eax
0x1a895159 <L44+1231>:  mov    %eax,0x6d6a40
0x1a89515e <L44+1236>:  add    $0x400,%eax
0x1a895163 <L44+1241>:  and    $0xfffff800,%eax
0x1a895168 <L44+1246>:  test   %eax,%eax
0x1a89516a <L44+1248>:  jne    0x1a89517e <L44+1268>
0x1a89516c <L44+1250>:  mov    0x6d6a40,%eax
0x1a895171 <L44+1255>:  shl    $0x3,%eax
0x1a895174 <L44+1258>:  add    $0x73b040,%eax
0x1a895179 <L44+1263>:  mov    %eax,0xffffffa8(%ebp)
---Type <return> to continue, or q <return> to quit---
---Type <return> to continue, or q <return> to quit---
0x1a89517c <L44+1266>:  jmp    0x1a895192 <L44+1288>
0x1a89517e <L44+1268>:  sub    $0xc,%esp
0x1a895181 <L44+1271>:  pushl  0x6d6a40
0x1a895187 <L44+1277>:  call   0x44f450 <make_fixnum1>
0x1a89518c <L44+1282>:  add    $0x10,%esp
0x1a89518f <L44+1285>:  mov    %eax,0xffffffa8(%ebp)
0x1a895192 <L44+1288>:  mov    0xffffffa8(%ebp),%esi
0x1a895195 <L44+1291>:  mov    0xffffffd4(%ebp),%ecx
0x1a895198 <L44+1294>:  mov    %esi,0xc(%ecx)
0x1a89519b <L44+1297>:  mov    0xffffffc4(%ebp),%edx
0x1a89519e <L44+1300>:  mov    0xc(%edx),%eax
0x1a8951a1 <L44+1303>:  add    $0x8,%eax
0x1a8951a4 <L44+1306>:  mov    (%eax),%eax
0x1a8951a6 <L44+1308>:  mov    %eax,0x6d6a40
0x1a8951ab <L44+1313>:  add    $0x400,%eax
0x1a8951b0 <L44+1318>:  and    $0xfffff800,%eax
0x1a8951b5 <L44+1323>:  test   %eax,%eax
0x1a8951b7 <L44+1325>:  jne    0x1a8951cb <L44+1345>
0x1a8951b9 <L44+1327>:  mov    0x6d6a40,%eax
0x1a8951be <L44+1332>:  shl    $0x3,%eax
0x1a8951c1 <L44+1335>:  add    $0x73b040,%eax
0x1a8951c6 <L44+1340>:  mov    %eax,0xffffffa4(%ebp)
0x1a8951c9 <L44+1343>:  jmp    0x1a8951df <L44+1365>
---Type <return> to continue, or q <return> to quit---
0x1a8951cb <L44+1345>:  sub    $0xc,%esp
0x1a8951ce <L44+1348>:  pushl  0x6d6a40
0x1a8951d4 <L44+1354>:  call   0x44f450 <make_fixnum1>
0x1a8951d9 <L44+1359>:  add    $0x10,%esp
0x1a8951dc <L44+1362>:  mov    %eax,0xffffffa4(%ebp)
0x1a8951df <L44+1365>:  mov    0xffffffa4(%ebp),%esi
0x1a8951e2 <L44+1368>:  mov    0xffffffd4(%ebp),%ecx
0x1a8951e5 <L44+1371>:  mov    %esi,0x10(%ecx)
0x1a8951e8 <L44+1374>:  mov    0xffffffc4(%ebp),%edx
0x1a8951eb <L44+1377>:  mov    0xc(%edx),%eax
0x1a8951ee <L44+1380>:  add    $0xc,%eax
0x1a8951f1 <L44+1383>:  mov    (%eax),%eax
0x1a8951f3 <L44+1385>:  mov    %eax,0x6d6a40
0x1a8951f8 <L44+1390>:  add    $0x400,%eax
0x1a8951fd <L44+1395>:  and    $0xfffff800,%eax
0x1a895202 <L44+1400>:  test   %eax,%eax
0x1a895204 <L44+1402>:  jne    0x1a895218 <L44+1422>
0x1a895206 <L44+1404>:  mov    0x6d6a40,%eax
0x1a89520b <L44+1409>:  shl    $0x3,%eax
0x1a89520e <L44+1412>:  add    $0x73b040,%eax
0x1a895213 <L44+1417>:  mov    %eax,0xffffffa0(%ebp)
0x1a895216 <L44+1420>:  jmp    0x1a89522c <L44+1442>
0x1a895218 <L44+1422>:  sub    $0xc,%esp
---Type <return> to continue, or q <return> to quit---
0x1a89521b <L44+1425>:  pushl  0x6d6a40
0x1a895221 <L44+1431>:  call   0x44f450 <make_fixnum1>
0x1a895226 <L44+1436>:  add    $0x10,%esp
0x1a895229 <L44+1439>:  mov    %eax,0xffffffa0(%ebp)
0x1a89522c <L44+1442>:  mov    0xffffffa0(%ebp),%esi
0x1a89522f <L44+1445>:  mov    0xffffffd4(%ebp),%ecx
0x1a895232 <L44+1448>:  mov    %esi,0x14(%ecx)
0x1a895235 <L44+1451>:  mov    0xffffffc8(%ebp),%edx
0x1a895238 <L44+1454>:  mov    0xffffffd4(%ebp),%eax
0x1a89523b <L44+1457>:  mov    %edx,0x18(%eax)
0x1a89523e <L44+1460>:  mov    0xffffffd4(%ebp),%eax
0x1a895241 <L44+1463>:  add    $0x8,%eax
0x1a895244 <L44+1466>:  mov    %eax,0x746440
0x1a895249 <L44+1471>:  mov    0x746440,%eax
0x1a89524e <L44+1476>:  add    $0x14,%eax
0x1a895251 <L44+1479>:  mov    %eax,0x73d090
0x1a895256 <L44+1484>:  call   0x407e2f <siLaset>
0x1a89525b <L44+1489>:  mov    0xffffffd0(%ebp),%ecx
0x1a89525e <L44+1492>:  mov    %ecx,0x73d090
0x1a895264 <L44+1498>:  jmp    0x1a895630 <L44+2470>
0x1a895269 <L44+1503>:  mov    0xffffffcc(%ebp),%eax
0x1a89526c <L44+1506>:  mov    0xffffffd4(%ebp),%esi
0x1a89526f <L44+1509>:  mov    %eax,0x8(%esi)
---Type <return> to continue, or q <return> to quit---
0x1a895272 <L44+1512>:  mov    0xffffffc4(%ebp),%edx
0x1a895275 <L44+1515>:  mov    0xc(%edx),%eax
0x1a895278 <L44+1518>:  add    $0x4,%eax
0x1a89527b <L44+1521>:  mov    (%eax),%eax
0x1a89527d <L44+1523>:  mov    %eax,0x6d6a40
0x1a895282 <L44+1528>:  add    $0x400,%eax
0x1a895287 <L44+1533>:  and    $0xfffff800,%eax
0x1a89528c <L44+1538>:  test   %eax,%eax
0x1a89528e <L44+1540>:  jne    0x1a8952a2 <L44+1560>
0x1a895290 <L44+1542>:  mov    0x6d6a40,%eax
0x1a895295 <L44+1547>:  shl    $0x3,%eax
0x1a895298 <L44+1550>:  add    $0x73b040,%eax
0x1a89529d <L44+1555>:  mov    %eax,0xffffff9c(%ebp)
0x1a8952a0 <L44+1558>:  jmp    0x1a8952b6 <L44+1580>
0x1a8952a2 <L44+1560>:  sub    $0xc,%esp
0x1a8952a5 <L44+1563>:  pushl  0x6d6a40
0x1a8952ab <L44+1569>:  call   0x44f450 <make_fixnum1>
0x1a8952b0 <L44+1574>:  add    $0x10,%esp
0x1a8952b3 <L44+1577>:  mov    %eax,0xffffff9c(%ebp)
0x1a8952b6 <L44+1580>:  mov    0xffffff9c(%ebp),%esi
0x1a8952b9 <L44+1583>:  mov    0xffffffd4(%ebp),%ecx
0x1a8952bc <L44+1586>:  mov    %esi,0xc(%ecx)
0x1a8952bf <L44+1589>:  mov    0xffffffc4(%ebp),%edx
---Type <return> to continue, or q <return> to quit---
0x1a8952c2 <L44+1592>:  mov    0xc(%edx),%eax
0x1a8952c5 <L44+1595>:  add    $0x8,%eax
0x1a8952c8 <L44+1598>:  mov    (%eax),%eax
0x1a8952ca <L44+1600>:  mov    %eax,0x6d6a40
0x1a8952cf <L44+1605>:  add    $0x400,%eax
0x1a8952d4 <L44+1610>:  and    $0xfffff800,%eax
0x1a8952d9 <L44+1615>:  test   %eax,%eax
0x1a8952db <L44+1617>:  jne    0x1a8952ef <L44+1637>
0x1a8952dd <L44+1619>:  mov    0x6d6a40,%eax
0x1a8952e2 <L44+1624>:  shl    $0x3,%eax
0x1a8952e5 <L44+1627>:  add    $0x73b040,%eax
0x1a8952ea <L44+1632>:  mov    %eax,0xffffff98(%ebp)
0x1a8952ed <L44+1635>:  jmp    0x1a895303 <L44+1657>
0x1a8952ef <L44+1637>:  sub    $0xc,%esp
0x1a8952f2 <L44+1640>:  pushl  0x6d6a40
0x1a8952f8 <L44+1646>:  call   0x44f450 <make_fixnum1>
0x1a8952fd <L44+1651>:  add    $0x10,%esp
0x1a895300 <L44+1654>:  mov    %eax,0xffffff98(%ebp)
0x1a895303 <L44+1657>:  mov    0xffffff98(%ebp),%esi
0x1a895306 <L44+1660>:  mov    0xffffffd4(%ebp),%ecx
0x1a895309 <L44+1663>:  mov    %esi,0x10(%ecx)
0x1a89530c <L44+1666>:  mov    0xffffffc4(%ebp),%edx
0x1a89530f <L44+1669>:  mov    0xc(%edx),%eax
---Type <return> to continue, or q <return> to quit---
0x1a895312 <L44+1672>:  add    $0xc,%eax
0x1a895315 <L44+1675>:  mov    (%eax),%eax
0x1a895317 <L44+1677>:  mov    %eax,0x6d6a40
0x1a89531c <L44+1682>:  add    $0x400,%eax
0x1a895321 <L44+1687>:  and    $0xfffff800,%eax
0x1a895326 <L44+1692>:  test   %eax,%eax
0x1a895328 <L44+1694>:  jne    0x1a89533c <L44+1714>
0x1a89532a <L44+1696>:  mov    0x6d6a40,%eax
0x1a89532f <L44+1701>:  shl    $0x3,%eax
0x1a895332 <L44+1704>:  add    $0x73b040,%eax
0x1a895337 <L44+1709>:  mov    %eax,0xffffff94(%ebp)
0x1a89533a <L44+1712>:  jmp    0x1a895350 <L44+1734>
0x1a89533c <L44+1714>:  sub    $0xc,%esp
0x1a89533f <L44+1717>:  pushl  0x6d6a40
0x1a895345 <L44+1723>:  call   0x44f450 <make_fixnum1>
0x1a89534a <L44+1728>:  add    $0x10,%esp
0x1a89534d <L44+1731>:  mov    %eax,0xffffff94(%ebp)
0x1a895350 <L44+1734>:  mov    0xffffff94(%ebp),%esi
0x1a895353 <L44+1737>:  mov    0xffffffd4(%ebp),%ecx
0x1a895356 <L44+1740>:  mov    %esi,0x14(%ecx)
0x1a895359 <L44+1743>:  mov    0xffffffc4(%ebp),%edx
0x1a89535c <L44+1746>:  mov    0xc(%edx),%eax
0x1a89535f <L44+1749>:  add    $0x10,%eax
---Type <return> to continue, or q <return> to quit---
0x1a895362 <L44+1752>:  mov    (%eax),%eax
0x1a895364 <L44+1754>:  mov    %eax,0x6d6a40
0x1a895369 <L44+1759>:  add    $0x400,%eax
0x1a89536e <L44+1764>:  and    $0xfffff800,%eax
0x1a895373 <L44+1769>:  test   %eax,%eax
0x1a895375 <L44+1771>:  jne    0x1a895389 <L44+1791>
0x1a895377 <L44+1773>:  mov    0x6d6a40,%eax
0x1a89537c <L44+1778>:  shl    $0x3,%eax
0x1a89537f <L44+1781>:  add    $0x73b040,%eax
0x1a895384 <L44+1786>:  mov    %eax,0xffffff90(%ebp)
0x1a895387 <L44+1789>:  jmp    0x1a89539d <L44+1811>
0x1a895389 <L44+1791>:  sub    $0xc,%esp
0x1a89538c <L44+1794>:  pushl  0x6d6a40
0x1a895392 <L44+1800>:  call   0x44f450 <make_fixnum1>
0x1a895397 <L44+1805>:  add    $0x10,%esp
0x1a89539a <L44+1808>:  mov    %eax,0xffffff90(%ebp)
0x1a89539d <L44+1811>:  mov    0xffffff90(%ebp),%esi
0x1a8953a0 <L44+1814>:  mov    0xffffffd4(%ebp),%ecx
0x1a8953a3 <L44+1817>:  mov    %esi,0x18(%ecx)
0x1a8953a6 <L44+1820>:  mov    0xffffffc8(%ebp),%edx
0x1a8953a9 <L44+1823>:  mov    0xffffffd4(%ebp),%eax
0x1a8953ac <L44+1826>:  mov    %edx,0x1c(%eax)
0x1a8953af <L44+1829>:  mov    0xffffffd4(%ebp),%eax
---Type <return> to continue, or q <return> to quit---
0x1a8953b2 <L44+1832>:  add    $0x8,%eax
0x1a8953b5 <L44+1835>:  mov    %eax,0x746440
0x1a8953ba <L44+1840>:  mov    0x746440,%eax
0x1a8953bf <L44+1845>:  add    $0x18,%eax
0x1a8953c2 <L44+1848>:  mov    %eax,0x73d090
0x1a8953c7 <L44+1853>:  call   0x407e2f <siLaset>
0x1a8953cc <L44+1858>:  mov    0xffffffd0(%ebp),%ecx
0x1a8953cf <L44+1861>:  mov    %ecx,0x73d090
0x1a8953d5 <L44+1867>:  jmp    0x1a895630 <L44+2470>
0x1a8953da <L44+1872>:  mov    0xffffffcc(%ebp),%eax
0x1a8953dd <L44+1875>:  mov    0xffffffd4(%ebp),%esi
0x1a8953e0 <L44+1878>:  mov    %eax,0x8(%esi)
0x1a8953e3 <L44+1881>:  mov    0xffffffc4(%ebp),%edx
0x1a8953e6 <L44+1884>:  mov    0xc(%edx),%eax
0x1a8953e9 <L44+1887>:  add    $0x4,%eax
0x1a8953ec <L44+1890>:  mov    (%eax),%eax
0x1a8953ee <L44+1892>:  mov    %eax,0x6d6a40
0x1a8953f3 <L44+1897>:  add    $0x400,%eax
0x1a8953f8 <L44+1902>:  and    $0xfffff800,%eax
0x1a8953fd <L44+1907>:  test   %eax,%eax
0x1a8953ff <L44+1909>:  jne    0x1a895413 <L44+1929>
0x1a895401 <L44+1911>:  mov    0x6d6a40,%eax
0x1a895406 <L44+1916>:  shl    $0x3,%eax
---Type <return> to continue, or q <return> to quit---
---Type <return> to continue, or q <return> to quit---
0x1a895409 <L44+1919>:  add    $0x73b040,%eax
0x1a89540e <L44+1924>:  mov    %eax,0xffffff8c(%ebp)
0x1a895411 <L44+1927>:  jmp    0x1a895427 <L44+1949>
0x1a895413 <L44+1929>:  sub    $0xc,%esp
0x1a895416 <L44+1932>:  pushl  0x6d6a40
0x1a89541c <L44+1938>:  call   0x44f450 <make_fixnum1>
0x1a895421 <L44+1943>:  add    $0x10,%esp
0x1a895424 <L44+1946>:  mov    %eax,0xffffff8c(%ebp)
0x1a895427 <L44+1949>:  mov    0xffffff8c(%ebp),%esi
0x1a89542a <L44+1952>:  mov    0xffffffd4(%ebp),%ecx
0x1a89542d <L44+1955>:  mov    %esi,0xc(%ecx)
0x1a895430 <L44+1958>:  mov    0xffffffc4(%ebp),%edx
0x1a895433 <L44+1961>:  mov    0xc(%edx),%eax
0x1a895436 <L44+1964>:  add    $0x8,%eax
0x1a895439 <L44+1967>:  mov    (%eax),%eax
0x1a89543b <L44+1969>:  mov    %eax,0x6d6a40
0x1a895440 <L44+1974>:  add    $0x400,%eax
0x1a895445 <L44+1979>:  and    $0xfffff800,%eax
0x1a89544a <L44+1984>:  test   %eax,%eax
0x1a89544c <L44+1986>:  jne    0x1a895460 <L44+2006>
0x1a89544e <L44+1988>:  mov    0x6d6a40,%eax
0x1a895453 <L44+1993>:  shl    $0x3,%eax
0x1a895456 <L44+1996>:  add    $0x73b040,%eax
---Type <return> to continue, or q <return> to quit---
0x1a89545b <L44+2001>:  mov    %eax,0xffffff88(%ebp)
0x1a89545e <L44+2004>:  jmp    0x1a895474 <L44+2026>
0x1a895460 <L44+2006>:  sub    $0xc,%esp
0x1a895463 <L44+2009>:  pushl  0x6d6a40
0x1a895469 <L44+2015>:  call   0x44f450 <make_fixnum1>
0x1a89546e <L44+2020>:  add    $0x10,%esp
0x1a895471 <L44+2023>:  mov    %eax,0xffffff88(%ebp)
0x1a895474 <L44+2026>:  mov    0xffffff88(%ebp),%esi
0x1a895477 <L44+2029>:  mov    0xffffffd4(%ebp),%ecx
0x1a89547a <L44+2032>:  mov    %esi,0x10(%ecx)
0x1a89547d <L44+2035>:  mov    0xffffffc4(%ebp),%edx
0x1a895480 <L44+2038>:  mov    0xc(%edx),%eax
0x1a895483 <L44+2041>:  add    $0xc,%eax
0x1a895486 <L44+2044>:  mov    (%eax),%eax
0x1a895488 <L44+2046>:  mov    %eax,0x6d6a40
0x1a89548d <L44+2051>:  add    $0x400,%eax
0x1a895492 <L44+2056>:  and    $0xfffff800,%eax
0x1a895497 <L44+2061>:  test   %eax,%eax
0x1a895499 <L44+2063>:  jne    0x1a8954ad <L44+2083>
0x1a89549b <L44+2065>:  mov    0x6d6a40,%eax
0x1a8954a0 <L44+2070>:  shl    $0x3,%eax
0x1a8954a3 <L44+2073>:  add    $0x73b040,%eax
0x1a8954a8 <L44+2078>:  mov    %eax,0xffffff84(%ebp)
---Type <return> to continue, or q <return> to quit---
0x1a8954ab <L44+2081>:  jmp    0x1a8954c1 <L44+2103>
0x1a8954ad <L44+2083>:  sub    $0xc,%esp
0x1a8954b0 <L44+2086>:  pushl  0x6d6a40
0x1a8954b6 <L44+2092>:  call   0x44f450 <make_fixnum1>
0x1a8954bb <L44+2097>:  add    $0x10,%esp
0x1a8954be <L44+2100>:  mov    %eax,0xffffff84(%ebp)
0x1a8954c1 <L44+2103>:  mov    0xffffff84(%ebp),%esi
0x1a8954c4 <L44+2106>:  mov    0xffffffd4(%ebp),%ecx
0x1a8954c7 <L44+2109>:  mov    %esi,0x14(%ecx)
0x1a8954ca <L44+2112>:  mov    0xffffffc4(%ebp),%edx
0x1a8954cd <L44+2115>:  mov    0xc(%edx),%eax
0x1a8954d0 <L44+2118>:  add    $0x10,%eax
0x1a8954d3 <L44+2121>:  mov    (%eax),%eax
0x1a8954d5 <L44+2123>:  mov    %eax,0x6d6a40
0x1a8954da <L44+2128>:  add    $0x400,%eax
0x1a8954df <L44+2133>:  and    $0xfffff800,%eax
0x1a8954e4 <L44+2138>:  test   %eax,%eax
0x1a8954e6 <L44+2140>:  jne    0x1a8954fa <L44+2160>
0x1a8954e8 <L44+2142>:  mov    0x6d6a40,%eax
0x1a8954ed <L44+2147>:  shl    $0x3,%eax
0x1a8954f0 <L44+2150>:  add    $0x73b040,%eax
0x1a8954f5 <L44+2155>:  mov    %eax,0xffffff80(%ebp)
0x1a8954f8 <L44+2158>:  jmp    0x1a89550e <L44+2180>
---Type <return> to continue, or q <return> to quit---
0x1a8954fa <L44+2160>:  sub    $0xc,%esp
0x1a8954fd <L44+2163>:  pushl  0x6d6a40
0x1a895503 <L44+2169>:  call   0x44f450 <make_fixnum1>
0x1a895508 <L44+2174>:  add    $0x10,%esp
0x1a89550b <L44+2177>:  mov    %eax,0xffffff80(%ebp)
0x1a89550e <L44+2180>:  mov    0xffffff80(%ebp),%esi
0x1a895511 <L44+2183>:  mov    0xffffffd4(%ebp),%ecx
0x1a895514 <L44+2186>:  mov    %esi,0x18(%ecx)
0x1a895517 <L44+2189>:  mov    0xffffffc4(%ebp),%edx
0x1a89551a <L44+2192>:  mov    0xc(%edx),%eax
0x1a89551d <L44+2195>:  add    $0x14,%eax
0x1a895520 <L44+2198>:  mov    (%eax),%eax
0x1a895522 <L44+2200>:  mov    %eax,0x6d6a40
0x1a895527 <L44+2205>:  add    $0x400,%eax
0x1a89552c <L44+2210>:  and    $0xfffff800,%eax
0x1a895531 <L44+2215>:  test   %eax,%eax
0x1a895533 <L44+2217>:  jne    0x1a89554a <L44+2240>
0x1a895535 <L44+2219>:  mov    0x6d6a40,%eax
0x1a89553a <L44+2224>:  shl    $0x3,%eax
0x1a89553d <L44+2227>:  add    $0x73b040,%eax
0x1a895542 <L44+2232>:  mov    %eax,0xffffff7c(%ebp)
0x1a895548 <L44+2238>:  jmp    0x1a895561 <L44+2263>
0x1a89554a <L44+2240>:  sub    $0xc,%esp
---Type <return> to continue, or q <return> to quit---
0x1a89554d <L44+2243>:  pushl  0x6d6a40
0x1a895553 <L44+2249>:  call   0x44f450 <make_fixnum1>
0x1a895558 <L44+2254>:  add    $0x10,%esp
0x1a89555b <L44+2257>:  mov    %eax,0xffffff7c(%ebp)
0x1a895561 <L44+2263>:  mov    0xffffff7c(%ebp),%esi
0x1a895567 <L44+2269>:  mov    0xffffffd4(%ebp),%ecx
0x1a89556a <L44+2272>:  mov    %esi,0x1c(%ecx)
0x1a89556d <L44+2275>:  mov    0xffffffc8(%ebp),%edx
0x1a895570 <L44+2278>:  mov    0xffffffd4(%ebp),%eax
0x1a895573 <L44+2281>:  mov    %edx,0x20(%eax)
0x1a895576 <L44+2284>:  mov    0xffffffd4(%ebp),%eax
0x1a895579 <L44+2287>:  add    $0x8,%eax
0x1a89557c <L44+2290>:  mov    %eax,0x746440
0x1a895581 <L44+2295>:  mov    0x746440,%eax
0x1a895586 <L44+2300>:  add    $0x1c,%eax
0x1a895589 <L44+2303>:  mov    %eax,0x73d090
0x1a89558e <L44+2308>:  call   0x407e2f <siLaset>
0x1a895593 <L44+2313>:  mov    0xffffffd0(%ebp),%ecx
0x1a895596 <L44+2316>:  mov    %ecx,0x73d090
0x1a89559c <L44+2322>:  jmp    0x1a895630 <L44+2470>
0x1a8955a1 <L44+2327>:  mov    0x1a896cf0,%eax
0x1a8955a6 <L44+2332>:  mov    0xffffffd4(%ebp),%esi
0x1a8955a9 <L44+2335>:  mov    %eax,0x8(%esi)
---Type <return> to continue, or q <return> to quit---
0x1a8955ac <L44+2338>:  mov    0xffffffc4(%ebp),%edx
0x1a8955af <L44+2341>:  mov    0xc(%edx),%eax
0x1a8955b2 <L44+2344>:  mov    (%eax),%eax
0x1a8955b4 <L44+2346>:  mov    %eax,0x6d6a40
0x1a8955b9 <L44+2351>:  add    $0x400,%eax
0x1a8955be <L44+2356>:  and    $0xfffff800,%eax
0x1a8955c3 <L44+2361>:  test   %eax,%eax
0x1a8955c5 <L44+2363>:  jne    0x1a8955dc <L44+2386>
0x1a8955c7 <L44+2365>:  mov    0x6d6a40,%eax
0x1a8955cc <L44+2370>:  shl    $0x3,%eax
0x1a8955cf <L44+2373>:  add    $0x73b040,%eax
0x1a8955d4 <L44+2378>:  mov    %eax,0xffffff78(%ebp)
0x1a8955da <L44+2384>:  jmp    0x1a8955f3 <L44+2409>
0x1a8955dc <L44+2386>:  sub    $0xc,%esp
0x1a8955df <L44+2389>:  pushl  0x6d6a40
0x1a8955e5 <L44+2395>:  call   0x44f450 <make_fixnum1>
0x1a8955ea <L44+2400>:  add    $0x10,%esp
0x1a8955ed <L44+2403>:  mov    %eax,0xffffff78(%ebp)
0x1a8955f3 <L44+2409>:  mov    0xffffff78(%ebp),%esi
0x1a8955f9 <L44+2415>:  mov    0xffffffd4(%ebp),%ecx
0x1a8955fc <L44+2418>:  mov    %esi,0xc(%ecx)
0x1a8955ff <L44+2421>:  mov    0x1a896cf4,%eax
0x1a895604 <L44+2426>:  mov    0xffffffd4(%ebp),%edx
---Type <return> to continue, or q <return> to quit---
0x1a895607 <L44+2429>:  mov    %eax,0x10(%edx)
0x1a89560a <L44+2432>:  mov    0xffffffd4(%ebp),%eax
0x1a89560d <L44+2435>:  add    $0x8,%eax
0x1a895610 <L44+2438>:  mov    %eax,0x746440
0x1a895615 <L44+2443>:  mov    0x746440,%eax
0x1a89561a <L44+2448>:  add    $0xc,%eax
0x1a89561d <L44+2451>:  mov    %eax,0x73d090
0x1a895622 <L44+2456>:  call   0x41ab49 <Lerror>
0x1a895627 <L44+2461>:  mov    0xffffffd0(%ebp),%ecx
0x1a89562a <L44+2464>:  mov    %ecx,0x73d090
0x1a895630 <L44+2470>:  mov    0xffffffd4(%ebp),%esi
0x1a895633 <L44+2473>:  movl   $0x73d4a0,0x8(%esi)
0x1a89563a <L44+2480>:  mov    0x1a896cf8,%eax
0x1a89563f <L44+2485>:  mov    0xffffffd4(%ebp),%edx
0x1a895642 <L44+2488>:  mov    %eax,0xc(%edx)
0x1a895645 <L44+2491>:  mov    0xffffffcc(%ebp),%esi
0x1a895648 <L44+2494>:  mov    0xffffffd4(%ebp),%ecx
0x1a89564b <L44+2497>:  mov    %esi,0x10(%ecx)
0x1a89564e <L44+2500>:  mov    0xffffffd4(%ebp),%eax
0x1a895651 <L44+2503>:  add    $0x8,%eax
0x1a895654 <L44+2506>:  mov    %eax,0x746440
0x1a895659 <L44+2511>:  mov    0x746440,%eax
0x1a89565e <L44+2516>:  add    $0xc,%eax
---Type <return> to continue, or q <return> to quit---
0x1a895661 <L44+2519>:  mov    %eax,0x73d090
0x1a895666 <L44+2524>:  call   0x42fbec <Lformat>
0x1a89566b <L44+2529>:  mov    0xffffffd0(%ebp),%eax
0x1a89566e <L44+2532>:  mov    %eax,0x73d090
0x1a895673 <L44+2537>:  mov    0xffffffc4(%ebp),%edx
0x1a895676 <L44+2540>:  mov    0xc(%edx),%eax
0x1a895679 <L44+2543>:  mov    (%eax),%eax
0x1a89567b <L44+2545>:  mov    %eax,0x6d6a40
0x1a895680 <L44+2550>:  add    $0x400,%eax
0x1a895685 <L44+2555>:  and    $0xfffff800,%eax
0x1a89568a <L44+2560>:  test   %eax,%eax
0x1a89568c <L44+2562>:  jne    0x1a8956a3 <L44+2585>
0x1a89568e <L44+2564>:  mov    0x6d6a40,%eax
0x1a895693 <L44+2569>:  shl    $0x3,%eax
0x1a895696 <L44+2572>:  add    $0x73b040,%eax
0x1a89569b <L44+2577>:  mov    %eax,0xffffff6c(%ebp)
0x1a8956a1 <L44+2583>:  jmp    0x1a8956ba <L44+2608>
0x1a8956a3 <L44+2585>:  sub    $0xc,%esp
0x1a8956a6 <L44+2588>:  pushl  0x6d6a40
0x1a8956ac <L44+2594>:  call   0x44f450 <make_fixnum1>
0x1a8956b1 <L44+2599>:  add    $0x10,%esp
0x1a8956b4 <L44+2602>:  mov    %eax,0xffffff6c(%ebp)
0x1a8956ba <L44+2608>:  mov    0xffffff6c(%ebp),%ecx
---Type <return> to continue, or q <return> to quit---
0x1a8956c0 <L44+2614>:  mov    %ecx,0xffffffdc(%ebp)
0x1a8956c3 <L44+2617>:  mov    0xffffffdc(%ebp),%eax
0x1a8956c6 <L44+2620>:  cmpb   $0x1,(%eax)
0x1a8956c9 <L44+2623>:  jne    0x1a8956d7 <L44+2637>
0x1a8956cb <L44+2625>:  movl   $0x73d4a0,0xffffff68(%ebp)
0x1a8956d5 <L44+2635>:  jmp    0x1a8956e1 <L44+2647>
0x1a8956d7 <L44+2637>:  movl   $0x6d6ab0,0xffffff68(%ebp)
0x1a8956e1 <L44+2647>:  mov    0xffffff68(%ebp),%esi
0x1a8956e7 <L44+2653>:  mov    %esi,0xffffffd8(%ebp)
0x1a8956ea <L44+2656>:  cmpl   $0x6d6ab0,0xffffffd8(%ebp)
0x1a8956f1 <L44+2663>:  jne    0x1a89570c <L44+2690>
0x1a8956f3 <L44+2665>:  mov    0x73d090,%eax
0x1a8956f8 <L44+2670>:  mov    %eax,0x746440
0x1a8956fd <L44+2675>:  mov    0x1a896dd8,%eax
0x1a895702 <L44+2680>:  call   *%eax
0x1a895704 <L44+2682>:  mov    0xffffffd0(%ebp),%eax
0x1a895707 <L44+2685>:  mov    %eax,0x73d090
0x1a89570c <L44+2690>:  mov    0xffffffdc(%ebp),%eax
0x1a89570f <L44+2693>:  mov    0x4(%eax),%eax
0x1a895712 <L44+2696>:  mov    %eax,0xffffff70(%ebp)
0x1a895718 <L44+2702>:  mov    0xffffff70(%ebp),%eax
0x1a89571e <L44+2708>:  lea    0x0(,%eax,4),%edx
0x1a895725 <L44+2715>:  mov    0xffffffc4(%ebp),%ecx
---Type <return> to continue, or q <return> to quit---
0x1a895728 <L44+2718>:  mov    0xc(%ecx),%eax
0x1a89572b <L44+2721>:  mov    (%edx,%eax,1),%eax
0x1a89572e <L44+2724>:  mov    %eax,0xffffffd8(%ebp)
0x1a895731 <L44+2727>:  mov    0xffffff70(%ebp),%eax
0x1a895737 <L44+2733>:  mov    %eax,0x6d6a40
0x1a89573c <L44+2738>:  add    $0x400,%eax
0x1a895741 <L44+2743>:  and    $0xfffff800,%eax
0x1a895746 <L44+2748>:  test   %eax,%eax
0x1a895748 <L44+2750>:  jne    0x1a89575f <L44+2773>
0x1a89574a <L44+2752>:  mov    0x6d6a40,%eax
0x1a89574f <L44+2757>:  shl    $0x3,%eax
0x1a895752 <L44+2760>:  add    $0x73b040,%eax
0x1a895757 <L44+2765>:  mov    %eax,0xffffff64(%ebp)
0x1a89575d <L44+2771>:  jmp    0x1a895776 <L44+2796>
0x1a89575f <L44+2773>:  sub    $0xc,%esp
0x1a895762 <L44+2776>:  pushl  0x6d6a40
0x1a895768 <L44+2782>:  call   0x44f450 <make_fixnum1>
0x1a89576d <L44+2787>:  add    $0x10,%esp
0x1a895770 <L44+2790>:  mov    %eax,0xffffff64(%ebp)
0x1a895776 <L44+2796>:  mov    0xffffff64(%ebp),%esi
0x1a89577c <L44+2802>:  mov    %esi,0xfffffff0(%ebp)
0x1a89577f <L44+2805>:  sub    $0x8,%esp
0x1a895782 <L44+2808>:  pushl  0xfffffff0(%ebp)
---Type <return> to continue, or q <return> to quit---
0x1a895785 <L44+2811>:  push   $0x73b068
0x1a89578a <L44+2816>:  call   0x449850 <number_plus>
0x1a89578f <L44+2821>:  add    $0x10,%esp
0x1a895792 <L44+2824>:  mov    %eax,0xfffffff4(%ebp)
0x1a895795 <L44+2827>:  sub    $0x8,%esp
0x1a895798 <L44+2830>:  mov    0xfffffff4(%ebp),%eax
0x1a89579b <L44+2833>:  pushl  0x4(%eax)
0x1a89579e <L44+2836>:  pushl  0xffffffc4(%ebp)
0x1a8957a1 <L44+2839>:  call   0x4075e4 <fLrow_major_aref>
0x1a8957a6 <L44+2844>:  add    $0x10,%esp
0x1a8957a9 <L44+2847>:  mov    0x4(%eax),%eax
0x1a8957ac <L44+2850>:  mov    %eax,0xffffffdc(%ebp)
0x1a8957af <L44+2853>:  mov    0xffffffd8(%ebp),%eax
0x1a8957b2 <L44+2856>:  cmp    0xffffffdc(%ebp),%eax
0x1a8957b5 <L44+2859>:  jl     0x1a8957b9 <L44+2863>
0x1a8957b7 <L44+2861>:  jmp    0x1a89580a <L44+2944>
0x1a8957b9 <L44+2863>:  mov    0xffffff70(%ebp),%eax
0x1a8957bf <L44+2869>:  lea    0x0(,%eax,4),%ebx
0x1a8957c6 <L44+2876>:  mov    0xffffffc4(%ebp),%eax
0x1a8957c9 <L44+2879>:  mov    0xc(%eax),%ecx
0x1a8957cc <L44+2882>:  mov    0xffffff70(%ebp),%eax
0x1a8957d2 <L44+2888>:  lea    0x0(,%eax,4),%edx
0x1a8957d9 <L44+2895>:  mov    0xffffffc4(%ebp),%esi
---Type <return> to continue, or q <return> to quit---
0x1a8957dc <L44+2898>:  mov    0xc(%esi),%eax
0x1a8957df <L44+2901>:  mov    (%edx,%eax,1),%eax
0x1a8957e2 <L44+2904>:  inc    %eax
0x1a8957e3 <L44+2905>:  mov    %eax,(%ebx,%ecx,1)
0x1a8957e6 <L44+2908>:  mov    0xffffffd4(%ebp),%eax
0x1a8957e9 <L44+2911>:  movl   $0x73d4a0,0x8(%eax)
0x1a8957f0 <L44+2918>:  mov    0xffffffd4(%ebp),%eax
0x1a8957f3 <L44+2921>:  add    $0x8,%eax
0x1a8957f6 <L44+2924>:  mov    %eax,0x746440
0x1a8957fb <L44+2929>:  mov    0x746440,%eax
0x1a895800 <L44+2934>:  add    $0x4,%eax
0x1a895803 <L44+2937>:  mov    %eax,0x73d090
0x1a895808 <L44+2942>:  jmp    0x1a895883 <L44+3065>
0x1a89580a <L44+2944>:  mov    0xffffff70(%ebp),%eax
0x1a895810 <L44+2950>:  lea    0x0(,%eax,4),%edx
0x1a895817 <L44+2957>:  mov    0xffffffc4(%ebp),%ecx
0x1a89581a <L44+2960>:  mov    0xc(%ecx),%eax
0x1a89581d <L44+2963>:  movl   $0x0,(%edx,%eax,1)
0x1a895824 <L44+2970>:  cmpl   $0x0,0xffffff70(%ebp)
0x1a89582b <L44+2977>:  je     0x1a89582f <L44+2981>
0x1a89582d <L44+2979>:  jmp    0x1a895853 <L44+3017>
0x1a89582f <L44+2981>:  mov    0xffffffd4(%ebp),%esi
0x1a895832 <L44+2984>:  movl   $0x6d6ab0,0x8(%esi)
---Type <return> to continue, or q <return> to quit---
0x1a895839 <L44+2991>:  mov    0xffffffd4(%ebp),%eax
0x1a89583c <L44+2994>:  add    $0x8,%eax
0x1a89583f <L44+2997>:  mov    %eax,0x746440
0x1a895844 <L44+3002>:  mov    0x746440,%eax
0x1a895849 <L44+3007>:  add    $0x4,%eax
0x1a89584c <L44+3010>:  mov    %eax,0x73d090
0x1a895851 <L44+3015>:  jmp    0x1a895883 <L44+3065>
0x1a895853 <L44+3017>:  cmpl   $0x80000001,0xffffff70(%ebp)
0x1a89585d <L44+3027>:  jg     0x1a895878 <L44+3054>
0x1a89585f <L44+3029>:  mov    0x73d090,%eax
0x1a895864 <L44+3034>:  mov    %eax,0x746440
0x1a895869 <L44+3039>:  mov    0x1a896dd8,%eax
0x1a89586e <L44+3044>:  call   *%eax
0x1a895870 <L44+3046>:  mov    0xffffffd0(%ebp),%eax
0x1a895873 <L44+3049>:  mov    %eax,0x73d090
0x1a895878 <L44+3054>:  decl   0xffffff70(%ebp)
0x1a89587e <L44+3060>:  jmp    0x1a895718 <L44+2702>
0x1a895883 <L44+3065>:  lea    0xfffffff8(%ebp),%esp
0x1a895886 <L44+3068>:  pop    %ebx
0x1a895887 <L44+3069>:  pop    %esi
0x1a895888 <L44+3070>:  leave
0x1a895889 <L44+3071>:  ret
End of assembler dump.
(gdb)
(gdb)
(gdb)




|
| Please keep us posted.  We might be close to closing this one.
|
| Take care,
|
| "Mike Thomas" <address@hidden> writes:
|
| > Hi Camm.
| >
| > There are three parts to this email - the first regarding the
| test program,
| > the second regarding the Maxima specfn crash, the third the
| result of your
| > eval-when and funlink patches.
| >
| > I haven't successfully separated them due to lack of time, but
| I hope you
| > can follow relatively easily.
| >
| > | OK, Mike, I don't think this one is Windows' fault.
| > |
| > | Please apply the following to hopefully fix:
| > |
| >
| > Thanks. The patch goes wrong in PCL as shown at the end of the email.
| >
| > I therefore swapped the *eval-when-defaults* setting back while
| retaining
| > the extra checks in "funlink.c" to see whether it improved the
| test program
| > and indeed that no longer segfaults, returning instead an
| appropriate Lisp
| > error message without crashing - so that is a positive result.
| >
| > Repeating the compile and load without restarting GCL results in a
| > successful load.
| >
| > I redeclared *acursor* per your suggestion but still can't reproduce the
| > Maxima specfn.o crash with the test file.  I'll look more closely to see
| > what else is different later.
| >
| > Unfortunately the Maxima "specfn.o" load still cranks out a
| memory damaged
| > error in aset-by-cursor (see gdb output and segment of C file
| further down).
| > Looking at the alleged offending line in the debugger I can't
| see a problem
| > with the array and pointer dereferences.
| >
| >
| > ---------------TEST
| PROGRAM------------------------------------------------
| > >(compile-file "specfntest.lsp")(load "specfntest.o")
| >
| > Compiling specfntest.lsp.
| > ; (IMPORT 'SLOOP:SLOOP) is being compiled.
| > ;; Warning: The package operation (IMPORT 'SLOOP:SLOOP) was in
| a bad place.
| > End of Pass 1.
| > End of Pass 2.
| > `-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead.
| > OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3
| > Finished compiling specfntest.lsp.
| > #p"specfntest.o"
| >
| > >
| > Loading specfntest.o
| > Error in FILLARRAY [or a callee]: F- is not of type FUNCTION.
| >
| > Fast links are on: do (use-fast-links nil) for debugging
| > Broken at FILLARRAY.  Type :H for Help.
| >  1 (Continue) Retry loading file "specfntest.o".
| >  2 Return to top level.
| > dbl:>>2
| >
| > Top level.
| > >(compile-file "specfntest.lsp")(load "specfntest.o")
| >
| > Compiling specfntest.lsp.
| > ; (IMPORT 'SLOOP) is being compiled.
| > ;; Warning: The package operation (IMPORT 'SLOOP) was in a bad place.
| > End of Pass 1.
| > End of Pass 2.
| > `-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead.
| > OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3
| > Finished compiling specfntest.lsp.
| > #p"specfntest.o"
| >
| > >
| > Loading specfntest.o
| > start address -T 1a6f4000 Finished loading specfntest.o
| > 5504
| >
| > >
| > ---------------MAXIMA
| SPECFN-----------------------------------------------
| > (gdb) add-symbol-file binary-gcl/specfn.o 0x1aed1000
| > add symbol table from file "binary-gcl/specfn.o" at
| >         .text_addr = 0x1aed1000
| > Reading symbols from binary-gcl/specfn.o...done.
| > (gdb) n
| > 328        {bds_bind(sSPinit,fasl_vec);
| > (gdb) n
| > 329         bds_bind(sSPmemory,memory);
| > (gdb) n
| > 333         (*at)();
| > (gdb) s
| > init_specfn () at c:binary-gcl/specfn.c:4
| > 4       void init_specfn(){do_init(VV);}
| > (gdb) n
| > fillarray: x = (14.0 1.9350643000000001 0.16607303300000001
| >                 0.0248793229 0.0046863619600000005
| >                 0.0010016274999999999 2.3200219600000001E-4
| >                 5.6817822700000005E-5 1.4496300600000003E-5
| >                 3.8163294599999999E-6 1.0299042599999999E-6
| >                 2.8357538499999994E-7 7.9387055000000009E-8
| >                 2.2536705000000001E-8 6.4743380000000008E-9)
| > set-up-cursor: lis (15)
| > set-up-cursor: 1 *acursor* #(1 0 0 0 0 0 0 0 0 0 0)
| > set-up-cursor: 2 *acursor* #(1 0 0 0 0 0 14 0 0 0 0)
| > set-up-cursor: 3 *acursor* #(1 0 0 0 0 0 14 0 0 0 0)
| > fillarray: Setting by cursor ar #(0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
| >                                   0.0 0.0 0.0 0.0 0.0 0.0)
| > fillarray: Just printed ar, calling aset-by-cursor ar = #(0.0 0.0 0.0
| >                                                           0.0 0.0 0.0
| >                                                           0.0 0.0 0.0
| >                                                           0.0 0.0 0.0
| >                                                           0.0
| 0.0 0.0), (car
| > x)
| > = 14.0
| > aset-by-cursor: curs #(1 0 0 0 0 0 14 0 0 0 0)
| > val 14.0
| > ar #(0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0)
| > aset-by-cursor: (aref curs 0) 1
| > aset-by-cursor: (aref curs 1) 0
| > aset-by-cursor: (aref ar 0) 0.0
| > aset-by-cursor: (aref ar 1) 0.0
| > aset-by-cursor: ar #(1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
| >                      0.0 0.0 0.0)
| > aset-by-cursor: ar #(14.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
| >                      0.0 0.0 0.0)
| >
| > Program received signal SIGSEGV, Segmentation fault.
| > 0x1a89500f in L44 () at c:binary-gcl/clmacs.c:1990
| > 1990
| vs_top=sup;switch((long)((V166))->fixa.fixa_self[(long)0]){
| > (gdb) bt
| > #0  0x1a89500f in L44 () at c:binary-gcl/clmacs.c:1990
| > #1  0x004303e4 in call_or_link (sym=0x1a709024, link=0x1a896da4)
| >     at funlink.c:88
| > #2  0x1a89697a in LnkT99 () at c:binary-gcl/clmacs.c:2654
| > #3  0x1a895c9e in L45 () at c:binary-gcl/clmacs.c:2245
| > #4  0x0041ee26 in eval (form=0x6d6ab0) at eval.c:1090
| > #5  0x00418efb in do_init (statVV=0x1aed9150) at cmpaux.c:409
| > #6  0x1aed1013 in init_specfn () at c:binary-gcl/specfn.c:4
| > #7  0x00418d63 in call_init (init_address=0, memory=0x1a453bb8,
| >     fasl_vec=0x1aed0428, fptr=0) at cmpaux.c:333
| > #8  0x0046d5b0 in fasload (faslfile=0x1aecba8c) at sfasl.c:465
| > #9  0x00427f21 in Lload () at file.d:1842
| > #10 0x00495782 in L13 () at clcs_install.c:569
| > #11 0x0041cec9 in funcall (fun=0x1a402240) at eval.c:173
| > #12 0x0044901b in IapplyVector (fun=0x1a402240, nargs=1, base=0x746790)
| >     at nfunlink.c:239
| > #13 0x0041f09e in fLfuncall (fun=0x1a402240) at eval.c:1140
| > #14 0x00430a8f in c_apply_n (fn=0x41f015 <fLfuncall>, n=2, x=0x746788)
| >     at funlink.c:364
| > #15 0x00448ed8 in IapplyVector (fun=0x1a007e4c, nargs=2, base=0x746788)
| >     at nfunlink.c:229
| > #16 0x0041cf96 in funcall (fun=0x1a007e4c) at eval.c:190
| > #17 0x0041d8bb in funcall_no_event (fun=0x1a007e4c) at eval.c:381
| > ---Type <return> to continue, or q <return> to quit---
| > #18 0x0041ee33 in eval (form=0x6d6ab0) at eval.c:1092
| > #19 0x0045f51f in Fprogn (body=0x1a460cf0) at prog.c:248
| > #20 0x0041ebbb in eval (form=0x1a460d38) at eval.c:1037
| > #21 0x00458365 in For (args=0x1a460c84) at predicate.c:762
| > #22 0x0041ebbb in eval (form=0x1a460d50) at eval.c:1037
| > #23 0x0045f51f in Fprogn (body=0x1a8164d4) at prog.c:248
| > #24 0x0041ebbb in eval (form=0x1a8164bc) at eval.c:1037
| > #25 0x00419691 in Fcond (args=0x1a460c54) at conditional.c:79
| > #26 0x0041ebbb in eval (form=0x1a4612ac) at eval.c:1037
| > #27 0x00419d2f in Fwhen (form=0x1a460ae0) at conditional.c:161
| > #28 0x0041ebbb in eval (form=0x1a461360) at eval.c:1037
| > #29 0x0045f51f in Fprogn (body=0x1a460ad4) at prog.c:248
| > #30 0x0043cbf4 in FletA (form=0x1a461438) at let.c:110
| > #31 0x0041ebbb in eval (form=0x1a461c00) at eval.c:1037
| > #32 0x0041d620 in funcall (fun=0x1a43c9b0) at eval.c:327
| > #33 0x0041d8bb in funcall_no_event (fun=0x1a460abc) at eval.c:381
| > #34 0x0041ee33 in eval (form=0x6d6ab0) at eval.c:1092
| > #35 0x0045813f in Fand (args=0x1a46ae28) at predicate.c:728
| > #36 0x0041ebbb in eval (form=0x1a46ae58) at eval.c:1037
| > #37 0x00419415 in Fif (form=0x1a46ae70) at conditional.c:50
| > #38 0x0041ebbb in eval (form=0x1a46af0c) at eval.c:1037
| > #39 0x0045f51f in Fprogn (body=0x1a46adec) at prog.c:248
| > #40 0x0043ca55 in Flet (form=0x1a46af18) at let.c:82
| > ---Type <return> to continue, or q <return> to quit---
| > #41 0x0041ebbb in eval (form=0x1a46af84) at eval.c:1037
| > #42 0x0041d620 in funcall (fun=0x1a7b28d0) at eval.c:327
| > #43 0x0044901b in IapplyVector (fun=0x1a283cf0, nargs=2, base=0x746724)
| >     at nfunlink.c:239
| > #44 0x0041f09e in fLfuncall (fun=0x1a283cf0) at eval.c:1140
| > #45 0x00430ab7 in c_apply_n (fn=0x41f015 <fLfuncall>, n=3, x=0x746718)
| >     at funlink.c:365
| > #46 0x00448ed8 in IapplyVector (fun=0x1a007e4c, nargs=3, base=0x746718)
| >     at nfunlink.c:229
| > #47 0x0041cf96 in funcall (fun=0x1a007e4c) at eval.c:190
| > #48 0x0041d8bb in funcall_no_event (fun=0x1a007e4c) at eval.c:381
| > #49 0x0041ee33 in eval (form=0x6d6ab0) at eval.c:1092
| > #50 0x00419aad in Fcase (arg=0x1a4cace4) at conditional.c:135
| > #51 0x0041ebbb in eval (form=0x1a4cad74) at eval.c:1037
| > #52 0x0041e72c in Ieval (form=0x1a4cad74) at eval.c:928
| > #53 0x0040d143 in Fsetq (form=0x1a4cad80) at assignment.c:100
| > #54 0x0041ebbb in eval (form=0x1a4cad8c) at eval.c:1037
| > #55 0x0045f51f in Fprogn (body=0x1a4cabac) at prog.c:248
| > #56 0x0041ebbb in eval (form=0x1a4d1f9c) at eval.c:1037
| > #57 0x00414e57 in Funwind_protect (args=0x1a4c8588) at catch.c:120
| > #58 0x0041ebbb in eval (form=0x1a4d1fa8) at eval.c:1037
| > #59 0x0045f51f in Fprogn (body=0x1a4c8528) at prog.c:248
| > #60 0x0043ca55 in Flet (form=0x1a4d1fb4) at let.c:82
| > ---Type <return> to continue, or q <return> to quit---
| > #61 0x0041ebbb in eval (form=0x1a4d3048) at eval.c:1037
| > #62 0x0041d620 in funcall (fun=0x1a7b28e0) at eval.c:327
| > #63 0x0041d8bb in funcall_no_event (fun=0x1a4c8360) at eval.c:381
| > #64 0x0041ee33 in eval (form=0x6d6ab0) at eval.c:1092
| > #65 0x00419c1e in Fwhen (form=0x1a4c7474) at conditional.c:149
| > #66 0x0041ebbb in eval (form=0x1a4c7714) at eval.c:1037
| > #67 0x0045e936 in Ftagbody (body=0x1a4c7438) at prog.c:95
| > #68 0x0043bd86 in Fdolist (arg=0x1a4c7720) at iteration.c:357
| > #69 0x0041ebbb in eval (form=0x1a4c775c) at eval.c:1037
| > #70 0x00419433 in Fif (form=0x1a4c7768) at conditional.c:54
| > #71 0x0041ebbb in eval (form=0x1a4c778c) at eval.c:1037
| > #72 0x0045f51f in Fprogn (body=0x1aa0ac9c) at prog.c:248
| > #73 0x0041ebbb in eval (form=0x1aa0ac84) at eval.c:1037
| > #74 0x0041d620 in funcall (fun=0x1a7b2928) at eval.c:327
| > #75 0x0041d8bb in funcall_no_event (fun=0x1a4c7300) at eval.c:381
| > #76 0x0041ee33 in eval (form=0x6d6ab0) at eval.c:1092
| > #77 0x00419aad in Fcase (arg=0x1a4cabc4) at conditional.c:135
| > #78 0x0041ebbb in eval (form=0x1a4cad74) at eval.c:1037
| > #79 0x0041e72c in Ieval (form=0x1a4cad74) at eval.c:928
| > #80 0x0040d143 in Fsetq (form=0x1a4cad80) at assignment.c:100
| > #81 0x0041ebbb in eval (form=0x1a4cad8c) at eval.c:1037
| > #82 0x0045f51f in Fprogn (body=0x1a4cabac) at prog.c:248
| > #83 0x0041ebbb in eval (form=0x1a4d1f9c) at eval.c:1037
| > ---Type <return> to continue, or q <return> to quit---
| > #84 0x00414e57 in Funwind_protect (args=0x1a4c8588) at catch.c:120
| > #85 0x0041ebbb in eval (form=0x1a4d1fa8) at eval.c:1037
| > #86 0x0045f51f in Fprogn (body=0x1a4c8528) at prog.c:248
| > #87 0x0043ca55 in Flet (form=0x1a4d1fb4) at let.c:82
| > #88 0x0041ebbb in eval (form=0x1a4d3048) at eval.c:1037
| > #89 0x0041d620 in funcall (fun=0x1a7b2938) at eval.c:327
| > #90 0x0041d8bb in funcall_no_event (fun=0x1a4c8360) at eval.c:381
| > #91 0x0041ee33 in eval (form=0x6d6ab0) at eval.c:1092
| > #92 0x00419c1e in Fwhen (form=0x1a4c7474) at conditional.c:149
| > #93 0x0041ebbb in eval (form=0x1a4c7714) at eval.c:1037
| > #94 0x0045e936 in Ftagbody (body=0x1a4c7438) at prog.c:95
| > #95 0x0043bd86 in Fdolist (arg=0x1a4c7720) at iteration.c:357
| > #96 0x0041ebbb in eval (form=0x1a4c775c) at eval.c:1037
| > #97 0x00419433 in Fif (form=0x1a4c7768) at conditional.c:54
| > #98 0x0041ebbb in eval (form=0x1a4c778c) at eval.c:1037
| > #99 0x0045f51f in Fprogn (body=0x1a747fa8) at prog.c:248
| > #100 0x0041ebbb in eval (form=0x1a747f90) at eval.c:1037
| > #101 0x0041d620 in funcall (fun=0x1a43c918) at eval.c:327
| > #102 0x0041d8bb in funcall_no_event (fun=0x1a4c7300) at eval.c:381
| > #103 0x0041ee33 in eval (form=0x6d6ab0) at eval.c:1092
| > #104 0x00419aad in Fcase (arg=0x1a4cabc4) at conditional.c:135
| > #105 0x0041ebbb in eval (form=0x1a4cad74) at eval.c:1037
| > #106 0x0041e72c in Ieval (form=0x1a4cad74) at eval.c:928
| > ---Type <return> to continue, or q <return> to quit---q
| > Quit (expect signal SIGINT when the program is resumed)
| > (gdb)
| >
| > (gdb) p sup
| > $3 = (object *) 0x746834
| > (gdb) p vs_top
| > $4 = (object *) 0x746834
| > (gdb) p V166
| > $5 = 0x1a88f070
| > (gdb) p (long)((V166))->fixa
| > $6 = 12
| > (gdb) p (long)((V166))->fixa.fixa_self
| > $7 = 504243640
| > (gdb) p (object)((V166))->fixa.fixa_self
| > $8 = (union lispunion *) 0x1e0e25b8
| > (gdb) p (object)((V166))->fixa.fixa_self[(long)0]
| > $9 = (union lispunion *) 0x1
| > (gdb) p (object)((V166))->fixa
| > $10 = (union lispunion *) 0xc
| > (gdb) p (object)((V166))
| > $11 = 0x1a88f070
| > (gdb) p (object)((V166))->d.t
| > $12 = (union lispunion *) 0xc
| > (gdb) p (long)((V166))->d.t
| > $13 = 12
| > (gdb) p (enum type)((V166))->d.t
| > $14 = t_vector
| > (gdb) p (long)((V166))->fixa.fixa_self[(long)0]
| > $15 = 1
| > (gdb) p sup->d.t
| > $16 = 7 '\a'
| > (gdb) p sup->d
| > $17 = {t = 7 '\a', flag = 0 '\0', s = 0 '\0', m = 0 '\0'}
| > (gdb) p (enum type) sup->d.t
| > $18 = t_character
| > (gdb) p (long)((V166))->fixa.fixa_self[(long)1]
| > $19 = 0
| > ============== ASET-BY-CURSOR C CODE ===================
| >
| > /*  function definition for ASET-BY-CURSOR  */
| >
| > static void L44()
| > {register object *base=vs_base;
| >     register object *sup=base+VM44; VC44
| >     vs_check;
| >     {register object V164;
| >     register object V165;
| >     V164=(base[0]);
| >     V165=(base[1]);
| >     vs_top=sup;
| >     goto TTL;
| > TTL:;
| >     {register object V166;
| >     V166= (VV[46]->s.s_dbind);
| >     base[2]= Ct;
| >     base[3]= VV[52];
| >     base[4]= (V166);
| >     base[5]= (V165);
| >     base[6]= (V164);
| >     vs_top=(vs_base=base+2)+5;
| >     Lformat();
| >     vs_top=sup;
| >     base[2]= Ct;
| >     base[3]= VV[53];
| >     base[4]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)0]);
| >     vs_top=(vs_base=base+2)+3;
| >     Lformat();
| >     vs_top=sup;
| >     base[2]= Ct;
| >     base[3]= VV[54];
| >     base[4]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)1]);
| >     vs_top=(vs_base=base+2)+3;
| >     Lformat();
| >     vs_top=sup;
| >     base[2]= Ct;
| >     base[3]= VV[55];
| >     base[4]= aref1((V164),fix(small_fixnum(0)));
| >     vs_top=(vs_base=base+2)+3;
| >     Lformat();
| >     vs_top=sup;
| >     base[2]= Ct;
| >     base[3]= VV[56];
| >     base[4]= aref1((V164),fix(small_fixnum(1)));
| >     vs_top=(vs_base=base+2)+3;
| >     Lformat();
| >     vs_top=sup;
| >     (void)(aset1((V164),fix(small_fixnum(0)),VV[57]));
| >     base[2]= Ct;
| >     base[3]= VV[58];
| >     base[4]= (V164);
| >     vs_top=(vs_base=base+2)+3;
| >     Lformat();
| >     vs_top=sup;
| >     V167 = CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)1]);
| >     (void)(aset1((V164),fix(V167),(V165)));
| >     base[2]= Ct;
| >     base[3]= VV[59];
| >     base[4]= (V164);
| >     vs_top=(vs_base=base+2)+3;
| >     Lformat();
| >     vs_top=sup;switch((long)((V166))->fixa.fixa_self[(long)0]){
| >     case 1:
| >     goto T579;
| > T579:;
| >     V168 = CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)1]);
| >     (void)(aset1((V164),fix(V168),(V165)));
| >     goto T577;
| >     case 2:
| >     goto T580;
| > T580:;
| >     V169 = CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)1]);
| >     V170 = CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)2]);
| >
| (void)(aset((V164),fix(V169)*((V164))->a.a_dims[1]+fix(V170),(V165)));
| >     goto T577;
| >     case 3:
| >     goto T581;
| > T581:;
| >     base[2]= (V164);
| >     base[3]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)1]);
| >     base[4]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)2]);
| >     base[5]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)3]);
| >     base[6]= (V165);
| >     vs_top=(vs_base=base+2)+5;
| >     siLaset();
| >     vs_top=sup;
| >     goto T577;
| >     case 4:
| >     goto T582;
| > T582:;
| >     base[2]= (V164);
| >     base[3]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)1]);
| >     base[4]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)2]);
| >     base[5]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)3]);
| >     base[6]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)4]);
| >     base[7]= (V165);
| >     vs_top=(vs_base=base+2)+6;
| >     siLaset();
| >     vs_top=sup;
| >     goto T577;
| >     case 5:
| >     goto T583;
| > T583:;
| >     base[2]= (V164);
| >     base[3]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)1]);
| >     base[4]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)2]);
| >     base[5]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)3]);
| >     base[6]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)4]);
| >     base[7]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)5]);
| >     base[8]= (V165);
| >     vs_top=(vs_base=base+2)+7;
| >     siLaset();
| >     vs_top=sup;
| >     goto T577;
| >     default:
| >     goto T584;
| > T584:;
| >     base[2]= VV[60];
| >     base[3]= CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)0]);
| >     base[4]= VV[61];
| >     vs_top=(vs_base=base+2)+3;
| >     Lerror();
| >     vs_top=sup;
| >     goto T577;}
| >     goto T577;
| > T577:;
| >     base[2]= Ct;
| >     base[3]= VV[62];
| >     base[4]= (V164);
| >     vs_top=(vs_base=base+2)+3;
| >     Lformat();
| >     vs_top=sup;
| >     {register long V171;
| >     {object V172;
| >     V172=
| CMPmake_fixnum((long)((V166))->fixa.fixa_self[(long)0]);{object V173;
| >     V173= (type_of((V172))==t_fixnum?Ct:Cnil);
| >     if(V173==Cnil)goto T614;
| >     goto T613;
| >     goto T614;
| > T614:;}
| >     vs_base=vs_top;
| >     (void) (*Lnk83)();
| >     vs_top=sup;
| >     goto T613;
| > T613:;
| >     V171= fix((V172));}
| >     goto T617;
| > T617:;
| >     {long V174= (long)((V166))->fixa.fixa_self[V171];
| >     V175 = CMPmake_fixnum(V171);
| >     V176= number_plus(small_fixnum(5),V175);
| >     {long V177= fix(aref1((V166),fix(/* INLINE-ARGS */V176)));
| >     if(!((/* INLINE-ARGS */V174)<(/* INLINE-ARGS */V177))){
| >     goto T620;}}}
| >     (void)(((V166))->fixa.fixa_self[V171]=
| > ((long)((long)((V166))->fixa.fixa_self[V171])+((long)1)));
| >     base[2]= Ct;
| >     vs_top=(vs_base=base+2)+1;
| >     return;
| >     goto T620;
| > T620:;
| >     (void)(((V166))->fixa.fixa_self[V171]= ((long)0));
| >     if(!((V171)==((long)0))){
| >     goto T623;}
| >     base[2]= Cnil;
| >     vs_top=(vs_base=base+2)+1;
| >     return;
| >     goto T623;
| > T623:;
| >     if(!((V171)>((long)-2147483647))){
| >     goto T627;}
| >     goto T626;
| >     goto T627;
| > T627:;
| >     vs_base=vs_top;
| >     (void) (*Lnk83)();
| >     vs_top=sup;
| >     goto T626;
| > T626:;
| >     V171= (long)(V171)-((long)1);
| >     goto T617;
| >     base[2]= Cnil;
| >     vs_top=(vs_base=base+2)+1;
| >     return;
| >     base[2]= Cnil;
| >     vs_top=(vs_base=base+2)+1;
| >     return;}}
| >     }
| > }
| > ==================================================================
| >
| > Cheers
| >
| > Mike Thomas
| >
| >
| >
| > ====================PCL EVAL-WHEN PROBLEM===============================
| > ....
| > Compiling PCL_GENERIC_FUNCTIONS...
| > Compiling c:/cvs/head/gcl/unixport/../pcl/pcl_generic_functions.lisp.
| >
| > Error: The function LEGAL-LAMBDA-LIST-P is undefined.
| > Fast links are on: do (si::use-fast-links nil) for debugging
| > Error signalled by FUNCTION.
| > Backtrace: compiler::t1expr > system:error-set > eval > eval > FUNCTION
| > ; #'LEGAL-LAMBDA-LIST-P is being compiled.
| > ;;; The form #'LEGAL-LAMBDA-LIST-P was not evaluated successfully.
| > ;;; You are recommended to compile again.
| >
| > Error: The function SHORT-METHOD-COMBINATION-P is undefined.
| > Fast links are on: do (si::use-fast-links nil) for debugging
| > Error signalled by FUNCTION.
| > Backtrace: compiler::t1expr > system:error-set > eval > eval > FUNCTION
| > ; #'SHORT-METHOD-COMBINATION-P is being compiled.
| > ;;; The form #'SHORT-METHOD-COMBINATION-P was not evaluated
| successfully.
| > ;;; You are recommended to compile again.
| >
| > ....
| >
| > ========================================================================
| >
| > Large numbers of similar messages then follow.
| >
| >
| >
| >
| >
|
| --
| Camm Maguire                                          address@hidden
| ==========================================================================
| "The earth is but one country, and mankind its citizens."  --  Baha'u'llah
|
|
| _______________________________________________
| Gcl-devel mailing list
| address@hidden
| http://lists.gnu.org/mailman/listinfo/gcl-devel
|
|






reply via email to

[Prev in Thread] Current Thread [Next in Thread]