poke-devel
[Top][All Lists]
Advanced

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

Re: [JITTER] `switch' dispatch model doesn't work


From: Luca Saiu
Subject: Re: [JITTER] `switch' dispatch model doesn't work
Date: Wed, 05 May 2021 23:58:48 +0200
User-agent: Gnus (Gnus v5.13), GNU Emacs 27.0.50, x86_64-pc-linux-gnu

Hello José.

On 2021-05-05 at 22:52 +0200, Jose E. Marchesi wrote:

> After configuring and building poke with:
>
> $ ../configure --with-jitter-dispatch=switch CFLAGS='-O0 -ggdb'

No.  These options have the form --enable-XX , and not --with-XX .  I
think I followed the convention correctly, after the Autoconf manual:
these options serve to enable or disable features, and not to link with
other software.

Now, there is also another subtle point:

* Jitter, when built as an independent software, by default enables
  *every* dispatch that works in the current configuration; the best one
  is taken as the default;

* in sub-package mode, in order to avoid building libraries that will
  never be used, *only the best* mode (among those which work and are
  enabled) is actually built.

Therefore in the case of the current poke the switch dispatch will only
be used when it is the only possibility -- switch is always the least
efficient alternative.

However I can confirm that this works:

--8<---------------cut here---------------start------------->8---
SOURCE-DIRECTORY/configure --disable-dispatch-no-threading \
  --disable-dispatch-minimal-threading \
  --disable-dispatch-direct-threading \
  && make && make check && ./run poke
[...]
     _____
 ---'   __\_______
            ______)  GNU poke 1.2
            __)
           __)
 ---._______)

Copyright (C) 2019-2021 The poke authors.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Powered by Jitter 0.9.269.
Perpetrated by Jose E. Marchesi.

For help, type ".help".
Type ".exit" to leave the program.
(poke)   .vm disassemble expression/n 1 + 2
<switch dispatching: refusing to disassemble>
--8<---------------cut here---------------end--------------->8---

> FATAL ERROR: generated more than the safe size upper bound: this should never 
> happen

This normally happens when you have compiled without optimisation; it is
the consequence of a certain kludge that will disappear in the future.

If you still see this after configuring correctly please tell me.

Regards,

-- 
Luca Saiu
* My personal web site:  http://ageinghacker.net
* Jitter:                http://ageinghacker.net/projects/jitter
* GNU epsilon:           http://www.gnu.org/software/epsilon

I support everyone's freedom of mocking any opinion or belief, no
matter how deeply held, with open disrespect and the same unrelented
enthusiasm of a toddler who has just learned the word "poo".

Attachment: signature.asc
Description: PGP signature


reply via email to

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