Move ActRec::Flags::MultiReturn to CallFlags::Flags::HasInOut
commitfdc63ff50e4a1231d47dd4a60d70de99f0226018
authorJan Oravec <jan@fb.com>
Thu, 26 Sep 2019 09:27:52 +0000 (26 02:27 -0700)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Thu, 26 Sep 2019 09:29:44 +0000 (26 02:29 -0700)
tree06625743286c8ed32dc5e0aa45f2d59f835447ae
parente770590ad6a9eb982813108c9b55b93829a60db9
Move ActRec::Flags::MultiReturn to CallFlags::Flags::HasInOut

Summary:
Do not pass a flag whether we are calling an inout method via ActRec. Instead,
use the CallFlags structure.

Add a plumbing for CallFlags in doFCall() and fcallUnpackHelper().

This flag will be eventually killed altogether once inout enforcement moves to
the infrastructure used by references and support for reference arguments is
removed, but it is needed for now.

Reviewed By: ricklavoie

Differential Revision: D17589964

fbshipit-source-id: 7c0a3d02c8b13ae95fe18373b8620d29292876e6
14 files changed:
hphp/runtime/base/execution-context.cpp
hphp/runtime/vm/act-rec-inl.h
hphp/runtime/vm/act-rec.h
hphp/runtime/vm/bytecode.cpp
hphp/runtime/vm/bytecode.h
hphp/runtime/vm/call-flags.h
hphp/runtime/vm/event-hook.cpp
hphp/runtime/vm/interp-helpers.h
hphp/runtime/vm/jit/irgen-func-prologue.cpp
hphp/runtime/vm/jit/irgen-func-prologue.h
hphp/runtime/vm/jit/irgen-inlining.cpp
hphp/runtime/vm/jit/irlower-call.cpp
hphp/runtime/vm/jit/unique-stubs.cpp
hphp/runtime/vm/jit/unique-stubs.h