https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81724
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- I think it comes from round_push. char three[8192] __attribute__ ((aligned (4096))); \ char four[8192] __attribute__ ((aligned (4096))); \ config/nvptx/nvptx.h:#define STACK_BOUNDARY 128 config/nvptx/nvptx.h:#define MAX_STACK_ALIGNMENT (1024 * 8) #define MAX_SUPPORTED_STACK_ALIGNMENT MAX_STACK_ALIGNMENT #define SUPPORTS_STACK_ALIGNMENT (MAX_STACK_ALIGNMENT > STACK_BOUNDARY) if (size_align % MAX_SUPPORTED_STACK_ALIGNMENT != 0) I think the code in round_push is wrong.