dart2js: Do not eliminate calls whose receiver can be null.
dart2js: Do not eliminate calls whose receiver can be null.

In the CPS backend's type propagation, try to avoid eliminating calls
whose receiver can be null.

This fixes a bug in the constant folding of indexed access.  e0[e1]
would be folded away if e0 could be null but type inference told us
that the elements had a known (specifically null) type.

tests/language/inference_list_or_null_test triggers the bug.

R=asgerf@google.com
BUG=

Review URL: https://codereview.chromium.org/1515833003 .

dartino/dart-sdk,dart-archive/dart-sdk,dart-lang/sdk,dart-archive/dart-sdk,dart-archive/dart-sdk,dart-archive/dart-sdk,dartino/dart-sdk,dartino/dart-sdk,dart-lang/sdk,dart-lang/sdk,dart-lang/sdk,dart-lang/sdk,dart-lang/sdk,dartino/dart-sdk,dart-archive/dart-sdk,dart-lang/sdk,dart-archive/dart-sdk,dart-archive/dart-sdk,dart-lang/sdk,dartino/dart-sdk,dartino/dart-sdk,dartino/dart-sdk,dart-archive/dart-sdk,dart-archive/dart-sdk,dartino/dart-sdk,dartino/dart-sdk