1 /*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21
22 /*
23 * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
24 * Use is subject to license terms.
25 */
26
27 #include <sys/cpu_module.h>
28 #include <vm/page.h>
29 #include <vm/seg_map.h>
30
31 /*ARGSUSED*/
32 void
cpu_fiximp(struct cpu_node * cpunode)33 cpu_fiximp(struct cpu_node *cpunode)
34 {}
35
36 /*ARGSUSED*/
37 void
cpu_map_exec_units(struct cpu * cp)38 cpu_map_exec_units(struct cpu *cp)
39 {}
40
41 void
cpu_flush_ecache(void)42 cpu_flush_ecache(void)
43 {}
44
45 /*ARGSUSED*/
46 void
cpu_faulted_enter(struct cpu * cp)47 cpu_faulted_enter(struct cpu *cp)
48 {}
49
50 /*ARGSUSED*/
51 void
cpu_faulted_exit(struct cpu * cp)52 cpu_faulted_exit(struct cpu *cp)
53 {}
54
55 /*
56 * Ecache scrub operations
57 */
58 void
cpu_init_cache_scrub(void)59 cpu_init_cache_scrub(void)
60 {}
61
62 /* ARGSUSED */
63 void
prefetch_page_w(void * pp)64 prefetch_page_w(void *pp)
65 {
66 #define ECACHE_SUBBLOCKS_PER_PAGE 2
67 #define ECACHE_SUBBLOCK_SIZE_BYTES 64
68 #define ECACHE_PAGE_BYTE_MAX \
69 (ECACHE_SUBBLOCKS_PER_PAGE*ECACHE_SUBBLOCK_SIZE_BYTES+1)
70
71 /*
72 * The following line is intended to cause an error
73 * whenever the sun4u page_t grows beyond 128
74 * bytes.
75 *
76 * If you get an error here, you'll need to change
77 * the 'prefetch_page_w' assembly language code
78 * (see also prefetch_page_w prologue comment)
79 */
80 /*LINTED*/
81 volatile int garbage[ECACHE_PAGE_BYTE_MAX - sizeof (page_t)];
82 }
83
84 /* ARGSUSED */
85 void
prefetch_page_r(void * pp)86 prefetch_page_r(void *pp)
87 {
88 #define ECACHE_SUBBLOCKS_PER_PAGE 2
89 #define ECACHE_SUBBLOCK_SIZE_BYTES 64
90 #define ECACHE_PAGE_BYTE_MAX \
91 (ECACHE_SUBBLOCKS_PER_PAGE*ECACHE_SUBBLOCK_SIZE_BYTES+1)
92
93 /*
94 * The following line is intended to cause an error
95 * whenever the sun4u page_t grows beyond 128
96 * bytes.
97 *
98 * If you get an error here, you'll need to change
99 * the 'prefetch_page_r' assembly language code
100 * (see also prefetch_page_w prologue comment)
101 */
102 /*LINTED*/
103 volatile int garbage[ECACHE_PAGE_BYTE_MAX - sizeof (page_t)];
104 }
105
106
107 #ifdef SEGKPM_SUPPORT
108 #define SMAP_SIZE 80
109 #else
110 #define SMAP_SIZE 56
111 #endif
112
113 /* ARGSUSED */
114 void
prefetch_smap_w(void * smp)115 prefetch_smap_w(void *smp)
116 {
117
118 /*
119 * The following lines are intended to cause an error
120 * whenever the smap object size changes from the current
121 * size of 48 bytes. If you get an error here, you'll
122 * need to update the code in the 'prefetch_smap_w' assembly
123 * language code.
124 */
125 /*LINTED*/
126 volatile int smap_size_changed [SMAP_SIZE - sizeof (struct smap) + 1];
127 volatile int smap_size_changed2 [sizeof (struct smap) - SMAP_SIZE + 1];
128 }
129
130 void
kdi_flush_caches(void)131 kdi_flush_caches(void)
132 {}
133
134 /*ARGSUSED*/
135 int
kzero(void * addr,size_t count)136 kzero(void *addr, size_t count)
137 { return (0); }
138
139 /*ARGSUSED*/
140 void
uzero(void * addr,size_t count)141 uzero(void *addr, size_t count)
142 {}
143
144 /*ARGSUSED*/
145 void
bzero(void * addr,size_t count)146 bzero(void *addr, size_t count)
147 {}
148
149 /*ARGSUSED*/
150 void
cpu_inv_tsb(caddr_t tsb_base,uint_t tsb_bytes)151 cpu_inv_tsb(caddr_t tsb_base, uint_t tsb_bytes)
152 {}
153
154 /*
155 * Atomic Function Stubs
156 */
157
158 /* ARGSUSED */
159 uint64_t
atomic_cas_64(volatile uint64_t * target,uint64_t value1,uint64_t value2)160 atomic_cas_64(volatile uint64_t *target, uint64_t value1, uint64_t value2)
161 { return (0); }
162
163 /* ARGSUSED */
164 void
atomic_inc_8(volatile uint8_t * target)165 atomic_inc_8(volatile uint8_t *target)
166 {}
167
168 /* ARGSUSED */
169 void
atomic_inc_uchar(volatile uchar_t * target)170 atomic_inc_uchar(volatile uchar_t *target)
171 {}
172
173 /* ARGSUSED */
174 void
atomic_inc_16(volatile uint16_t * target)175 atomic_inc_16(volatile uint16_t *target)
176 {}
177
178 /* ARGSUSED */
179 void
atomic_inc_ushort(volatile ushort_t * target)180 atomic_inc_ushort(volatile ushort_t *target)
181 {}
182
183 /* ARGSUSED */
184 void
atomic_inc_32(volatile uint32_t * target)185 atomic_inc_32(volatile uint32_t *target)
186 {}
187
188 /* ARGSUSED */
189 void
atomic_inc_uint(volatile uint_t * target)190 atomic_inc_uint(volatile uint_t *target)
191 {}
192
193 /* ARGSUSED */
194 void
atomic_inc_ulong(volatile ulong_t * target)195 atomic_inc_ulong(volatile ulong_t *target)
196 {}
197
198 /* ARGSUSED */
199 void
atomic_inc_64(volatile uint64_t * target)200 atomic_inc_64(volatile uint64_t *target)
201 {}
202
203 /* ARGSUSED */
204 void
atomic_dec_8(volatile uint8_t * target)205 atomic_dec_8(volatile uint8_t *target)
206 {}
207
208 /* ARGSUSED */
209 void
atomic_dec_uchar(volatile uchar_t * target)210 atomic_dec_uchar(volatile uchar_t *target)
211 {}
212
213 /* ARGSUSED */
214 void
atomic_dec_16(volatile uint16_t * target)215 atomic_dec_16(volatile uint16_t *target)
216 {}
217
218 /* ARGSUSED */
219 void
atomic_dec_ushort(volatile ushort_t * target)220 atomic_dec_ushort(volatile ushort_t *target)
221 {}
222
223 /* ARGSUSED */
224 void
atomic_dec_32(volatile uint32_t * target)225 atomic_dec_32(volatile uint32_t *target)
226 {}
227
228 /* ARGSUSED */
229 void
atomic_dec_uint(volatile uint_t * target)230 atomic_dec_uint(volatile uint_t *target)
231 {}
232
233 /* ARGSUSED */
234 void
atomic_dec_ulong(volatile ulong_t * target)235 atomic_dec_ulong(volatile ulong_t *target)
236 {}
237
238 /* ARGSUSED */
239 void
atomic_dec_64(volatile uint64_t * target)240 atomic_dec_64(volatile uint64_t *target)
241 {}
242
243 /* ARGSUSED */
244 void
atomic_add_8(volatile uint8_t * target,int8_t value)245 atomic_add_8(volatile uint8_t *target, int8_t value)
246 {}
247
248 /* ARGSUSED */
249 void
atomic_add_char(volatile uchar_t * target,signed char value)250 atomic_add_char(volatile uchar_t *target, signed char value)
251 {}
252
253 /* ARGSUSED */
254 void
atomic_add_16(volatile uint16_t * target,int16_t delta)255 atomic_add_16(volatile uint16_t *target, int16_t delta)
256 {}
257
258 /* ARGSUSED */
259 void
atomic_add_ushort(volatile ushort_t * target,short value)260 atomic_add_ushort(volatile ushort_t *target, short value)
261 {}
262
263 /* ARGSUSED */
264 void
atomic_add_32(volatile uint32_t * target,int32_t delta)265 atomic_add_32(volatile uint32_t *target, int32_t delta)
266 {}
267
268 /* ARGSUSED */
269 void
atomic_add_ptr(volatile void * target,ssize_t value)270 atomic_add_ptr(volatile void *target, ssize_t value)
271 {}
272
273 /* ARGSUSED */
274 void
atomic_add_long(volatile ulong_t * target,long delta)275 atomic_add_long(volatile ulong_t *target, long delta)
276 {}
277
278 /* ARGSUSED */
279 void
atomic_add_64(volatile uint64_t * target,int64_t delta)280 atomic_add_64(volatile uint64_t *target, int64_t delta)
281 {}
282
283 /* ARGSUSED */
284 void
atomic_or_8(volatile uint8_t * target,uint8_t bits)285 atomic_or_8(volatile uint8_t *target, uint8_t bits)
286 {}
287
288 /* ARGSUSED */
289 void
atomic_or_uchar(volatile uchar_t * target,uchar_t bits)290 atomic_or_uchar(volatile uchar_t *target, uchar_t bits)
291 {}
292
293 /* ARGSUSED */
294 void
atomic_or_16(volatile uint16_t * target,uint16_t bits)295 atomic_or_16(volatile uint16_t *target, uint16_t bits)
296 {}
297
298 /* ARGSUSED */
299 void
atomic_or_ushort(volatile ushort_t * target,ushort_t bits)300 atomic_or_ushort(volatile ushort_t *target, ushort_t bits)
301 {}
302
303 /* ARGSUSED */
304 void
atomic_or_32(volatile uint32_t * target,uint32_t bits)305 atomic_or_32(volatile uint32_t *target, uint32_t bits)
306 {}
307
308 /* ARGSUSED */
309 void
atomic_or_uint(volatile uint_t * target,uint_t bits)310 atomic_or_uint(volatile uint_t *target, uint_t bits)
311 {}
312
313 /* ARGSUSED */
314 void
atomic_or_ulong(volatile ulong_t * target,ulong_t bits)315 atomic_or_ulong(volatile ulong_t *target, ulong_t bits)
316 {}
317
318 /* ARGSUSED */
319 void
atomic_or_64(volatile uint64_t * target,uint64_t bits)320 atomic_or_64(volatile uint64_t *target, uint64_t bits)
321 {}
322
323 /* ARGSUSED */
324 void
atomic_and_8(volatile uint8_t * target,uint8_t bits)325 atomic_and_8(volatile uint8_t *target, uint8_t bits)
326 {}
327
328 /* ARGSUSED */
329 void
atomic_and_uchar(volatile uchar_t * target,uchar_t bits)330 atomic_and_uchar(volatile uchar_t *target, uchar_t bits)
331 {}
332
333 /* ARGSUSED */
334 void
atomic_and_16(volatile uint16_t * target,uint16_t bits)335 atomic_and_16(volatile uint16_t *target, uint16_t bits)
336 {}
337
338 /* ARGSUSED */
339 void
atomic_and_ushort(volatile ushort_t * target,ushort_t bits)340 atomic_and_ushort(volatile ushort_t *target, ushort_t bits)
341 {}
342
343 /* ARGSUSED */
344 void
atomic_and_32(volatile uint32_t * target,uint32_t bits)345 atomic_and_32(volatile uint32_t *target, uint32_t bits)
346 {}
347
348 /* ARGSUSED */
349 void
atomic_and_uint(volatile uint_t * target,uint_t bits)350 atomic_and_uint(volatile uint_t *target, uint_t bits)
351 {}
352
353 /* ARGSUSED */
354 void
atomic_and_ulong(volatile ulong_t * target,ulong_t bits)355 atomic_and_ulong(volatile ulong_t *target, ulong_t bits)
356 {}
357
358 /* ARGSUSED */
359 void
atomic_and_64(volatile uint64_t * target,uint64_t bits)360 atomic_and_64(volatile uint64_t *target, uint64_t bits)
361 {}
362
363 /* ARGSUSED */
364 uint8_t
atomic_inc_8_nv(volatile uint8_t * target)365 atomic_inc_8_nv(volatile uint8_t *target)
366 { return (0); }
367
368 /* ARGSUSED */
369 uchar_t
atomic_inc_uchar_nv(volatile uchar_t * target)370 atomic_inc_uchar_nv(volatile uchar_t *target)
371 { return (0); }
372
373 /* ARGSUSED */
374 uint16_t
atomic_inc_16_nv(volatile uint16_t * target)375 atomic_inc_16_nv(volatile uint16_t *target)
376 { return (0); }
377
378 /* ARGSUSED */
379 ushort_t
atomic_inc_ushort_nv(volatile ushort_t * target)380 atomic_inc_ushort_nv(volatile ushort_t *target)
381 { return (0); }
382
383 /* ARGSUSED */
384 uint32_t
atomic_inc_32_nv(volatile uint32_t * target)385 atomic_inc_32_nv(volatile uint32_t *target)
386 { return (0); }
387
388 /* ARGSUSED */
389 uint_t
atomic_inc_uint_nv(volatile uint_t * target)390 atomic_inc_uint_nv(volatile uint_t *target)
391 { return (0); }
392
393 /* ARGSUSED */
394 ulong_t
atomic_inc_ulong_nv(volatile ulong_t * target)395 atomic_inc_ulong_nv(volatile ulong_t *target)
396 { return (0); }
397
398 /* ARGSUSED */
399 uint64_t
atomic_inc_64_nv(volatile uint64_t * target)400 atomic_inc_64_nv(volatile uint64_t *target)
401 { return (0); }
402
403 /* ARGSUSED */
404 uint8_t
atomic_dec_8_nv(volatile uint8_t * target)405 atomic_dec_8_nv(volatile uint8_t *target)
406 { return (0); }
407
408 /* ARGSUSED */
409 uchar_t
atomic_dec_uchar_nv(volatile uchar_t * target)410 atomic_dec_uchar_nv(volatile uchar_t *target)
411 { return (0); }
412
413 /* ARGSUSED */
414 uint16_t
atomic_dec_16_nv(volatile uint16_t * target)415 atomic_dec_16_nv(volatile uint16_t *target)
416 { return (0); }
417
418 /* ARGSUSED */
419 ushort_t
atomic_dec_ushort_nv(volatile ushort_t * target)420 atomic_dec_ushort_nv(volatile ushort_t *target)
421 { return (0); }
422
423 /* ARGSUSED */
424 uint32_t
atomic_dec_32_nv(volatile uint32_t * target)425 atomic_dec_32_nv(volatile uint32_t *target)
426 { return (0); }
427
428 /* ARGSUSED */
429 uint_t
atomic_dec_uint_nv(volatile uint_t * target)430 atomic_dec_uint_nv(volatile uint_t *target)
431 { return (0); }
432
433 /* ARGSUSED */
434 ulong_t
atomic_dec_ulong_nv(volatile ulong_t * target)435 atomic_dec_ulong_nv(volatile ulong_t *target)
436 { return (0); }
437
438 /* ARGSUSED */
439 uint64_t
atomic_dec_64_nv(volatile uint64_t * target)440 atomic_dec_64_nv(volatile uint64_t *target)
441 { return (0); }
442
443 /* ARGSUSED */
444 uint8_t
atomic_add_8_nv(volatile uint8_t * target,int8_t value)445 atomic_add_8_nv(volatile uint8_t *target, int8_t value)
446 { return (0); }
447
448 /* ARGSUSED */
449 uchar_t
atomic_add_char_nv(volatile uchar_t * target,signed char value)450 atomic_add_char_nv(volatile uchar_t *target, signed char value)
451 { return (0); }
452
453 /* ARGSUSED */
454 uint16_t
atomic_add_16_nv(volatile uint16_t * target,int16_t delta)455 atomic_add_16_nv(volatile uint16_t *target, int16_t delta)
456 { return (0); }
457
458 /* ARGSUSED */
459 ushort_t
atomic_add_short_nv(volatile ushort_t * target,short value)460 atomic_add_short_nv(volatile ushort_t *target, short value)
461 { return (0); }
462
463 /* ARGSUSED */
464 uint32_t
atomic_add_32_nv(volatile uint32_t * target,int32_t delta)465 atomic_add_32_nv(volatile uint32_t *target, int32_t delta)
466 { return (0); }
467
468 /* ARGSUSED */
469 uint_t
atomic_add_int_nv(volatile uint_t * target,int delta)470 atomic_add_int_nv(volatile uint_t *target, int delta)
471 { return (0); }
472
473 /* ARGSUSED */
474 void *
atomic_add_ptr_nv(volatile void * target,ssize_t value)475 atomic_add_ptr_nv(volatile void *target, ssize_t value)
476 { return (NULL); }
477
478 /* ARGSUSED */
479 ulong_t
atomic_add_long_nv(volatile ulong_t * target,long delta)480 atomic_add_long_nv(volatile ulong_t *target, long delta)
481 { return (0); }
482
483 /* ARGSUSED */
484 uint64_t
atomic_add_64_nv(volatile uint64_t * target,int64_t delta)485 atomic_add_64_nv(volatile uint64_t *target, int64_t delta)
486 { return (0); }
487
488 /* ARGSUSED */
489 uint8_t
atomic_or_8_nv(volatile uint8_t * target,uint8_t value)490 atomic_or_8_nv(volatile uint8_t *target, uint8_t value)
491 { return (0); }
492
493 /* ARGSUSED */
494 uchar_t
atomic_or_uchar_nv(volatile uchar_t * target,uchar_t value)495 atomic_or_uchar_nv(volatile uchar_t *target, uchar_t value)
496 { return (0); }
497
498 /* ARGSUSED */
499 uint16_t
atomic_or_16_nv(volatile uint16_t * target,uint16_t value)500 atomic_or_16_nv(volatile uint16_t *target, uint16_t value)
501 { return (0); }
502
503 /* ARGSUSED */
504 ushort_t
atomic_or_ushort_nv(volatile ushort_t * target,ushort_t value)505 atomic_or_ushort_nv(volatile ushort_t *target, ushort_t value)
506 { return (0); }
507
508 /* ARGSUSED */
509 uint32_t
atomic_or_32_nv(volatile uint32_t * target,uint32_t value)510 atomic_or_32_nv(volatile uint32_t *target, uint32_t value)
511 { return (0); }
512
513 /* ARGSUSED */
514 uint_t
atomic_or_uint_nv(volatile uint_t * target,uint_t value)515 atomic_or_uint_nv(volatile uint_t *target, uint_t value)
516 { return (0); }
517
518 /* ARGSUSED */
519 ulong_t
atomic_or_ulong_nv(volatile ulong_t * target,ulong_t value)520 atomic_or_ulong_nv(volatile ulong_t *target, ulong_t value)
521 { return (0); }
522
523 /* ARGSUSED */
524 uint64_t
atomic_or_64_nv(volatile uint64_t * target,uint64_t value)525 atomic_or_64_nv(volatile uint64_t *target, uint64_t value)
526 { return (0); }
527
528 /* ARGSUSED */
529 uint8_t
atomic_and_8_nv(volatile uint8_t * target,uint8_t value)530 atomic_and_8_nv(volatile uint8_t *target, uint8_t value)
531 { return (0); }
532
533 /* ARGSUSED */
534 uchar_t
atomic_and_uchar_nv(volatile uchar_t * target,uchar_t value)535 atomic_and_uchar_nv(volatile uchar_t *target, uchar_t value)
536 { return (0); }
537
538 /* ARGSUSED */
539 uint16_t
atomic_and_16_nv(volatile uint16_t * target,uint16_t value)540 atomic_and_16_nv(volatile uint16_t *target, uint16_t value)
541 { return (0); }
542
543 /* ARGSUSED */
544 ushort_t
atomic_and_ushort_nv(volatile ushort_t * target,ushort_t value)545 atomic_and_ushort_nv(volatile ushort_t *target, ushort_t value)
546 { return (0); }
547
548 /* ARGSUSED */
549 uint32_t
atomic_and_32_nv(volatile uint32_t * target,uint32_t value)550 atomic_and_32_nv(volatile uint32_t *target, uint32_t value)
551 { return (0); }
552
553 /* ARGSUSED */
554 uint_t
atomic_and_uint_nv(volatile uint_t * target,uint_t value)555 atomic_and_uint_nv(volatile uint_t *target, uint_t value)
556 { return (0); }
557
558 /* ARGSUSED */
559 ulong_t
atomic_and_ulong_nv(volatile ulong_t * target,ulong_t value)560 atomic_and_ulong_nv(volatile ulong_t *target, ulong_t value)
561 { return (0); }
562
563 /* ARGSUSED */
564 uint64_t
atomic_and_64_nv(volatile uint64_t * target,uint64_t value)565 atomic_and_64_nv(volatile uint64_t *target, uint64_t value)
566 { return (0); }
567
568 /* ARGSUSED */
569 uint8_t
atomic_cas_8(volatile uint8_t * target,uint8_t cmp,uint8_t new)570 atomic_cas_8(volatile uint8_t *target, uint8_t cmp, uint8_t new)
571 { return (0); }
572
573 /* ARGSUSED */
574 uchar_t
atomic_cas_uchar(volatile uchar_t * target,uchar_t cmp,uchar_t new)575 atomic_cas_uchar(volatile uchar_t *target, uchar_t cmp, uchar_t new)
576 { return (0); }
577
578 /* ARGSUSED */
579 uint16_t
atomic_cas_16(volatile uint16_t * target,uint16_t cmp,uint16_t new)580 atomic_cas_16(volatile uint16_t *target, uint16_t cmp, uint16_t new)
581 { return (0); }
582
583 /* ARGSUSED */
584 ushort_t
atomic_cas_ushort(volatile ushort_t * target,ushort_t cmp,ushort_t new)585 atomic_cas_ushort(volatile ushort_t *target, ushort_t cmp, ushort_t new)
586 { return (0); }
587
588 /* ARGSUSED */
589 uint32_t
atomic_cas_32(volatile uint32_t * target,uint32_t cmp,uint32_t new)590 atomic_cas_32(volatile uint32_t *target, uint32_t cmp, uint32_t new)
591 { return (0); }
592
593 /* ARGSUSED */
594 uint_t
atomic_cas_uint(volatile uint_t * target,uint_t cmp,uint_t new)595 atomic_cas_uint(volatile uint_t *target, uint_t cmp, uint_t new)
596 { return (0); }
597
598 /* ARGSUSED */
599 ulong_t
atomic_cas_ulong(volatile ulong_t * target,ulong_t cmp,ulong_t new)600 atomic_cas_ulong(volatile ulong_t *target, ulong_t cmp, ulong_t new)
601 { return (0); }
602
603 /* ARGSUSED */
604 uint64_t
atomic_cas_uint64(volatile uint64_t * target,ulong_t cmp,uint64_t new)605 atomic_cas_uint64(volatile uint64_t *target, ulong_t cmp, uint64_t new)
606 { return (0); }
607
608 /* ARGSUSED */
609 void *
atomic_cas_ptr(volatile void * target,void * cmp,void * new)610 atomic_cas_ptr(volatile void *target, void *cmp, void *new)
611 { return (NULL); }
612
613 /* ARGSUSED */
614 uint8_t
atomic_swap_8(volatile uint8_t * target,uint8_t new)615 atomic_swap_8(volatile uint8_t *target, uint8_t new)
616 { return (0); }
617
618 /* ARGSUSED */
619 uchar_t
atomic_swap_char(volatile uchar_t * target,uchar_t new)620 atomic_swap_char(volatile uchar_t *target, uchar_t new)
621 { return (0); }
622
623 /* ARGSUSED */
624 uint16_t
atomic_swap_16(volatile uint16_t * target,uint16_t new)625 atomic_swap_16(volatile uint16_t *target, uint16_t new)
626 { return (0); }
627
628 /* ARGSUSED */
629 ushort_t
atomic_swap_ushort(volatile ushort_t * target,ushort_t new)630 atomic_swap_ushort(volatile ushort_t *target, ushort_t new)
631 { return (0); }
632
633 /* ARGSUSED */
634 uint32_t
atomic_swap_32(volatile uint32_t * target,uint32_t new)635 atomic_swap_32(volatile uint32_t *target, uint32_t new)
636 { return (0); }
637
638 /* ARGSUSED */
639 uint_t
atomic_swap_uint(volatile uint_t * target,uint_t new)640 atomic_swap_uint(volatile uint_t *target, uint_t new)
641 { return (0); }
642
643 /* ARGSUSED */
644 uint64_t
atomic_swap_64(volatile uint64_t * target,uint64_t new)645 atomic_swap_64(volatile uint64_t *target, uint64_t new)
646 { return (0); }
647
648 /* ARGSUSED */
649 void *
atomic_swap_ptr(volatile void * target,void * new)650 atomic_swap_ptr(volatile void *target, void *new)
651 { return (NULL); }
652
653 /* ARGSUSED */
654 ulong_t
atomic_swap_ulong(volatile ulong_t * target,ulong_t new)655 atomic_swap_ulong(volatile ulong_t *target, ulong_t new)
656 { return (0); }
657
658 /* ARGSUSED */
659 int
atomic_set_long_excl(volatile ulong_t * target,uint_t value)660 atomic_set_long_excl(volatile ulong_t *target, uint_t value)
661 { return (0); }
662
663 /* ARGSUSED */
664 int
atomic_clear_long_excl(volatile ulong_t * target,uint_t value)665 atomic_clear_long_excl(volatile ulong_t *target, uint_t value)
666 { return (0); }
667
668 void
fp_zero(void)669 fp_zero(void)
670 {}
671
672 uint64_t
gettick_npt(void)673 gettick_npt(void)
674 { return (0); }
675
676 uint64_t
getstick_npt(void)677 getstick_npt(void)
678 { return (0); }
679