Support NonSemantic DebugValue and generate it for const arg

For passing-by-value semantic, DebugDeclare cannot be used for parameters because there's no pointer.
This commit is contained in:
Qingyuan Zheng 2023-10-24 15:41:12 -07:00 committed by Jeremy Hayes
parent 1dcb072cda
commit 109b5979d3
3 changed files with 46 additions and 28 deletions

View file

@ -231,7 +231,7 @@ public:
Id createDebugGlobalVariable(Id const type, char const*const name, Id const variable);
Id createDebugLocalVariable(Id type, char const*const name, size_t const argNumber = 0);
Id makeDebugExpression();
Id makeDebugDeclare(Id const debugLocalVariable, Id const localVariable);
Id makeDebugDeclare(Id const debugLocalVariable, Id const pointer);
Id makeDebugValue(Id const debugLocalVariable, Id const value);
Id makeDebugFunctionType(Id returnType, const std::vector<Id>& paramTypes);
Id makeDebugFunction(Function* function, Id nameId, Id funcTypeId);