thanks Danno for the good advice. I wasn't able to move the
ArrayOpClobbersKey
though, see my comment below.
https://codereview.chromium.org/11365084/diff/9001/src/arm/lithium-arm.cc
File src/arm/lithium-arm.cc (right):
https://codereview.chromium.org/11365084/diff/9001/src/arm/lithium-arm.cc#newcode1884
src/arm/lithium-arm.cc:1884: external_pointer =
UseRegisterAtStart(instr->elements());
On 2012/11/07 22:34:38, danno wrote:
I don't see the difference in these two case in the codegen file, and
in
practice since there are no temp registers, it probably doesn't make a
difference (I am not 100% sure whether UseRegister overlaps with the
return
register. If it really doesn't make a difference, UseRegister all the
time
probably will simplify the code.
Done.
https://codereview.chromium.org/11365084/diff/9001/src/x64/lithium-codegen-x64.cc
File src/x64/lithium-codegen-x64.cc (right):
https://codereview.chromium.org/11365084/diff/9001/src/x64/lithium-codegen-x64.cc#newcode2616
src/x64/lithium-codegen-x64.cc:2616: inline void
LCodeGen::HandleKeyedAlterations(T* hydrogen_instr, LOperand* key) {
On 2012/11/07 22:34:38, danno wrote:
How about "PrepareKeyForKeyedOp" or "PrepareKeyForKeyedOperation"?
Done.
https://codereview.chromium.org/11365084/diff/9001/src/x64/lithium-x64.cc
File src/x64/lithium-x64.cc (right):
https://codereview.chromium.org/11365084/diff/9001/src/x64/lithium-x64.cc#newcode1847
src/x64/lithium-x64.cc:1847: if (instr->is_external()) {
On 2012/11/07 22:34:38, danno wrote:
Wrap this in #if DEBUG like you did elsewhere?
Done.
https://codereview.chromium.org/11365084/diff/9001/src/x64/lithium-x64.h
File src/x64/lithium-x64.h (right):
https://codereview.chromium.org/11365084/diff/9001/src/x64/lithium-x64.h#newcode1375
src/x64/lithium-x64.h:1375: inline static bool ArrayOpClobbersKey(T
*value) {
On 2012/11/07 22:34:38, danno wrote:
You can move this to the .cc file. It's only used internally.
Shucks, it is actually used in both lithium-x64.cc and
lithium-codegen-x64.cc so I would rather keep it here. I thought about
moving it "deeper" into codegen by placing it in lithium-codegen-x64.h,
but since it operates on Hydrogen instructions that didn't feel right
either.
https://codereview.chromium.org/11365084/
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev