summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
diff options
context:
space:
mode:
authorJim Laskey <jlaskey@mac.com>2006-12-12 16:07:33 +0000
committerJim Laskey <jlaskey@mac.com>2006-12-12 16:07:33 +0000
commit7c3cab9ddc9eb7421b42048d3764a69c72ec2e12 (patch)
treee8da9d1295c525c176d77009e8c1ee6c221be341 /llvm/lib/Target
parent470d61d82c90cbb35f99b206bed0616a5333c6d7 (diff)
downloadbcm5719-llvm-7c3cab9ddc9eb7421b42048d3764a69c72ec2e12.tar.gz
bcm5719-llvm-7c3cab9ddc9eb7421b42048d3764a69c72ec2e12.zip
Honor the command line specification for machine type.
llvm-svn: 32483
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r--llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp b/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
index 032782b8ceb..c84c6fb1598 100644
--- a/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
+++ b/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
@@ -542,8 +542,19 @@ bool DarwinAsmPrinter::runOnMachineFunction(MachineFunction &MF) {
bool DarwinAsmPrinter::doInitialization(Module &M) {
- if (Subtarget.isGigaProcessor())
+ const std::string &CPU = Subtarget.getCPU();
+
+ if (CPU != "generic")
+ O << "\t.machine ppc" << CPU << "\n";
+ else if (Subtarget.isGigaProcessor())
O << "\t.machine ppc970\n";
+ else if (Subtarget.isPPC64())
+ O << "\t.machine ppc64\n";
+ else if (Subtarget.hasAltivec())
+ O << "\t.machine ppc7400\n";
+ else
+ O << "\t.machine ppc\n";
+
AsmPrinter::doInitialization(M);
// Darwin wants symbols to be quoted if they have complex names.
OpenPOWER on IntegriCloud