https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84101

--- Comment #12 from Richard Biener <rguenth at gcc dot gnu.org> ---
Other testcase:

using u64 = unsigned long long;
struct u128 {u64 a, b;};

inline u64 load8(void* ptr) {
    u64 out;
    __builtin_memcpy(&out, ptr, 8);
    return out;
}

u128 load(char* basep, u64 n) {
    return {load8(basep), load8(basep+n-8)};
}

Reply via email to