https://github.com/shiltian commented: I think this handling makes it more difficult to maintain. A better alternative would be to have one code block for each target, just as how they are spread in multiple files. https://github.com/llvm/llvm-project/pull/98421