https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96566
--- Comment #5 from Tom de Vries <vries at gcc dot gnu.org> ---
Then with this in addition:
...
@@ -2202,7 +2202,7 @@ nvptx_assemble_decl_begin (FILE *file, const char *name,
const char *section,
/* Neither vector nor complex types can contain the other. */
type = TREE_TYPE (type);
- unsigned elt_size = int_size_in_bytes (type);
+ unsigned HOST_WIDE_INT elt_size = int_size_in_bytes (type);
/* Largest mode we're prepared to accept. For BLKmode types we
don't know if it'll contain pointer constants, so have to choose
...
we have:
...
// BEGIN GLOBAL VAR DEF: xm3_3
.visible .global .align 1 .u32 xm3_3[2305843009213693952] = { 0, 0, 0,
...
where 2305843009213693952 is 0x2000000000000000, so this claims one byte more
than required (due to using .u32). This may cause an overflow in ptx, not sure
yet.