[LLVMABI] Introduce the QualTypeMapper (#174634)
This PR introduces the `QualTypeMapper` class, which bridges Clang's
type system with the LLVM ABI type system introduced in
https://github.com/llvm/llvm-project/pull/158329.
The `QualTypeMapper` translates Clang `QualType` instances into their
corresponding LLVM ABI type representations, preserving all ABI-relevant
information while abstracting away frontend-specific details.
The mapper queries the `ASTContext` for layout information computed by
the frontend and uses the `TypeBuilder` API(from the above merged PR) to
construct the corresponding ABI types. This separation ensures that ABI
logic remains independent of frontend AST details while still having
access to all necessary type information.
This is a prerequisite for implementing target-specific ABI lowering, as
demonstrated in https://github.com/llvm/llvm-project/pull/140112