Make TargetInfo store an actual DataLayout instead of a string.
authorJames Y Knight <jyknight@google.com>
Fri, 4 Mar 2016 19:00:41 +0000 (19:00 +0000)
committerJames Y Knight <jyknight@google.com>
Fri, 4 Mar 2016 19:00:41 +0000 (19:00 +0000)
commitb214cbc7852fa1719c5d0bd3ccb9615481e03c55
treee5fe189f5192242789a8887dcf64d3af79258831
parent31f251f1f0acae8864d08a07be4b190cea2ed4b5
Make TargetInfo store an actual DataLayout instead of a string.

Use it to calculate UserLabelPrefix, instead of specifying it (often
incorrectly).

Note that the *actual* user label prefix has always come from the
DataLayout, and is handled within LLVM. The main thing clang's
TargetInfo::UserLabelPrefix did was to set the #define value. Having
these be different from each-other is just silly.

Differential Revision: http://reviews.llvm.org/D17183

llvm-svn: 262737
15 files changed:
clang/include/clang/Basic/TargetInfo.h
clang/include/clang/CodeGen/BackendUtil.h
clang/lib/AST/Mangle.cpp
clang/lib/Basic/TargetInfo.cpp
clang/lib/Basic/Targets.cpp
clang/lib/CodeGen/BackendUtil.cpp
clang/lib/CodeGen/CodeGenAction.cpp
clang/lib/CodeGen/ModuleBuilder.cpp
clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp
clang/lib/Frontend/InitPreprocessor.cpp
clang/lib/Index/CodegenNameGenerator.cpp
clang/test/Preprocessor/init.c
clang/unittests/Basic/SourceManagerTest.cpp
clang/unittests/Lex/LexerTest.cpp
clang/unittests/Lex/PPConditionalDirectiveRecordTest.cpp