[XCOFF][AIX] Use 'L..' instead of 'L' for PrivateGlobalPrefix
authorjasonliu <jasonliu.development@gmail.com>
Wed, 3 Jun 2020 16:23:12 +0000 (16:23 +0000)
committerjasonliu <jasonliu.development@gmail.com>
Wed, 3 Jun 2020 17:18:11 +0000 (17:18 +0000)
commitf5415f7c5a06e8563c650a3ecfd6435d36ca3a66
treebbd21c7059ec1890618a01a7f8fb8eb0c363dcdc
parent14bb6770f2c6597e61d8a696da28483c66f37aed
[XCOFF][AIX] Use 'L..' instead of 'L' for PrivateGlobalPrefix

Without this change, names start with 'L' will get created as
temporary symbol in MCContext::createSymbol.

Some other potential prefix considered:
.L, does not work for AIX, as a function start with L will end
up with .L as prefix for its function entry point.

..L could work, but it does not play well with the convention
on AIX that anything start with '.' are considered as entry point.

L. could work, but not sure if it's safe enough, as it's possible
to have suffixes like .something append to a plain L, giving L.something
which is not necessarily a temporary.

That's why we picked L.. for now.

Differential Revision: https://reviews.llvm.org/D80831
15 files changed:
llvm/lib/MC/MCAsmInfoXCOFF.cpp
llvm/test/CodeGen/PowerPC/aix-cc-abi.ll
llvm/test/CodeGen/PowerPC/aix-cc-byval-mem.ll
llvm/test/CodeGen/PowerPC/aix-cc-byval.ll
llvm/test/CodeGen/PowerPC/aix-extern-weak.ll
llvm/test/CodeGen/PowerPC/aix-extern.ll
llvm/test/CodeGen/PowerPC/aix-lower-block-address.ll
llvm/test/CodeGen/PowerPC/aix-lower-constant-pool-index.ll
llvm/test/CodeGen/PowerPC/aix-lower-jump-table.ll
llvm/test/CodeGen/PowerPC/aix-weak.ll
llvm/test/CodeGen/PowerPC/aix-xcoff-externL.ll [new file with mode: 0644]
llvm/test/CodeGen/PowerPC/aix-xcoff-toc.ll
llvm/test/CodeGen/PowerPC/aix64-cc-byval.ll
llvm/test/CodeGen/PowerPC/lower-globaladdr32-aix-asm.ll
llvm/test/CodeGen/PowerPC/lower-globaladdr64-aix-asm.ll