That may be the wrong question, but let me explain what I’m observing. With brew’s gcc 15.1.0 on aarch64-apple-darwin24 (I do realize this is not an official GCC release), I’m seeing the following message: _irregex.c: In function '___H___irregex': /Users/lucier/programs/gambit/gambit/include/gambit.h:6501:1: warning: PRE disabled: 38820 basic blocks and 164130 registers; increase '--param max-gcse-memory' above 777916 [-Wdisabled-optimization] 6501 | } | ^ /Users/lucier/programs/gambit/gambit/include/gambit.h:2390:19: note: in definition of macro '___SM' 2390 | #define ___SM(s,m)s | ^ /Users/lucier/programs/gambit/gambit/include/gambit.h:6462:28: note: in expansion of macro '___END_COD' 6462 | #define ___END_M_COD ___SM(___END_COD,___NOTHING) | ^~~~~~~~~~ _irregex.c:155937:1: note: in expansion of macro '___END_M_COD' 155937 | ___END_M_COD | ^~~~~~~~~~~~ This is the largest of a number of routines I’m compiling. max-gcse-memory has already been set to 400000 to silence similar warnings for a few smaller (but still quite large) routines. With GCC 15.1.0 on x86_64-pc-linux-gnu that I’ve built myself on Ubuntu 24.04, no such warnings appear. My very limited understanding of PRE is that its behavior should not be architecture dependent, so I’m a bit surprised at these warnings. Any advice? Brad