Extended testing shows that JDK-8273416 was not complete: the tests still fail with -XX:UseAVX=0 -XX:UseSSE=1. For example:
$ CONF=linux-x86-server-fastdebug make test TEST=compiler/loopopts/TestCastFFAtPhi.java TEST_VM_OPTS="-XX:UseAVX=0 -XX:UseSSE=1"
o306 ConvF2I === _ o307 [[o250 o264 4 9 ]]
--N: o306 ConvF2I === _ o307 [[o250 o264 4 9 ]]
--N: o307 CastFF === o371 o375 [[o306 ]] #float unconditional dependency
REGFPR 0 castFF_PR
REGFPR1 0 castFF_PR
--N: o375 Phi === o371 o422 o82 [[o307 ]] #float
REGFPR 0 REGFPR
REGFPR1 0 REGFPR1
REGF 0 REGF
LEGREGF 0 LEGREGF
VLREGF 0 VLREGF
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc: SuppressErrorAt=/matcher.cpp:1681
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/home/shade/trunks/jdk/src/hotspot/share/opto/matcher.cpp:1681), pid=1643148, tid=1643164
# assert(false) failed: bad AD file
The predicates in x86_32.ad should probably be "UseSSE > 0" and "UseSSE == 0".