aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h
diff options
context:
space:
mode:
authorYury Delendik <ydelendik@mozilla.com>2019-12-20 14:31:56 -0800
committerDerek Schuff <dschuff@chromium.org>2019-12-20 14:39:05 -0800
commitadf7a0a558a51f275bf8906b6a010c397560b7ff (patch)
tree318dbd1006bb7054d62bf66bd9647272f3c7cf41 /llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h
parent538b485c59fae3faf2e0cc250faa9bba8406bbfe (diff)
downloadllvm-adf7a0a558a51f275bf8906b6a010c397560b7ff.zip
llvm-adf7a0a558a51f275bf8906b6a010c397560b7ff.tar.gz
llvm-adf7a0a558a51f275bf8906b6a010c397560b7ff.tar.bz2
[WebAssembly] Use TargetIndex operands in DbgValue to track WebAssembly operands locations
Extends DWARF expression language to express locals/globals locations. (via target-index operands atm) (possible variants are: non-virtual registers or address spaces) The WebAssemblyExplicitLocals can replace virtual registers to targertindex operand type at the time when WebAssembly backend introduces {get,set,tee}_local instead of corresponding virtual registers. Reviewed By: aprantl, dschuff Tags: #debug-info, #llvm Differential Revision: https://reviews.llvm.org/D52634
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h')
-rw-r--r--llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h b/llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h
index 06e8805..7eae3cb 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h
@@ -30,6 +30,7 @@ public:
void move(MachineInstr *Insert);
void updateReg(unsigned Reg);
void clone(MachineInstr *Insert, unsigned NewReg);
+ void replaceWithLocal(unsigned LocalId);
};
} // end namespace llvm