On 2016-01-01 20:34:28 +0200, Martin Storsjö wrote: > 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?
Yes. As far as I can see that would avoid problems with 64-bit types. Janne _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
