Fix a bug in CreateCl, combine helper calls and use precoloring
commitcff9360510ebe854506930577abe2b509f1bc62f
authorjdelong <jdelong@fb.com>
Tue, 16 Apr 2013 16:21:29 +0000 (16 09:21 -0700)
committerSara Golemon <sgolemon@fb.com>
Wed, 17 Apr 2013 17:12:45 +0000 (17 10:12 -0700)
treeccf491728ad1885fdf0b949a800132db8a6d1d6f
parent4842f4ee1df21c654e217d3a7e4a67691247d82d
Fix a bug in CreateCl, combine helper calls and use precoloring

The CreateCl translation dereferenced its targetcache handle
at compile time instead of in the TC, so we could get "class
undefined" errors if the targetcache slot in the thread that jitted it
didn't happen to have that closure defined.  Fix that, combine the two
helper calls, and use nativecalls so we get register precoloring.
hphp/doc/bytecode.specification
hphp/doc/ir.specification
hphp/runtime/vm/bytecode.cpp
hphp/runtime/vm/translator/hopt/codegen.cpp
hphp/runtime/vm/translator/hopt/codegen.h
hphp/runtime/vm/translator/hopt/hhbctranslator.cpp
hphp/runtime/vm/translator/hopt/ir.h
hphp/runtime/vm/translator/hopt/nativecalls.cpp
hphp/runtime/vm/translator/translator-x64.cpp
hphp/runtime/vm/unit.h