summaryrefslogtreecommitdiff
path: root/unsorted/TargetOptimizer-ppc-mach.c
blob: 10fe33e5b6f23b89858273cfc537ae274b36fb56 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#include "parser.h"

char schedule_ppc_default;

int TargetSetOptFlags(short val, Boolean set) {
    switch (val) {
        case 'Pe':
            pBackEnd.peephole = set;
            break;
        case 'Sn':
            pBackEnd.schedule = 0;
            break;
        case 'Sh':
            pBackEnd.schedule = set;
            break;
        case 'S?':
            pBackEnd.processor = schedule_ppc_default;
            break;
        case 'SG':
            pBackEnd.processor = schedule_ppc_default = 0;
            break;
        case 'S1':
            pBackEnd.processor = schedule_ppc_default = 1;
            break;
        case 'S3':
            pBackEnd.processor = schedule_ppc_default = 2;
            break;
        case 'S#':
            pBackEnd.processor = schedule_ppc_default = 3;
            break;
        case 'S4':
            pBackEnd.processor = schedule_ppc_default = 4;
            break;
        case 'S%':
            pBackEnd.processor = schedule_ppc_default = 5;
            break;
        case 'S7':
            pBackEnd.processor = schedule_ppc_default = 6;
            break;
        case 'SA':
            pBackEnd.processor = schedule_ppc_default = 7;
            break;
        default:
            return 0;
    }

    return 1;
}

void TargetDisplayOptimizationOptions(Handle txt) {
    if (!pBackEnd.schedule) {
        HPrintF(txt, "\t- no instruction scheduling\n");
    } else {
        HPrintF(txt, "\t- schedule for %s\n",
                (pBackEnd.processor == 0) ? "generic PPC" :
                (pBackEnd.processor == 1) ? "601" :
                (pBackEnd.processor == 2) ? "603" :
                (pBackEnd.processor == 3) ? "603e" :
                (pBackEnd.processor == 4) ? "604" :
                (pBackEnd.processor == 5) ? "604e" :
                (pBackEnd.processor == 6) ? "750" :
                (pBackEnd.processor == 7) ? "Altivec" :
                "???"
                );
    }
}

void TargetSetPragmaOptimizationsToUnspecified() {
}