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

--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> ---
You could have checked this very easily using -fsanitize=undefined just like it
asks you to at https://gcc.gnu.org/bugs/ and at the top of the page when you
created this bug.

dst is 512-bit aligned (0x10112c0)
src is  32-bit aligned (0x10112e4)
buf is  64-bit aligned (0x1011308)
al.c:41:72: runtime error: load of misaligned address 0x0000010112e4 for type
'__int128 unsigned', which requires 16 byte alignment
0x0000010112e4: note: pointer points here
  00 00 00 00 10 10 10 10  10 10 10 10 10 10 10 10  10 10 10 10 00 00 00 00  21
00 00 00 00 00 00 00
              ^ 
al.c:41:46: runtime error: load of misaligned address 0x0000010112e4 for type
'__int128 unsigned', which requires 16 byte alignment
0x0000010112e4: note: pointer points here
  00 00 00 00 10 10 10 10  10 10 10 10 10 10 10 10  10 10 10 10 00 00 00 00  21
00 00 00 00 00 00 00
              ^ 
src: 0x10101010101010101010101010101010
al.c:42:72: runtime error: load of misaligned address 0x000001011308 for type
'__int128 unsigned', which requires 16 byte alignment
0x000001011308: note: pointer points here
 00 00 00 00  00 08 10 18 20 28 30 38  40 48 50 58 60 68 70 78  11 04 00 00 00
00 00 00  73 72 63 3a
              ^ 
al.c:42:46: runtime error: load of misaligned address 0x000001011308 for type
'__int128 unsigned', which requires 16 byte alignment
0x000001011308: note: pointer points here
 00 00 00 00  00 08 10 18 20 28 30 38  40 48 50 58 60 68 70 78  11 04 00 00 00
00 00 00  73 72 63 3a
              ^ 
buf: 0x78706860585048403830282018100800
dst: 0x00000000000000000000000000000000
xoring...
al.c:47:10: runtime error: load of misaligned address 0x0000010112e4 for type
'__int128 unsigned', which requires 16 byte alignment
0x0000010112e4: note: pointer points here
  00 00 00 00 10 10 10 10  10 10 10 10 10 10 10 10  10 10 10 10 00 00 00 00  21
00 00 00 00 00 00 00
              ^ 
al.c:47:18: runtime error: load of misaligned address 0x000001011308 for type
'__int128 unsigned', which requires 16 byte alignment
0x000001011308: note: pointer points here
 00 00 00 00  00 08 10 18 20 28 30 38  40 48 50 58 60 68 70 78  11 04 00 00 00
00 00 00  78 6f 72 69
              ^ 
success!
dst: 0x68607870484058502820383008001810

Reply via email to