From 472821b210a7fc7a4d2e3d45762c7b5b9628a35b Mon Sep 17 00:00:00 2001 From: Aart Bik Date: Thu, 27 Apr 2017 17:23:51 -0700 Subject: Enable string "array get" vectorization. Rationale: Like its scalar counterpart, the SIMD implementation of array get from a string needs to deal with compressed and uncompressed cases. Micro benchmarks shows 2x to 3x speedup for just copying data! Test: test-art-target, test-art-host Change-Id: I2fd714e50715b263123c215cd181f19194456d2b --- compiler/optimizing/loop_optimization.cc | 6 ------ 1 file changed, 6 deletions(-) (limited to 'compiler/optimizing/loop_optimization.cc') diff --git a/compiler/optimizing/loop_optimization.cc b/compiler/optimizing/loop_optimization.cc index da2acd1fd3..c783ddecf5 100644 --- a/compiler/optimizing/loop_optimization.cc +++ b/compiler/optimizing/loop_optimization.cc @@ -733,12 +733,6 @@ bool HLoopOptimization::VectorizeUse(LoopNode* node, } return true; } else if (instruction->IsArrayGet()) { - // Strings are different, with a different offset to the actual data - // and some compressed to save memory. For now, all cases are rejected - // to avoid the complexity. - if (instruction->AsArrayGet()->IsStringCharAt()) { - return false; - } // Accept a right-hand-side array base[index] for // (1) exact matching vector type, // (2) loop-invariant base, -- cgit v1.2.3-59-g8ed1b