This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/69306] wrong code with int128 @ x32
- From: "zsojka at seznam dot cz" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 15 Jan 2016 23:17:08 +0000
- Subject: [Bug c/69306] wrong code with int128 @ x32
- Auto-submitted: auto-generated
- References: <bug-69306-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69306
--- Comment #4 from Zdenek Sojka <zsojka at seznam dot cz> ---
(In reply to Zdenek Sojka from comment #3)
> (In reply to H.J. Lu from comment #1)
> > typedef unsigned long int uint64_t;
> > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ It should be long long.
>
> Sorry, you are right, originally it was __UINT64_TYPE__, but the macro got
> expanded.
> Strange the testcase works at other 32bit architectures.
... on 32bit architectures, the following is undefined:
*p64_2 >>= *p64_1 & 63;
so, yes, sorry for that.