Improve virtual register handling when computing debug information
authorDominic Chen <d.c.ddcc@gmail.com>
Thu, 11 Aug 2016 17:52:40 +0000 (17:52 +0000)
committerDominic Chen <d.c.ddcc@gmail.com>
Thu, 11 Aug 2016 17:52:40 +0000 (17:52 +0000)
commit6ba19659cb7c4b08828b187dc8e4b45531d0e6a6
treeb0921bf5c9d1433bad8f11d1ff0c331ba4b3629c
parente36d7716c38ba1ec44d79b668d15584ecc725d5f
Improve virtual register handling when computing debug information

Summary: Some backends, like WebAssembly, use virtual registers instead of physical registers. This crashes the DbgValueHistoryCalculator pass, which assumes that all registers are physical. Instead, skip virtual registers when iterating aliases, and assume that they are clobbered.

Reviewers: dexonsmith, dschuff, aprantl

Subscribers: yurydelendik, llvm-commits, jfb, sunfish

Differential Revision: https://reviews.llvm.org/D22590

llvm-svn: 278371
llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.cpp
llvm/test/CodeGen/WebAssembly/dbgvalue.ll [new file with mode: 0644]