1. Use SubtargetFeatures in llc/lli.

2. Propagate feature "string" to all targets.

3. Implement use of SubtargetFeatures in PowerPCTargetSubtarget.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23192 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Jim Laskey
2005-09-01 21:38:21 +00:00
parent b3302db18a
commit b1e1180ca0
27 changed files with 192 additions and 42 deletions

View File

@@ -49,7 +49,8 @@ namespace llvm {
struct Entry {
const char *Name;
const char *ShortDesc;
TargetMachine *(*CtorFn)(const Module &, IntrinsicLowering*);
TargetMachine *(*CtorFn)(const Module &, IntrinsicLowering*,
const std::string &);
unsigned (*ModuleMatchQualityFn)(const Module &M);
unsigned (*JITMatchQualityFn)();
@@ -57,7 +58,8 @@ namespace llvm {
protected:
Entry(const char *N, const char *SD,
TargetMachine *(*CF)(const Module &, IntrinsicLowering*),
TargetMachine *(*CF)(const Module &, IntrinsicLowering*,
const std::string &),
unsigned (*MMF)(const Module &M), unsigned (*JMF)());
private:
const Entry *Next; // Next entry in the linked list.
@@ -80,8 +82,9 @@ namespace llvm {
&TargetMachineImpl::getJITMatchQuality) {
}
private:
static TargetMachine *Allocator(const Module &M, IntrinsicLowering *IL) {
return new TargetMachineImpl(M, IL);
static TargetMachine *Allocator(const Module &M, IntrinsicLowering *IL,
const std::string &FS) {
return new TargetMachineImpl(M, IL, FS);
}
};