Update testmasm to use new CPUState APIs.
authormark.lam@apple.com <mark.lam@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 15 Aug 2017 16:42:41 +0000 (16:42 +0000)
committermark.lam@apple.com <mark.lam@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 15 Aug 2017 16:42:41 +0000 (16:42 +0000)
commitbf5488391fccd59e021b7f74fe1770695a981ad8
tree0ae32ae2f519b6552931353c94d4822c08a34c15
parent9ab94aa5621af8b38a2590ed5423dab24c91fbf5
Update testmasm to use new CPUState APIs.
https://bugs.webkit.org/show_bug.cgi?id=175573

Reviewed by Keith Miller.

1. Applied convenience CPUState accessors to minimize casting.
2. Converted the CHECK macro to CHECK_EQ to get more friendly failure debugging
   messages.
3. Removed the CHECK_DOUBLE_BITWISE_EQ macro.  We can just use CHECK_EQ now since
   casting is (mostly) no longer an issue.
4. Replaced the use of testDoubleWord(id) with bitwise_cast<double>(testWord64(id))
   to make it clear that we're comparing against the bit values of testWord64(id).
5. Added a "Completed N tests" message at the end of running all tests.
   This makes it easy to tell at a glance that testmasm completed successfully
   versus when it crashed midway in a test.  The number of tests also serves as
   a quick checksum to confirm that we ran the number of tests we expected.

* assembler/testmasm.cpp:
(WTF::printInternal):
(JSC::testSimple):
(JSC::testProbeReadsArgumentRegisters):
(JSC::testProbeWritesArgumentRegisters):
(JSC::testProbePreservesGPRS):
(JSC::testProbeModifiesStackPointer):
(JSC::testProbeModifiesProgramCounter):
(JSC::run):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@220744 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/assembler/testmasm.cpp