Add vcall macro and more support work