================ @@ -1444,15 +1444,16 @@ void clang::emitBackendOutput(CompilerInstance &CI, CodeGenOptions &CGOpts, // Verify clang's TargetInfo DataLayout against the LLVM TargetMachine's // DataLayout. - if (AsmHelper.TM) { - std::string DLDesc = M->getDataLayout().getStringRepresentation(); - if (DLDesc != TDesc) { + if (AsmHelper.TM) + if (!AsmHelper.TM->isCompatibleDataLayout(M->getDataLayout()) || + !AsmHelper.TM->isCompatibleDataLayout(DataLayout(TDesc))) { + std::string DLDesc = M->getDataLayout().getStringRepresentation(); ---------------- thetheodor wrote:
For example: ``` /usr/bin/python3 /work/llvm-project/build/./bin/llvm-lit -vv /work/llvm-project/clang/test/CodeGenCUDA/bf16.cu ... error: backend data layout 'e-p6:32:32-i64:64-i128:128-v16:16-v32:32-n16:32:64-A5' does not match expected target description 'e-p6:32:32-i64:64-i128:128-v16:16-v32:32-n16:32:64' 1 error generated when compiling for . ``` it's failing because the `-A5` part was not part of the initial data layout https://github.com/llvm/llvm-project/pull/154814 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits