[llvm-dev] Virtual register defs don't dominate all uses

Josh Sharp via llvm-dev llvm-dev at lists.llvm.org
Tue Apr 30 20:52:06 PDT 2019


Thank you for the response.
What's the difference between running clang with the -emit-llvm option vs running it with the --target=<mytarget> option.
The error I described happens only if I run: clang --target=<mytarget> <inputfile>.c
However if I do clang -emit-llvm <inputfile>.c -o <outputfile>.bc
and then llc -march=<mytarget> <outputfile>.bc, no error occurs

Thanks
________________________________
From: qcolombet at apple.com <qcolombet at apple.com> on behalf of Quentin Colombet <qcolombet at apple.com>
Sent: Tuesday, April 16, 2019 3:05 PM
To: Josh Sharp
Cc: via llvm-dev
Subject: Re: [llvm-dev] Virtual register defs don't dominate all uses

Hi Josh,

That means that at least one use of the reporter virtual register happens before its definition.
E.g.,
… = V1 <—— V1 is not defined here
V1 = … <— V1 def does not dominate all its use

Cheers,
-Quentin
On Apr 16, 2019, at 2:47 PM, Josh Sharp via llvm-dev <llvm-dev at lists.llvm.org<mailto:llvm-dev at lists.llvm.org>> wrote:

 Hi all,
I'm getting this error:  "Virtual register defs don't dominate all uses". It comes from llvm/lib/CodeGen/MachineVerifier.cpp:2138
I don't understand what it means. Does anyone know?

Thanks.
_______________________________________________
LLVM Developers mailing list
llvm-dev at lists.llvm.org<mailto:llvm-dev at lists.llvm.org>
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190501/72c6a85e/attachment.html>


More information about the llvm-dev mailing list