Remove FLAG_C_FOR_LOOP_COND as part of c for loop cleanup

This was originally used to prevent dead code elimination from getting rid of
the test expr in the c for loop header. It wasn't the right approach and led to
a lot of real dead code not being eliminated. The current approach just checks
if an expr is in a c for loop header and will not eliminate it if it is. The
test in the c for loop got marked as an expression that has no effect, but this
isn't true in the context of c for loops so now we don't eliminate expressions
in c for loop headers. This should probably be updated to only not eliminate
conditional tests in the test segment of the c for loop header, but currently
it just prevents all removal of "dead" expressions from the header.