I came across a consistent behavior in most (if not all) backends,
when handling conditional branches, specifically those with ISD::BR_CC, everyone
use TargetLowering::LowerOperation hook to replace the ISD::CONDCODE chain node with constant, and then find it with a pattern using the tablegen.
I tried using the built in types of llvm to use tablegen and recognize ISD:BR_CC, unfortunately found no way to extract the specific condition of the ISD::CONDCODE, I suppose this is the reason why nobody uses it, but it just means this part of llvm is completely dead code…
I was wondering if anyone came across this thing, or has any insights on it.