|
1 # 25519458 LLVM getHostCPUName will not work with Fujitsu processor names |
|
2 # 24960500 llvm getHostCPUName() comes up with names that its parser doesn't recognize |
1 # 22777179 implement -mtune= | -march= | -mcpu= in clang SPARC |
3 # 22777179 implement -mtune= | -march= | -mcpu= in clang SPARC |
2 # 22778085 LLVM is using %icc when it should be using %xcc |
4 # 22778085 LLVM is using %icc when it should be using %xcc |
3 # 22778089 the SPARCV9 IS implementation is incomplete |
5 # 22778089 the SPARCV9 IS implementation is incomplete |
4 # 22778098 LLVM should emit proc identifiers in SPARC assembler (capabilities) |
6 # 22778098 LLVM should emit proc identifiers in SPARC assembler (capabilities) |
5 # 3.9.X for upstream. |
7 # 3.9.X for upstream. |
6 --- lib/Target/Sparc/Sparc.td 2015-03-27 20:03:51.000000000 -0800 |
8 --- lib/Target/Sparc/Sparc.td 2015-03-27 21:03:51.000000000 -0700 |
7 +++ lib/Target/Sparc/Sparc.td 2016-06-30 08:30:11.896274715 -0800 |
9 +++ lib/Target/Sparc/Sparc.td 2017-02-08 09:22:42.929246156 -0800 |
8 @@ -35,13 +35,15 @@ |
10 @@ -35,14 +35,16 @@ |
9 def FeatureVIS3 |
11 def FeatureVIS3 |
10 : SubtargetFeature<"vis3", "IsVIS3", "true", |
12 : SubtargetFeature<"vis3", "IsVIS3", "true", |
11 "Enable Visual Instruction Set extensions III">; |
13 "Enable Visual Instruction Set extensions III">; |
12 - |
14 - |
13 def FeatureHardQuad |
15 def FeatureHardQuad |
14 : SubtargetFeature<"hard-quad-float", "HasHardQuad", "true", |
16 : SubtargetFeature<"hard-quad-float", "HasHardQuad", "true", |
15 "Enable quad-word floating point instructions">; |
17 "Enable quad-word floating point instructions">; |
16 - |
|
17 -def UsePopc : SubtargetFeature<"popc", "UsePopc", "true", |
|
18 - "Use the popc (population count) instruction">; |
|
19 +def UsePopc |
18 +def UsePopc |
20 + : SubtargetFeature<"popc", "UsePopc", "true", |
19 + : SubtargetFeature<"popc", "UsePopc", "true", |
21 + "Use the popc (population count) instruction">; |
20 + "Use the popc (population count) instruction">; |
22 +def UseHWCap |
21 +def UseHWCap |
23 + : SubtargetFeature<"hwcap", "UseHWCap", "true", |
22 + : SubtargetFeature<"hwcap", "UseHWCap", "true", |
24 + "Use SPARC Hardware Capabiliies">; |
23 + "Use SPARC Hardware Capabiliies">; |
25 |
24 |
|
25 -def UsePopc : SubtargetFeature<"popc", "UsePopc", "true", |
|
26 - "Use the popc (population count) instruction">; |
|
27 - |
26 //===----------------------------------------------------------------------===// |
28 //===----------------------------------------------------------------------===// |
27 // Register File, Calling Conv, Instruction Descriptions |
29 // Register File, Calling Conv, Instruction Descriptions |
|
30 //===----------------------------------------------------------------------===// |
28 @@ -74,10 +76,46 @@ |
31 @@ -74,10 +76,46 @@ |
29 def : Proc<"sparclite86x", []>; |
32 def : Proc<"sparclite86x", []>; |
30 def : Proc<"sparclet", []>; |
33 def : Proc<"sparclet", []>; |
31 def : Proc<"tsc701", []>; |
34 def : Proc<"tsc701", []>; |
32 -def : Proc<"v9", [FeatureV9]>; |
35 -def : Proc<"v9", [FeatureV9]>; |
72 +def : Proc<"ultrasparc4", [FeatureV9, FeatureV8Deprecated, FeatureVIS, |
75 +def : Proc<"ultrasparc4", [FeatureV9, FeatureV8Deprecated, FeatureVIS, |
73 + FeatureVIS2, FeatureVIS3]>; |
76 + FeatureVIS2, FeatureVIS3]>; |
74 def : Proc<"niagara", [FeatureV9, FeatureV8Deprecated, FeatureVIS, |
77 def : Proc<"niagara", [FeatureV9, FeatureV8Deprecated, FeatureVIS, |
75 FeatureVIS2]>; |
78 FeatureVIS2]>; |
76 def : Proc<"niagara2", [FeatureV9, FeatureV8Deprecated, UsePopc, |
79 def : Proc<"niagara2", [FeatureV9, FeatureV8Deprecated, UsePopc, |
77 @@ -86,7 +124,10 @@ |
80 @@ -86,8 +124,31 @@ |
78 FeatureVIS, FeatureVIS2]>; |
81 FeatureVIS, FeatureVIS2]>; |
79 def : Proc<"niagara4", [FeatureV9, FeatureV8Deprecated, UsePopc, |
82 def : Proc<"niagara4", [FeatureV9, FeatureV8Deprecated, UsePopc, |
80 FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
83 FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
84 +def : Proc<"sparc4", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
85 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
86 +def : Proc<"sparc5", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
87 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
88 +def : Proc<"SPARC-T4", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
89 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
90 +def : Proc<"SPARC-T5", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
91 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
92 +def : Proc<"SPARC-M5", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
93 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
94 +def : Proc<"SPARC-M6", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
95 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
96 +def : Proc<"SPARC-T7", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
97 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
98 +def : Proc<"SPARC-S7", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
99 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
100 +def : Proc<"SPARC-M8", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
101 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
102 +def : Proc<"SPARC64-X", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
103 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
104 +def : Proc<"SPARC64-X+", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
105 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
106 +def : Proc<"SPARC64-XII", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
107 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
108 |
81 - |
109 - |
82 +def : Proc<"sparc4", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
83 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
84 +def : Proc<"sparc5", [FeatureV9, FeatureV8Deprecated, UsePopc, |
|
85 + FeatureVIS, FeatureVIS2, FeatureVIS3]>; |
|
86 |
|
87 //===----------------------------------------------------------------------===// |
110 //===----------------------------------------------------------------------===// |
88 // Declare the target which we are implementing |
111 // Declare the target which we are implementing |
|
112 //===----------------------------------------------------------------------===// |
|
113 |
89 ### |
114 ### |
90 --- lib/Target/Sparc/SparcRegisterInfo.td 2015-10-04 01:11:22.000000000 -0800 |
115 --- lib/Target/Sparc/SparcRegisterInfo.td 2015-10-04 01:11:22.000000000 -0800 |
91 +++ lib/Target/Sparc/SparcRegisterInfo.td 2016-06-29 17:37:09.214126550 -0800 |
116 +++ lib/Target/Sparc/SparcRegisterInfo.td 2016-06-29 17:37:09.214126550 -0800 |
92 @@ -56,7 +56,9 @@ |
117 @@ -56,7 +56,9 @@ |
93 } |
118 } |