On 1/28/21 9:27 AM, grischka wrote:
Herman ten Brugge wrote:
I implemented load/store bytes for packed structs in tcc (see attachment).
Can I push it to mob?

Did you test this?  What happens if you enable this for
any structs
    //#ifdef TCC_TARGET_ARM
               //if (packed)
                    f->type.t |= VT_PACKED;
    //#endif
and run the tests?
I did test this on arm32 openbsd. This is where the problem was.
However the above patch fails. I will provide a new patch.
I need to add support float/double/long double/pointers for this to work.

Btw, do we really need all these gen_increment_tcov ()'s?
Can't we just use the inc(0, TOK_INC) for all targets?

I did some measurements.
Compile tcc with itself 100 times with test coverage. (times in seconds):

         function TOK_INC  slowdown
x86_64      11.28   14.09       25%
i386        14.80   18.08       22%
arm32      233.53  415.94       78%
arm64       83.53  104.47       25%
riscv64     26.70   28.48        7%   (qemu 10 times)

I did this because I saw a large slowdown.
The risc target is measured in qemu so not that reliable.

    Herman


_______________________________________________
Tinycc-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/tinycc-devel

Reply via email to