[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Tinycc-devel] Jump optimization questions - commit: 8227db3a
From: |
Ekaitz Zarraga |
Subject: |
Re: [Tinycc-devel] Jump optimization questions - commit: 8227db3a |
Date: |
Thu, 11 Aug 2022 11:36:33 +0000 |
Hi,
I think I have it mostly working following your advice but I cannot find how to
map v->cmp_r to the field that was storing that information before the commit.
In the gjmp_cond in riscv:
``` c
ST_FUNC int gjmp_cond(int op, int t)
{
int tmp;
int a = vtop->cmp_r & 0xff;
int b = (vtop->cmp_r >> 8) & 0xff;
switch (op) {
```
What do I need to replace `a` and `b` with to use the previous register access
but I can't find how to do that.
Could you please help me?
Thank you,
Ekaitz
------- Original Message -------
On Wednesday, August 10th, 2022 at 1:53 PM, Ekaitz Zarraga <ekaitz@elenq.tech>
wrote:
> Hi,
>
>
> On Wednesday, August 10th, 2022 at 1:43 PM, grischka grishka@gmx.de wrote:
>
>
>
> > On 09.08.2022 20:39, Ekaitz Zarraga wrote:
> >
> > > Hi all,
> > >
> > > I'm working on the RISC-V bootstrapping efforts for Guix, and I have to
> > > backport the RISC-V backend to an older TinyCC version we have patched in
> > > order to be able to build it with a simpler compiler.
> >
> > I wonder why not just apply these patches to the newer tcc then?
>
>
> Mostly because the compiler we use to compile TinyCC does not provide all the
> C constructs modern TinyCC is using nowadays, so we can't use it now.
> We may be able to do it in the future, but our current compiler chain does
> not allow us to do that.
>
> > > The process worked mostly ok, but I can't understand very well the `gtst`
> > > function in the generation part, and I need to write it from scratch as
> > > the commit 8227db3a changed how the tests and jumps are managed.
> >
> > Actually that commit was to put the former gtst() function in its pieces,
> > now gjmp_cond(t, op) to handle VT_CMP, and gjmp_append(n, t) for the
> > former VT_JMP "optimization" part.
>
>
> Do you mean the commit was done to split the function in two?
> I'll take a deeper look and see if I can undo it properly.
>
> Thanks for the help
>
> _______________________________________________
> Tinycc-devel mailing list
> Tinycc-devel@nongnu.org
> https://lists.nongnu.org/mailman/listinfo/tinycc-devel
- [Tinycc-devel] Jump optimization questions - commit: 8227db3a, Ekaitz Zarraga, 2022/08/09
- Re: [Tinycc-devel] Jump optimization questions - commit: 8227db3a, grischka, 2022/08/10
- Re: [Tinycc-devel] Jump optimization questions - commit: 8227db3a, Ekaitz Zarraga, 2022/08/10
- Re: [Tinycc-devel] Jump optimization questions - commit: 8227db3a,
Ekaitz Zarraga <=
- Re: [Tinycc-devel] Jump optimization questions - commit: 8227db3a, Ekaitz Zarraga, 2022/08/25
- Re: [Tinycc-devel] Jump optimization questions - commit: 8227db3a, grischka, 2022/08/25
- Re: [Tinycc-devel] Jump optimization questions - commit: 8227db3a, Ekaitz Zarraga, 2022/08/25
- Re: [Tinycc-devel] Jump optimization questions - commit: 8227db3a, grischka, 2022/08/26
- Re: [Tinycc-devel] Jump optimization questions - commit: 8227db3a, Ekaitz Zarraga, 2022/08/26
- Re: [Tinycc-devel] Jump optimization questions - commit: 8227db3a, pursuer2, 2022/08/11