I did a bit more wired things. I add to each line inside siLheap_report a printf like this:
static void FFN(siLheap_report)(void) { int i; check_arg(0); printf("1\n");fflush(stdout); vs_check_push(make_fixnum(sizeof(fixnum)*CHAR_SIZE)); printf("2\n");fflush(stdout); vs_push(make_fixnum(PAGESIZE)); printf("3\n");fflush(stdout); vs_push(make_fixnum((ufixnum)data_start)); printf("4\n");fflush(stdout); vs_push(make_fixnum((ufixnum)data_start+(real_maxpage<<PAGEWIDTH))); printf("5\n");fflush(stdout); vs_push(make_fixnum(0));/*SHARED_LIB_HEAP_CEILING*/ printf("6\n");fflush(stdout); i=sizeof(fixnum)*CHAR_SIZE-2; printf("7\n");fflush(stdout); i=1<<i; printf("8\n");fflush(stdout); vs_push(make_fixnum(((unsigned long)cs_base+i-1)&-i)); printf("9\n");fflush(stdout); vs_push(make_fixnum(labs(cs_base-cs_org))); printf("10\n");fflush(stdout); vs_push(make_fixnum((CSTACK_DIRECTION+1)>>1)); printf("11\n");fflush(stdout); vs_push(make_fixnum(CSTACK_ALIGNMENT)); printf("12\n");fflush(stdout); vs_push(make_fixnum(labs(cs_limit-cs_org)));/*CSSIZE*/ printf("13\n");fflush(stdout); vs_push(make_fixnum(phys_pages)); ... and it fails at the end like this. SYSTEM>(init-system) loading /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_s.lsp loading /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_sf.lsp loading /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_rm.lsp loading /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_dl.lsp loading /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_fle.lsp loading /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_defmacro.lsp loading /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_hash.lsp loading /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_evalmacros.lsp loading /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_module.lsp loading /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_predlib.lsp 1 2 3 4 5 6 7 8 zsh: illegal hardware instruction ./raw_pre_gcl catap@Kirills-mini-m1 unixport % So, it seems clear which line triggers an issue O:-) Thus, I've changed the problem line to printf("8\n");fflush(stdout); make_fixnum(((unsigned long)cs_base+i-1)&-i); printf("9\n");fflush(stdout); and it crashes the same way. -- wbr, Kirill > On 23. Dec 2023, at 18:07, Camm Maguire <c...@maguirefamily.org> wrote: > > Greetings, and thanks so much! Could you please put a > printf("spawn");fflush(stdout); right before the patch and repeat? This > code should not be relevant at this point. > > Take care, > > "Kirill A. Korinsky" <kir...@korins.ky> writes: > >> Here it is: >> >> SYSTEM>(init-system) >> loading >> /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_s.lsp >> loading >> /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_sf.lsp >> loading >> /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_rm.lsp >> loading >> /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_dl.lsp >> loading >> /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_fle.lsp >> loading >> /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_defmacro.lsp >> loading >> /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_hash.lsp >> loading >> /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_evalmacros.lsp >> loading >> /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_module.lsp >> loading >> /opt/local/var/macports/build/_opt_local_var_macports_sources_github.com_catap_macports-ports_lang_gcl/gcl-devel/work/01ed2e0b2f540031171d2258ddccb951735827e7/gcl/unixport/../lsp/gcl_predlib.lsp >> zsh: illegal hardware instruction ./raw_pre_gcl ./ >> catap@Kirills-mini-m1 unixport % >> >> thus, meanwhile I made some investigation and localized the crash exact line >> in siLheap_report function: >> vs_push(make_fixnum(((unsigned long)cs_base+i-1)&-i)); >> >> I've tried to remove vs_push and it doesn't change anything. > > -- > Camm Maguire c...@maguirefamily.org > ========================================================================== > "The earth is but one country, and mankind its citizens." -- Baha'u'llah
signature.asc
Description: Message signed with OpenPGP