Reviewers: Kevin Millikin, Erik Corry,
Message:
This change makes the ARM code agree with the code on other platforms. The
multiple definitions are safe, since constant objects have internal linkage
by
default, but does mean that multiple copies of (referenced?) registers are
linked in.
The advantage is that expressions like r0.bit() | r2.bit() | r3.bit() are
simplified at compile time to a single integer constant, rather than 3
inlined
calls, in all modules, not just macro-assembler.o.
There was no bug in the existing code, because registers declared in
macro-assembler-arm.h were initialized by structure literals, not as copies
of
(uninitialized) registers from assembler-arm.h
Description:
Move definitions of named registers as constant structures to
assembler-arm.h
file.
Please review this at http://codereview.chromium.org/660256
SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/
Affected files:
M src/arm/assembler-arm.h
M src/arm/assembler-arm.cc
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev