Consistency check failures: Call must have a call target
Hi,
I'm doing the following. I'm taking an instruction and making another copy of it. After doing an instruction.Copy(), I copy all its non-implicit operands, by going in a foreach loop and doing a continue on IsImplicit.
The problem is that I'm getting this error list.
------------------------------------------------------------------------------------------------------
Consistency check failures after Isolator Instrumentation Phase
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv294-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv300-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv306-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv309-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Phoenix Assertion Failure: d:\enlistments\sdk_june08\src\phx\ir\ir-check.cpp, Line 1954
!this->HaveEmittedDiagnostic : Consistency check failures
in (Function number 2) _main [line 0] during Isolator Instrumentation Phase
in (Module) ../testFiles/testFunc.c
d:\users\t-ashaga\phoenixprojects\testfiles\testfunc.c(27) : warning C4700: uninitializedConsistency check failures after Warnings Analysis Phase
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv294-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv300-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv306-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv309-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Phoenix Assertion Failure: d:\enlistments\sdk_june08\src\phx\ir\ir-check.cpp, Line 1954
!this->HaveEmittedDiagnostic : Consistency check failures
in (Function number 2) _main [line 27] during Warnings Analysis Phase
in (Module) ../testFiles/testFunc.cConsistency check failures after Read-only globals
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv294-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv300-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv306-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv309-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Phoenix Assertion Failure: d:\enlistments\sdk_june08\src\phx\ir\ir-check.cpp, Line 1954
!this->HaveEmittedDiagnostic : Consistency check failures
in (Function number 2) _main [line 27] during Read-only globals
in (Module) ../testFiles/testFunc.cConsistency check failures after Inliner
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv294-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv300-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv306-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv309-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Phoenix Assertion Failure: d:\enlistments\sdk_june08\src\phx\ir\ir-check.cpp, Line 1954
!this->HaveEmittedDiagnostic : Consistency check failures
in (Function number 2) _main [line 27] during Inliner
in (Module) ../testFiles/testFunc.cConsistency check failures after Dead Parameter Removal
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv294-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv300-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv306-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv309-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Phoenix Assertion Failure: d:\enlistments\sdk_june08\src\phx\ir\ir-check.cpp, Line 1954
!this->HaveEmittedDiagnostic : Consistency check failures
in (Function number 2) _main [line 27] during Dead Parameter Removal
in (Module) ../testFiles/testFunc.cConsistency check failures after Type Checker
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv294-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv300-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv306-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv309-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Phoenix Assertion Failure: d:\enlistments\sdk_june08\src\phx\ir\ir-check.cpp, Line 1954
!this->HaveEmittedDiagnostic : Consistency check failures
in (Function number 2) _main [line 30] during Type Checker
in (Module) ../testFiles/testFunc.cConsistency check failures after OpenMP
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv294-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv300-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv306-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv309-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Phoenix Assertion Failure: d:\enlistments\sdk_june08\src\phx\ir\ir-check.cpp, Line 1954
!this->HaveEmittedDiagnostic : Consistency check failures
in (Function number 2) _main [line 30] during OpenMP
in (Module) ../testFiles/testFunc.cConsistency check failures after Alias analysis
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv294-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv300-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv306-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv309-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Phoenix Assertion Failure: d:\enlistments\sdk_june08\src\phx\ir\ir-check.cpp, Line 1954
!this->HaveEmittedDiagnostic : Consistency check failures
in (Function number 2) _main [line 30] during Alias analysis
in (Module) ../testFiles/testFunc.cConsistency check failures after Flow Optimization
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv294-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv300-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv291-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv306-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv303-]*, [tv285-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv309-]*, $L5(EH) #27
Call must have a call target
{*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv285-]*, $L5(EH) #27
------------------------------------------------------------------------------------------------------
Interestingly, {*CallTag} = CALL* &_foobar, [tv287-]*, [tv286-]*, [tv285-]*, $L5(EH) #27 is the original instruction
Can somebody please help.
Thanks and Regards,
If If
Todas las respuestas
- Annoyingly, you need to special-case the first source operand on a call.
If you are copying a call, use "call.CallTargetOperand = <new operand>" instead of appending the first source. Then append the remaining sources as usual. Or use the constructor that takes the call target operand as a parameter, and then append the rest of the sources.
Architect - Microsoft Phoenix Project

