[MIR] Print target-specific constant pools
authorDiana Picus <diana.picus@linaro.org>
Wed, 2 Aug 2017 11:09:30 +0000 (11:09 +0000)
committerDiana Picus <diana.picus@linaro.org>
Wed, 2 Aug 2017 11:09:30 +0000 (11:09 +0000)
commitd5a00b0ff645be2fa219fd9abd95527c70ccdc5c
treebdf65c5756046f935e1fe1ee4e6700046890836d
parentf5a4394ad6a402795ee0e5b3c8836b955ba00aed
[MIR] Print target-specific constant pools

This should enable us to test the generation of target-specific constant
pools, e.g. for ARM:

constants:
 - id:              0
   value:           'g(GOT_PREL)-(LPC0+8-.)'
   alignment:       4
   isTargetSpecific: true

I intend to use this to test PIC support in GlobalISel for ARM.

This is difficult to test outside of that context, since the existing
MIR tests usually rely on parser support as well, and that seems a bit
trickier to add. We could try to add a unit test, but the setup for that
seems rather convoluted and overkill.

We do test however that the parser reports a nice error when
encountering a target-specific constant pool.

Differential Revision: https://reviews.llvm.org/D36092

llvm-svn: 309806
llvm/include/llvm/CodeGen/MIRYamlMapping.h
llvm/lib/CodeGen/MIRParser/MIRParser.cpp
llvm/lib/CodeGen/MIRPrinter.cpp
llvm/test/CodeGen/MIR/ARM/target-constant-pools-error.mir [new file with mode: 0644]
llvm/test/CodeGen/MIR/X86/constant-pool.mir