The getDefaultSubtargetFeatures method of SubtargetFeature did actually return a
authorBill Wendling <isanbard@gmail.com>
Tue, 11 May 2010 00:30:02 +0000 (00:30 +0000)
committerBill Wendling <isanbard@gmail.com>
Tue, 11 May 2010 00:30:02 +0000 (00:30 +0000)
commit81043ee5dc4cca470db8d45e080ba0a38efbffc2
tree1eb46a731b61748f345af8a66850350ae248fd48
parent31b9c44cc13bb686010cf6bfbeef8745c39939b9
The getDefaultSubtargetFeatures method of SubtargetFeature did actually return a
string of features for that target. However LTO was using that string to pass
into the "create target machine" stuff. That stuff needed the feature string to
be in a particular form. In particular, it needed the CPU specified first and
then the attributes. If there isn't a CPU specified, it required it to be blank
-- e.g., ",+altivec". Yuck.

Modify the getDefaultSubtargetFeatures method to be a non-static member
function. For all attributes for a specific subtarget, it will add them in like
normal. It will also take a CPU string so that it can satisfy this horrible
syntax.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103451 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Target/SubtargetFeature.h
lib/Target/SubtargetFeature.cpp
tools/lto/LTOCodeGenerator.cpp
tools/lto/LTOModule.cpp