epsilon-devel
[Top][All Lists]
Advanced

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

Re: pvm.jitter patch for no-threading


From: Luca Saiu
Subject: Re: pvm.jitter patch for no-threading
Date: Sat, 03 Apr 2021 19:31:42 +0200
User-agent: Gnus (Gnus v5.13), GNU Emacs 27.0.50, x86_64-pc-linux-gnu

On 2021-04-03 at 19:13 +0200, Jose E. Marchesi wrote:

> -  pk_term_class
> -  pk_term_end_class
> -  pk_printf
> +#  pk_term_class
> +#  pk_term_end_class
> +#  pk_printf
>
> Why commenting these out instead of removing them?

You are right.  I wanted to remind you about these (they should be the
macros wrapped as functions, which misbehave), then forgot.  Anyway, an
important remark about wrapping: if you only use a C function or global
from non-relocatable instructions, then it does not need wrapping.
Wrapping only serves to make globals accessible from executable code
which has been copied.

> Also, there are a few commented-out:
>
> # non-relocatable
>
> Do we need these?

Not really, but I would suggest them.  In an ideal world where every
other case had already been optimised, I would make I/O instructions
non-relocatable just in order to improve code locality.

In the current Poke this does not matter much because of PVM_RAISE_*,
which occurs in *a lot* of places, and makes the code very large -- it
also causes some defects, but now as you can see defects do not affect
correctness.

(If you are curious you cantry

  pvm_defect_print_summary (cx);

with cx being a jitter print context.  In the future I might make the
output of this more precise.)


So, now as a serious proposal instead of a point of discussion: let us
remove the commented out wrapped functions, which if I remember
correctly are in fact not even functions, and let us make the
suggested-non-relocatable instructions actually non-relocatable.

Is this reasonable ?

If so, I will send you another patch with a ChangeLog entry.

-- 
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]