If the user specifies a memory threshold on the command-line, try to
honor that value and consider expressions too complex if we end up
allocating more memory than they specify.
Fixes rdar://problem/40952582 (aka https://bugs.swift.org/browse/SR-7525).