The problem in this PR is that -fself-test is being run on a non empty source file. This causes init_emit() to run, which sets: REG_POINTER (virtual_incoming_args_rtx) = 1; Setting REG_POINTER on the virtual incoming args, causes /f to be printed on some RTL dumps, causing the -fself-test machinery to fail at matching the expected value. It looks that by design -fself-test is meant to be run before any initialization like the aforementioned runs. We could error/fail when running -fself-test on a non-empty file, but I think we can just enable -fsyntax-only and get the same result. After all, this is an undocumented internal option. BTW, this is being triggered on aarch64, but will likely show up in different ports in different ways. OK for trunk?