author | peter1138 |
Sun, 03 Aug 2008 17:35:08 +0000 | |
changeset 9834 | 7474149531c1 |
parent 9111 | 48ce04029fe4 |
permissions | -rw-r--r-- |
3093
e48b7a12895f
(svn r3682) -Fix: didn't write $ correct in G5_detector in r3673, which caused problems for tortoisesvn
bjarni
parents:
3084
diff
changeset
|
1 |
/* $Id$ */ |
3084
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
2 |
|
9111
48ce04029fe4
(svn r12971) -Documentation: add @file in files that missed them and add something more than whitespace as description of files that don't have a description.
rubidium
parents:
5584
diff
changeset
|
3 |
/** @file G5_detector.cpp Detection for G5 machines (PowerPC). */ |
48ce04029fe4
(svn r12971) -Documentation: add @file in files that missed them and add something more than whitespace as description of files that don't have a description.
rubidium
parents:
5584
diff
changeset
|
4 |
|
3084
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
5 |
#include <mach/mach.h> |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
6 |
#include <mach/mach_host.h> |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
7 |
#include <mach/host_info.h> |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
8 |
#include <mach/machine.h> |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
9 |
#include <stdio.h> |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
10 |
|
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
11 |
|
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
12 |
#ifndef CPU_SUBTYPE_POWERPC_970 |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
13 |
#define CPU_SUBTYPE_POWERPC_970 ((cpu_subtype_t) 100) |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
14 |
#endif |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
15 |
|
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
16 |
// this function is a lightly modified version of some code from Apple's developer homepage to detect G5 CPUs at runtime |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
17 |
main() |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
18 |
{ |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
19 |
host_basic_info_data_t hostInfo; |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
20 |
mach_msg_type_number_t infoCount; |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
21 |
boolean_t is_G5; |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
22 |
|
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
23 |
infoCount = HOST_BASIC_INFO_COUNT; |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
24 |
host_info(mach_host_self(), HOST_BASIC_INFO, |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
25 |
(host_info_t)&hostInfo, &infoCount); |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
26 |
|
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
27 |
is_G5 = ((hostInfo.cpu_type == CPU_TYPE_POWERPC) && |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
28 |
(hostInfo.cpu_subtype == CPU_SUBTYPE_POWERPC_970)); |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
29 |
if (is_G5) |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
30 |
printf("1"); |
6540f61eea49
(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it compiles on G5 and then adds flags to optimise for G5
bjarni
parents:
diff
changeset
|
31 |
} |