forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit2e28124
committed
Add POPCNT support for MSVC x86_64 builds
02a6a54 added code to make use of the POPCNT instruction when availablefor many of our common platforms. Here we do the same for MSVC for x86_64machines.MSVC's intrinsic functions for popcnt seem to differ from GCCs in thatthey always appear to emit the popcnt instructions. In GCC the behaviorwill depend on if the source file was compiled with -mpopcnt or not. Forthis reason, the MSVC intrinsic function has been lumped into thepg_popcount*_asm function, however doing that sort of invalidates the nameof that function, so let's rename it to pg_popcount*_fast().Author: David RowleyReviewed-by: John NaylorDiscussion:https://postgr.es/m/CAApHDvqL3cbbK%3DGzNcwzsNR9Gi%2BaUvTudKkC4XgnQfXirJ_oRQ%40mail.gmail.com1 parentd8a75b1 commit2e28124
1 file changed
+33
-15
lines changedLines changed: 33 additions & 15 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
103 | 103 |
| |
104 | 104 |
| |
105 | 105 |
| |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
106 | 116 |
| |
107 | 117 |
| |
108 | 118 |
| |
| |||
112 | 122 |
| |
113 | 123 |
| |
114 | 124 |
| |
115 |
| - | |
| 125 | + | |
116 | 126 |
| |
117 | 127 |
| |
118 | 128 |
| |
119 | 129 |
| |
120 | 130 |
| |
121 | 131 |
| |
122 |
| - | |
| 132 | + | |
123 | 133 |
| |
124 | 134 |
| |
125 | 135 |
| |
126 |
| - | |
127 |
| - | |
| 136 | + | |
| 137 | + | |
128 | 138 |
| |
129 | 139 |
| |
130 | 140 |
| |
131 | 141 |
| |
132 | 142 |
| |
133 | 143 |
| |
134 |
| - | |
| 144 | + | |
135 | 145 |
| |
136 |
| - | |
| 146 | + | |
137 | 147 |
| |
138 | 148 |
| |
139 | 149 |
| |
| |||
165 | 175 |
| |
166 | 176 |
| |
167 | 177 |
| |
168 |
| - | |
169 |
| - | |
| 178 | + | |
| 179 | + | |
170 | 180 |
| |
171 | 181 |
| |
172 | 182 |
| |
| |||
182 | 192 |
| |
183 | 193 |
| |
184 | 194 |
| |
185 |
| - | |
186 |
| - | |
| 195 | + | |
| 196 | + | |
187 | 197 |
| |
188 | 198 |
| |
189 | 199 |
| |
| |||
195 | 205 |
| |
196 | 206 |
| |
197 | 207 |
| |
198 |
| - | |
| 208 | + | |
199 | 209 |
| |
200 | 210 |
| |
201 | 211 |
| |
202 |
| - | |
| 212 | + | |
203 | 213 |
| |
| 214 | + | |
| 215 | + | |
| 216 | + | |
204 | 217 |
| |
205 | 218 |
| |
206 | 219 |
| |
207 | 220 |
| |
| 221 | + | |
208 | 222 |
| |
209 | 223 |
| |
210 | 224 |
| |
211 |
| - | |
| 225 | + | |
212 | 226 |
| |
213 | 227 |
| |
214 | 228 |
| |
215 |
| - | |
| 229 | + | |
216 | 230 |
| |
| 231 | + | |
| 232 | + | |
| 233 | + | |
217 | 234 |
| |
218 | 235 |
| |
219 | 236 |
| |
220 | 237 |
| |
| 238 | + | |
221 | 239 |
| |
222 | 240 |
| |
223 |
| - | |
| 241 | + | |
224 | 242 |
| |
225 | 243 |
| |
226 | 244 |
| |
|
0 commit comments
Comments
(0)