On Thu, 31 Dec 2015, Martin Storsjö wrote:

On Thu, 31 Dec 2015, Janne Grunau wrote:

On 2015-12-31 12:46:39 +0200, Martin Storsjö wrote:
---
Compared to x264's checkasm, this is slightly simpler since it only
is expected to return void, i.e. no issues with handling of 64 bit return
values vs function pointer type casting. (The assembly wrapper still tries
to maintain the return value intact though, even though it's currently
not used.) It also is simplified since it doesn't use separate parameter
for indicating failures (avoiding one extra register to backup, and
reducing the number of parameters to shift by from 2 to 1).

I think that is actually a disadvantage because it breaks type which are
naturally aligned to 8-byte. Those are assigned register pairs starting
with an even register or 8-byte aligned stack address. If we shift only
one register, that rule is broken so we need a second dummy register.

Hmm, ok, will try to fix.

To clarify - so you're suggesting I should add a second dummy parameter to the arm version of checkasm_checked_call, and shift by two parameters, just as in x264?

// Martin
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to