[Top][All Lists]

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

Re: [Tinycc-devel] two fixes

From: grischka
Subject: Re: [Tinycc-devel] two fixes
Date: Fri, 26 Sep 2014 00:19:50 +0200
User-agent: Thunderbird (Windows/20090812)

Thomas Preud'homme wrote:

Wow, so short change. I'm not sure I understand. It seems before the destination would have lost its bitfield (since the gv_dup is done after). But you also changed gv_dup + vswap + vrott into vdup, is that just an improvement unrelated to the bug or it also matters?

Depends what "the bug" is.  Probably worth to note, there is a "parent bug"
actually,  which I was trying to fix first 9 years ago here
which patch jiang managed to remove with striking precision in order
to save one machine instruction, here
and added back here

So really it's just another attempt to fix that old problem, somehow more
correctly, hopefully.

Using vdup() on lvalue assumes that if it's in a register (for example
a pointer such as with s->a_bitfield) then that vstore() does not change
that register.   If that's not true always or not on all platforms (arm?)
then, well, someone needs to have a better idea.

--- grischka



reply via email to

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