This seems to be perfectly reproducible with tier1_gc_shenandoah:
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/home/buildbot/worker/jdkX-linux/build/src/hotspot/share/opto/loopUnswitch.cpp:66), pid=2443, tid=2512
# assert(!phase->exceeding_node_budget()) failed: sanity
#
# JRE version: OpenJDK Runtime Environment (13.0) (fastdebug build 13-testing+0-builds.shipilev.net-openjdk-jdk-b850-20190506-jdk-1319)
# Java VM: OpenJDK 64-Bit Server VM (fastdebug 13-testing+0-builds.shipilev.net-openjdk-jdk-b850-20190506-jdk-1319, compiled mode, sharing, tiered, compressed oops, shenandoah gc, linux-amd64)
# Problematic frame:
# V [libjvm.so+0x117d45c] IdealLoopTree::policy_unswitching(PhaseIdealLoop*) const+0x1cc
Bisection shows it started after JDK-8216137, and it probably means Shenandoah transform miscalculated the needs for nodes?