tree aabe346bdca4957185bf8cd2102bdc6bb583a92e
parent bd050618b502031a00294ebb652b5bc159a7388b
author TDYa127 <tdy@google.com> 1338019308 -0700
committer Shih-wei Liao <sliao@google.com> 1338526124 -0700

Remove unnecessary exception and suspend checks.

1. Post exception check, when 2 consecutive branches are return and exception
unwind, respectively, merge these 2 branches as the caller doesn't care
the return value when an exception is pending..

2. If the method is leaf, we can elide the suspend check.

3. Also, move suspend checks to be before pushing shadow frame for the sake of "1"
and for reducing code size (Multiple returns).

Change-Id: I18f38f97f4e7714eadab4a1d6a568aa6e2c982ae
