You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kudu.apache.org by "Todd Lipcon (JIRA)" <ji...@apache.org> on 2018/03/27 00:16:00 UTC

[jira] [Created] (KUDU-2378) Crash due to unaligned loads when building with clang 6.0

Todd Lipcon created KUDU-2378:
---------------------------------

             Summary: Crash due to unaligned loads when building with clang 6.0
                 Key: KUDU-2378
                 URL: https://issues.apache.org/jira/browse/KUDU-2378
             Project: Kudu
          Issue Type: Improvement
    Affects Versions: 1.7.0
            Reporter: Todd Lipcon
            Assignee: Todd Lipcon


When I built the whole tree with clang 6.0, all_types-itest crashed due to an illegal instruction. Looking at assembly, it appeared to be that clang had generated a 'movaps' (aligned load) instruction for a *reinterpret_cast<int128_t>() call loading into an xmm register. We aren't careful with alignment about loading other integer types because unaligned loads of int64s don't have a high penalty, but unaligned load of int128 causes a crash.

This is likely to crash on other compilers too -- surprised we haven't seen it yet.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)