AMDGPU: Fix broken and permissive handling of printf format strings
This was completely broken with opaque pointers because it was specifically looking for a constant expression with the global variable as the first operand. Strip casts like normal, and properly validate all of the restrictions rather than silently ignoring any unhandled cases. Also be stricter that we aren't calling into some unresolved or non-constant format string. Also converts the test to opaque pointers and generated tests. There's more broken initializer handling for strings inside the format string processing too, but there's just no test coverage for this at all.
Loading
Please sign in to comment