summaryrefslogtreecommitdiff
path: root/compiler/optimizing/code_generator.h
diff options
context:
space:
mode:
authorArtem Serov <artem.serov@linaro.org>2018-12-20 19:15:11 +0000
committerVladimir Marko <vmarko@google.com>2019-07-15 09:30:36 +0000
commit2808be84a8f86542450670acdb5e6b55498ff5f0 (patch)
treef41b63e3109a6a6a9bd534f32b8d92f20eb9ef35 /compiler/optimizing/code_generator.h
parent460f05480379d5c75555d06c4938bc990ce6ff83 (diff)
ART: Introduce stackmap with no DexRegInfo.
Some of safepoints don't need to have DexRegisterMap info; this will decrease the stackmap size. .oat file size reduction: - boot.oat: -233 kb (-5.4%) - boot-framework.oat: -704 kb (-4.9%) Test: 461-get-reference-vreg, 466-get-live-vreg. Test: 543-env-long-ref, 616-cha*. Test: test-art-target, +gc-stress. Change-Id: Idbad355770e30a30dcf14127642e03ee666878b8
Diffstat (limited to 'compiler/optimizing/code_generator.h')
-rw-r--r--compiler/optimizing/code_generator.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/compiler/optimizing/code_generator.h b/compiler/optimizing/code_generator.h
index 357c4bb606..d932c6afb0 100644
--- a/compiler/optimizing/code_generator.h
+++ b/compiler/optimizing/code_generator.h
@@ -761,7 +761,10 @@ class CodeGenerator : public DeletableArenaObject<kArenaAllocCodeGenerator> {
size_t GetStackOffsetOfSavedRegister(size_t index);
void GenerateSlowPaths();
void BlockIfInRegister(Location location, bool is_out = false) const;
- void EmitEnvironment(HEnvironment* environment, SlowPathCode* slow_path);
+ void EmitEnvironment(HEnvironment* environment,
+ SlowPathCode* slow_path,
+ bool needs_vreg_info = true);
+ void EmitVRegInfo(HEnvironment* environment, SlowPathCode* slow_path);
OptimizingCompilerStats* stats_;