Don't store redundant compile-type at values.

If the computed reaching type is the same as the definition's type,
there is no need to store it.

Don't cache the type of the definition at the uses if the reaching
type is NULL.

R=vegorov@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@41843 260f80e4-7a28-3924-810f-c04153c831b5
Make Utf8Decoder and Utf8Encoder's convert methods take start and end too.

BUG= http://dartbug.com/21652
R=floitsch@google.com, sgjesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@41844 260f80e4-7a28-3924-810f-c04153c831b5
Re-enable recursive inlining of up to a threshold depth of recursive calls.

This CL replaces the --inline-recursive flag with --inlining-recursion-depth-threshold with a default value of 1.

R=fschneider@google.com, srdjan@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@41845 260f80e4-7a28-3924-810f-c04153c831b5
Revert r41843 because of checked mode test failures.

TBR=vegorov@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@41846 260f80e4-7a28-3924-810f-c04153c831b5