OSDN Git Service

ART: Do not attempt to compile a method with too many registers
authorAndreas Gampe <agampe@google.com>
Fri, 18 Jul 2014 01:04:32 +0000 (18:04 -0700)
committerAndreas Gampe <agampe@google.com>
Fri, 18 Jul 2014 17:37:05 +0000 (10:37 -0700)
commit0d8ea4661c584fc095129f853d0d72b0fa09cda5
tree6eb808e21a349f986cd9dbed5efef9fb21d3776a
parent031ddea20cb311dfdb3bd16a13750f9cb426b299
ART: Do not attempt to compile a method with too many registers

The mir_graph has a hard limit on how many ssa registers it can
handle, and will silently fail or fatal out in debug builds when
more SSA registers are necessary. This adds a check in the frontend
that tries to catch some of these cases, and makes the DCHECK a
CHECK to not silently fail.

Bug: 16018097
Change-Id: Iad82178945a8f8c34943cc7573fd73d2b4decade
compiler/dex/frontend.cc
compiler/dex/mir_graph.h