Add MachineSignature, which is an encapsulation of the machine types for parameters...
authortitzer@chromium.org <titzer@chromium.org>
Thu, 28 Aug 2014 13:17:38 +0000 (13:17 +0000)
committertitzer@chromium.org <titzer@chromium.org>
Thu, 28 Aug 2014 13:17:38 +0000 (13:17 +0000)
commit496697df4e8195aecee881b10b6760630fc1a27c
treed1c75d898bc2e67b24b7743e2ba7810d5ba36343
parent7bdba61b02425539519dc7caddcdd63cd90dcbd6
Add MachineSignature, which is an encapsulation of the machine types for parameters and return values in a graph.

This utility will be used to simplify Linkage and fix representation inference
to work with graphs where parameters and return values are something other
than tagged. It will also make testing representation inference a lot
easier, since we can then exactly nail down the machine types of parameters
and returns.

This CL also adds c-signature.h, which demonstrates how to convert C function
signatures into MachineSignatures. The CSignatures will be used in tests to
make it easier and simpler to codegen tests.

R=jarin@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23490 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
16 files changed:
src/compiler/change-lowering.cc
src/compiler/linkage-impl.h
src/compiler/linkage.h
src/compiler/machine-operator.h
src/compiler/machine-type.h
src/compiler/raw-machine-assembler.h
src/compiler/simplified-operator-reducer.cc
src/compiler/structured-machine-assembler.h
test/cctest/cctest.gyp
test/cctest/compiler/c-signature.h [new file with mode: 0644]
test/cctest/compiler/codegen-tester.h
test/cctest/compiler/instruction-selector-tester.h
test/cctest/compiler/test-run-machops.cc
test/cctest/compiler/test-simplified-lowering.cc
test/cctest/compiler/test-structured-ifbuilder-fuzzer.cc
test/cctest/compiler/test-structured-machine-assembler.cc