Subject: Re: [PATCH] Makefile: fix unaligned loads in sha1dc with UBSan

From: Ævar Arnfjörð Bjarmason <[email-masked]>
Date: Tue, 12 Mar 2019 22:17:56 +0100

On Tue, Mar 12 2019, Jeff King wrote:

> On Sun, Mar 10, 2019 at 11:37:55PM -0400, Jeff King wrote:
>
>> Unfortunately, I don't think sha1dc currently supports #defines in that
>> direction. The only logic is "if we are on intel, do unaligned loads"
>> and "even if we are not on intel, do it anyway". There is no "even if we
>> are on intel, do not do unaligned loads".
>>
>> I think you'd need something like this:
>> [...]
>
> The sha1dc folks gave us a very nice and quick turnaround on this.
> Thanks to them, and to Jeffrey for opening an issue there.

Thanks. Good to have it resolved this way.

> Here's a commit which updates Git to use the new feature. I've tested it
> with both the in-tree and submodule builds like:
>
>   make DC_SHA1_SUBMODULE=Yes SANITIZE=undefined && (cd t && ./t0001-*)
>   make DC_SHA1_SUBMODULE=    SANITIZE=undefined && (cd t && ./t0001-*)
>
> both of which fail without this patch and succeed without it.

FWIW I've reproduced this testing and found the same thing. Looks good
to me.