diff options
Diffstat (limited to 'source/slang/slang-ir.cpp')
| -rw-r--r-- | source/slang/slang-ir.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/source/slang/slang-ir.cpp b/source/slang/slang-ir.cpp index 131c8d407..421c60d1d 100644 --- a/source/slang/slang-ir.cpp +++ b/source/slang/slang-ir.cpp @@ -3123,6 +3123,23 @@ namespace Slang { return emitIntrinsicInst((IRType*)type, kIROp_OutImplicitCast, 1, &value); } + IRInst* IRBuilder::emitDebugSource(UnownedStringSlice fileName, UnownedStringSlice source) + { + IRInst* args[] = { getStringValue(fileName), getStringValue(source) }; + return emitIntrinsicInst(getVoidType(), kIROp_DebugSource, 2, args); + } + IRInst* IRBuilder::emitDebugLine(IRInst* source, IRIntegerValue lineStart, IRIntegerValue lineEnd, IRIntegerValue colStart, IRIntegerValue colEnd) + { + IRInst* args[] = + { + source, + getIntValue(getIntType(), lineStart), + getIntValue(getIntType(), lineEnd), + getIntValue(getIntType(), colStart), + getIntValue(getIntType(), colEnd) + }; + return emitIntrinsicInst(getVoidType(), kIROp_DebugLine, 5, args); + } IRLiveRangeStart* IRBuilder::emitLiveRangeStart(IRInst* referenced) { // This instruction doesn't produce any result, |
