Issue 140928
Summary [HLSL] Enable reporting of multiple errors from DXILPostOptimizationValidation pass
Labels HLSL
Assignees
Reporter hekota
    `DXILPostOptimizationValidation` pass reports errors related to overlapping resource bindings or invalid use of resource counter. The pass is using `LLVMContext::diagnose()` to report the errors. The issue is that when it is called with `DiagnosticSeverity::Error`, the compiler exits right after the error is reported. Which means that error reporting from an LLVM pass is limited to a single error message. The other options for the diagnostic severity are `Warning`, `Remark` and `Note`, none of which seems like a good fit.

We need to figure out a way to report multiple errors from the `DXILPostOptimizationValidation` pass as there maybe be multiple overlapping resource binding or counter direction errors. One option is to add `NonFatalError` value to the `DiagnosticSeverity` enum that would report the error but not exit out of the compiler. The pass would then exit the compiler after all the errors are reported. 
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to