[turbofan]: Add better encapsulation to LinkageLocation
authordanno <danno@chromium.org>
Thu, 30 Jul 2015 14:52:13 +0000 (07:52 -0700)
committerCommit bot <commit-bot@chromium.org>
Thu, 30 Jul 2015 14:52:30 +0000 (14:52 +0000)
commit3c9f69d399384a5ad095b1f35cb6804d3d4062f6
treef515e385d8c9a3d9e0f9f773d52ff20af2f28de0
parent8ae236c0c4bcc7218f2f2dcf909c1410b9ce065e
[turbofan]: Add better encapsulation to LinkageLocation

Add factory methods for different types of LinkageLocations, and ensure that
accesses to the underlying data in the location are classified by type and
funneled through explicit accessors.

Also change the representation of LinkageLocation to use a BitField rather
than using a reserved section of the integer range.

Review URL: https://codereview.chromium.org/1262343002

Cr-Commit-Position: refs/heads/master@{#29938}
src/compiler/c-linkage.cc
src/compiler/instruction-selector-impl.h
src/compiler/linkage-impl.h
src/compiler/linkage.cc
src/compiler/linkage.h
test/unittests/compiler/linkage-tail-call-unittest.cc
test/unittests/compiler/tail-call-optimization-unittest.cc