[fpc-pascal] Building compiler which stalls

Hairy Pixels genericptr at gmail.com
Sat Mar 4 15:10:22 CET 2023



> On Mar 4, 2023, at 6:28 PM, Jonas Maebe via fpc-pascal <fpc-pascal at lists.freepascal.org> wrote:
> 
> You can add "-Xs- -gw -Xg" to OPT to prevent symbol stripping and add debug info, and then when it's stuck either attach a debugger or run "sample ppcx64"

Thanks, I’ve done that and here’s both the LLDB output and sample.

It looks like it’s crashed on an exception but I don’t understand why it’s spinning the CPU. Either way something is clearly wrong and I’ve never seen this before.

==============================

Last login: Sat Mar  4 21:04:40 on ttys003
fpc$ lldb
(lldb) process attach --name ppca64
Process 40083 stopped
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=259, address=0x102e8b71c)
    frame #0: 0x0000000102ad4a70 ppca64`FPC_BREAK_ERROR
ppca64`FPC_BREAK_ERROR:
->  0x102ad4a70 <+0>:  stp    x29, x30, [sp, #-0x10]!
    0x102ad4a74 <+4>:  mov    x29, sp
    0x102ad4a78 <+8>:  stp    x19, x20, [sp, #-0x10]!
    0x102ad4a7c <+12>: stp    x21, x21, [sp, #-0x10]!
Target 0: (ppca64) stopped.
Executable module set to "/Users/ryanjoseph/Developer/fpc/ppca64".
Architecture set to: arm64e-apple-macosx-.
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=259, address=0x102e8b71c)
  * frame #0: 0x0000000102ad4a70 ppca64`FPC_BREAK_ERROR
    frame #1: 0x0000000102b319b4 ppca64`SYSTEMS_$$_SET_TARGET$TSYSTEM$$BOOLEAN + 260
    frame #2: 0x0000000102b319b4 ppca64`SYSTEMS_$$_SET_TARGET$TSYSTEM$$BOOLEAN + 260
    frame #3: 0x0000000102b3238c ppca64`SYSTEMS_$$_DEFAULT_TARGET$TSYSTEM + 12
    frame #4: 0x0000000102b32448 ppca64`SYSTEMS_$$_INITSYSTEMS + 24
    frame #5: 0x0000000102ae4ae8 ppca64`COMPILER_$$_INITCOMPILER$ANSISTRING + 56
    frame #6: 0x0000000102ae4c20 ppca64`COMPILER_$$_COMPILE$ANSISTRING$$LONGINT + 192
    frame #7: 0x0000000102abcfa0 ppca64`PASCALMAIN + 64
    frame #8: 0x0000000102ae1a5c ppca64`FPC_SysEntry + 28
    frame #9: 0x0000000102abccf0 ppca64`FPC_SYSTEMMAIN + 48
    frame #10: 0x00000001937a3e50 dyld`start + 2544
(lldb) 

========================================================

Last login: Sat Mar  4 13:11:52 on ttys000
fpc$ sample ppca64
Sampling process 40083 for 10 seconds with 1 millisecond of run time between samples
Sampling completed, processing symbols...
Sample analysis of process 40083 written to file /tmp/ppca64_2023-03-04_210515_GYef.sample.txt

Analysis of sampling ppca64 (pid 40083) every 1 millisecond
Process:         ppca64 [40083]
Path:            /Users/USER/*/ppca64
Load Address:    0x102abc000
Identifier:      ppca64
Version:         0
Code Type:       ARM64
Platform:        macOS
Parent Process:  make [40081]

Date/Time:       2023-03-04 21:05:15.383 +0700
Launch Time:     2023-03-04 21:03:59.302 +0700
OS Version:      macOS 13.1 (22C65)
Report Version:  7
Analysis Tool:   /usr/bin/sample

Physical footprint:         2081K
Physical footprint (peak):  2081K
Idle exit: untracked
----

Call graph:
    4555 Thread_326874   DispatchQueue_1: com.apple.main-thread  (serial)
      4555 start  (in dyld) + 2544  [0x1937a3e50]
        4555 FPC_SYSTEMMAIN  (in ppca64) + 48  [0x102abccf0]
          4555 FPC_SysEntry  (in ppca64) + 28  [0x102ae1a5c]
            4555 PASCALMAIN  (in ppca64) + 64  [0x102abcfa0]
              4555 COMPILER_$$_COMPILE$ANSISTRING$$LONGINT  (in ppca64) + 192  [0x102ae4c20]
                4555 COMPILER_$$_INITCOMPILER$ANSISTRING  (in ppca64) + 56  [0x102ae4ae8]
                  4555 SYSTEMS_$$_INITSYSTEMS  (in ppca64) + 24  [0x102b32448]
                    4555 SYSTEMS_$$_DEFAULT_TARGET$TSYSTEM  (in ppca64) + 12  [0x102b3238c]
                      4555 SYSTEMS_$$_SET_TARGET$TSYSTEM$$BOOLEAN  (in ppca64) + 260  [0x102b319b4]
                        4555 SYSTEMS_$$_SET_TARGET$TSYSTEM$$BOOLEAN  (in ppca64) + 260  [0x102b319b4]
                          3698 _sigtramp  (in libsystem_platform.dylib) + 0  [0x193afb26c]
                          441 FPC_BREAK_ERROR  (in ppca64) + 0  [0x102ad4a70]
                          408 _sigtramp  (in libsystem_platform.dylib) + 56  [0x193afb2a4]
                          + 407 FPC_DEFAULTSIGHANDLER  (in ppca64) + 432  [0x102ae1580]
                          + ! 395 SYSTEM_$$_REENABLE_SIGNAL$LONGINT$$BOOLEAN  (in ppca64) + 144  [0x102ae13a0]
                          + ! : 394 sigprocmask  (in libsystem_kernel.dylib) + 8  [0x193a91430]
                          + ! : 1 DYLD-STUB$$sigprocmask  (in ppca64) + 4  [0x102d58b74]
                          + ! 5 SYSTEM_$$_REENABLE_SIGNAL$LONGINT$$BOOLEAN  (in ppca64) + 36  [0x102ae1334]
                          + ! : 4 SYSTEM_$$_FILLCHAR$formal$INT64$CHAR  (in ppca64) + 32  [0x102abde30]
                          + ! : | 3 _platform_memset  (in libsystem_platform.dylib) + 0,12,...  [0x193afac00,0x193afac0c,...]
                          + ! : | 1 DYLD-STUB$$memset  (in ppca64) + 4  [0x102d58ac0]
                          + ! : 1 SYSTEM_$$_FILLCHAR$formal$INT64$CHAR  (in ppca64) + 32  [0x102abde30]
                          + ! 2 SYSTEM_$$_REENABLE_SIGNAL$LONGINT$$BOOLEAN  (in ppca64) + 164  [0x102ae13b4]
                          + ! : 2 FPC_SYS_SETERRNO  (in ppca64) + 20  [0x102abd284]
                          + ! :   1 DYLD-STUB$$__error  (in ppca64) + 4  [0x102d58904]
                          + ! :   1 __error  (in libsystem_kernel.dylib) + 0  [0x193a8e74c]
                          + ! 2 SYSTEM_$$_REENABLE_SIGNAL$LONGINT$$BOOLEAN  (in ppca64) + 0,12  [0x102ae1310,0x102ae131c]
                          + ! 1 SYSTEM_$$_REENABLE_SIGNAL$LONGINT$$BOOLEAN  (in ppca64) + 52  [0x102ae1344]
                          + ! : 1 SYSTEM_$$_FILLCHAR$formal$INT64$CHAR  (in ppca64) + 32  [0x102abde30]
                          + ! :   1 _platform_memset  (in libsystem_platform.dylib) + 200  [0x193afacc8]
                          + ! 1 SYSTEM_$$_REENABLE_SIGNAL$LONGINT$$BOOLEAN  (in ppca64) + 124  [0x102ae138c]
                          + ! : 1 FPC_SYS_GETERRNO  (in ppca64) + 12  [0x102abd25c]
                          + ! :   1 __error  (in libsystem_kernel.dylib) + 0  [0x193a8e74c]
                          + ! 1 SYSTEM_$$_REENABLE_SIGNAL$LONGINT$$BOOLEAN  (in ppca64) + 148  [0x102ae13a4]
                          + !   1 FPC_SYS_GETERRNO  (in ppca64) + 12  [0x102abd25c]
                          + !     1 __error  (in libsystem_kernel.dylib) + 0  [0x193a8e74c]
                          + 1 FPC_DEFAULTSIGHANDLER  (in ppca64) + 436  [0x102ae1584]
                          7 _sigtramp  (in libsystem_platform.dylib) + 76  [0x193afb2b8]
                          + 7 __sigreturn  (in libsystem_kernel.dylib) + 8  [0x193a992f0]
                          1 SYSTEMS_$$_SET_TARGET$TSYSTEM$$BOOLEAN  (in ppca64) + 260  [0x102b319b4]
                            1 _sigtramp  (in libsystem_platform.dylib) + 40  [0x193afb294]

Total number in stack (recursive counted multiple, when >=5):

Sort by top of stack, same collapsed (when >= 5):
        _sigtramp  (in libsystem_platform.dylib)        3699
        FPC_BREAK_ERROR  (in ppca64)        441
        sigprocmask  (in libsystem_kernel.dylib)        394
        __sigreturn  (in libsystem_kernel.dylib)        7

Binary Images:
       0x102abc000 -        0x102d7bfe3 +ppca64 (0) <165EDC1D-DAB5-3FA9-8587-D731E374D2F0> /Users/*/ppca64
       0x193758000 -        0x19379dd9f  libobjc.A.dylib (866.9) <FC6D1C4F-2E83-37CC-B972-C5529F1C0E40> /usr/lib/libobjc.A.dylib
       0x19379e000 -        0x193828b63  dyld (1.0.0 - 1042.1) <487CFDEB-9B07-39BF-BFB9-970B61AEA2D1> /usr/lib/dyld
       0x193829000 -        0x19382dffe  libsystem_blocks.dylib (84) <B126606C-8D07-3F9D-AD5E-9864CF11D901> /usr/lib/system/libsystem_blocks.dylib
       0x19382e000 -        0x193871fff  libxpc.dylib (2462.60.15) <64925531-1366-35F8-AAA1-4E39A9B6AA9F> /usr/lib/system/libxpc.dylib
       0x193872000 -        0x19388bfff  libsystem_trace.dylib (1406.60.2) <616F473A-EB21-377D-B3B4-F1581F127F0D> /usr/lib/system/libsystem_trace.dylib
       0x19388c000 -        0x193915fe3  libcorecrypto.dylib (1386.61.2) <E31E3962-9C13-3B9F-BE20-1F84C515C418> /usr/lib/system/libcorecrypto.dylib
       0x193916000 -        0x193941ff7  libsystem_malloc.dylib (409.60.6) <04185997-16D2-30DA-8691-7C82612635A3> /usr/lib/system/libsystem_malloc.dylib
       0x193942000 -        0x193989fff  libdispatch.dylib (1412) <191028D2-0477-3EBC-9EEF-A85ACAFC7193> /usr/lib/system/libdispatch.dylib
       0x19398a000 -        0x19398cffb  libsystem_featureflags.dylib (71) <EE355E15-A47F-3BED-A955-1041497449AE> /usr/lib/system/libsystem_featureflags.dylib
       0x19398d000 -        0x193a0dff3  libsystem_c.dylib (1534.40.2) <756CD0D2-3241-3A74-8C59-02632DCEE221> /usr/lib/system/libsystem_c.dylib
       0x193a0e000 -        0x193a74ff3  libc++.1.dylib (1300.36) <A4BED887-64CE-3F2E-80DF-87D583B262D9> /usr/lib/libc++.1.dylib
       0x193a75000 -        0x193a8cffb  libc++abi.dylib (1300.36) <20A1D2A7-4C7C-36D4-ADE6-C65D68317BCA> /usr/lib/libc++abi.dylib
       0x193a8d000 -        0x193ac5ff3  libsystem_kernel.dylib (8792.61.2) <AEBF397E-E2EF-3A49-BE58-23D4558511F6> /usr/lib/system/libsystem_kernel.dylib
       0x193ac6000 -        0x193ad2ffb  libsystem_pthread.dylib (514) <132084C6-C347-3489-9AC2-FCAAD21CDB73> /usr/lib/system/libsystem_pthread.dylib
       0x193ad3000 -        0x193af6ff7  libdyld.dylib (1042.1) <C1700833-CCA0-3BA5-8614-C149347F5503> /usr/lib/system/libdyld.dylib
       0x193af7000 -        0x193afeffb  libsystem_platform.dylib (288) <B215AE90-4ED2-3FCD-8CCC-6C0D93CC4F41> /usr/lib/system/libsystem_platform.dylib
       0x193aff000 -        0x193b2aff3  libsystem_info.dylib (564) <67168754-ABAC-33C6-AFF7-FF53F1A8745C> /usr/lib/system/libsystem_info.dylib
       0x196928000 -        0x196932fff  libsystem_darwin.dylib (1534.40.2) <74F6C923-5FF6-39D0-90DE-8FB4812EA263> /usr/lib/system/libsystem_darwin.dylib
       0x196d92000 -        0x196da1fff  libsystem_notify.dylib (306) <62FA1CCF-D4BB-3606-BDC9-C2F247A12CE8> /usr/lib/system/libsystem_notify.dylib
       0x198713000 -        0x19872bff7  libsystem_networkextension.dylib (1550.61.2) <8737AB7F-91FA-3C06-B797-566A62D0751C> /usr/lib/system/libsystem_networkextension.dylib
       0x198793000 -        0x1987aaff3  libsystem_asl.dylib (395) <1E8F925A-501E-32BD-9BE3-2EE5FDEA8818> /usr/lib/system/libsystem_asl.dylib
       0x199f68000 -        0x199f70ff3  libsystem_symptoms.dylib (1732.60.4) <B31CD553-083B-39C6-BCB9-B0413ECAF562> /usr/lib/system/libsystem_symptoms.dylib
       0x19cd57000 -        0x19cd88fff  libsystem_containermanager.dylib (477.40.5) <2694748C-A452-3438-BB47-161D7B220AE2> /usr/lib/system/libsystem_containermanager.dylib
       0x19dce7000 -        0x19dcebfff  libsystem_configuration.dylib (1241.60.3.0.1) <113A1DDB-1B61-3C33-9FD5-B39A2A29D779> /usr/lib/system/libsystem_configuration.dylib
       0x19dcec000 -        0x19dcf1fff  libsystem_sandbox.dylib (1845.61.3) <FF5EE002-C286-354F-A584-EB6C45E73BAE> /usr/lib/system/libsystem_sandbox.dylib
       0x19e7c6000 -        0x19e7c8fff  libquarantine.dylib (146.60.2) <A052DB52-9ECA-39EC-8DD4-05A0856579B7> /usr/lib/system/libquarantine.dylib
       0x19edfd000 -        0x19ee02ffb  libsystem_coreservices.dylib (144) <6E9DED8E-2A44-33E3-909F-74B4786482A2> /usr/lib/system/libsystem_coreservices.dylib
       0x19f0bc000 -        0x19f0f3fff  libsystem_m.dylib (3226.0.1) <6BEE17F3-04F2-3B1F-B8EB-C94379ABA9BD> /usr/lib/system/libsystem_m.dylib
       0x19f0f5000 -        0x19f0faff3  libmacho.dylib (1001.2) <471DA066-B65F-36B1-93B7-243C71F8838B> /usr/lib/system/libmacho.dylib
       0x19f117000 -        0x19f127ffb  libcommonCrypto.dylib (60198.60.2) <452A7C15-97FA-32A0-B514-744E117E2B39> /usr/lib/system/libcommonCrypto.dylib
       0x19f128000 -        0x19f132fff  libunwind.dylib (202.100) <1228EDDF-7C61-3674-8C42-B537FFE9EDDA> /usr/lib/system/libunwind.dylib
       0x19f133000 -        0x19f13affb  liboah.dylib (289.7.1) <D2C623BD-7508-3200-8F33-AD685C5D8045> /usr/lib/liboah.dylib
       0x19f13b000 -        0x19f144fff  libcopyfile.dylib (191) <3689048E-9EC2-32D9-B833-B5EDE2839092> /usr/lib/system/libcopyfile.dylib
       0x19f145000 -        0x19f148ffb  libcompiler_rt.dylib (103.1) <9F57BC0A-3F18-3F00-B772-40B6A8616E26> /usr/lib/system/libcompiler_rt.dylib
       0x19f149000 -        0x19f14dfff  libsystem_collections.dylib (1534.40.2) <CB445464-28B4-353C-976E-59DA0E229FED> /usr/lib/system/libsystem_collections.dylib
       0x19f14e000 -        0x19f150fff  libsystem_secinit.dylib (119.40.2) <82513DC5-565F-3A4E-9431-4511FB0C22FA> /usr/lib/system/libsystem_secinit.dylib
       0x19f151000 -        0x19f153ffb  libremovefile.dylib (63) <E785FBDF-82C9-3642-A38D-EDB07D118303> /usr/lib/system/libremovefile.dylib
       0x19f154000 -        0x19f154fff  libkeymgr.dylib (31) <B63E11DD-4648-3355-A51C-C1B650654C0F> /usr/lib/system/libkeymgr.dylib
       0x19f155000 -        0x19f15dffb  libsystem_dnssd.dylib (1790.60.25) <F87EFC17-B673-3488-B503-C67E2FFDE6A0> /usr/lib/system/libsystem_dnssd.dylib
       0x19f15e000 -        0x19f163fff  libcache.dylib (90) <7A88909B-ED36-360D-ACE9-81107AF0FE14> /usr/lib/system/libcache.dylib
       0x19f164000 -        0x19f165fff  libSystem.B.dylib (1319) <8D5887C4-4EE2-3B8C-8533-255448018FFE> /usr/lib/libSystem.B.dylib

fpc$ 

Regards,
Ryan Joseph
==============


More information about the fpc-pascal mailing list