HAMMER 14/many - historical access cleanup, itimes, bug fixes.
[dragonfly.git] / test / cpuperf / cpu_lcmpexg.S
blob2c6cfa8cb029fc668ce217782e9ea978de29582a
1 /* $DragonFly: src/test/cpuperf/cpu_lcmpexg.S,v 1.1 2004/02/09 18:08:54 dillon Exp $ */
3         .globl  test_dummy
4         .globl  test_load
5         .globl  test_str
7         .p2align 5
8 test_dummy:
9         movl    4(%esp),%ecx
10         movl    $0,%edx
11         movl    $1,%eax
12         movl    %ebx,%edx
13         movl    $0,(%ecx)
14         addl    $3,%eax
15         ret
17         .p2align 5
18 test_load:
19         movl    4(%esp),%ecx
20         movl    $0,%edx
21         movl    $1,%eax
22         lock; cmpxchgl  %edx,(%ecx)     /* instruction under test */
23         movl    %ebx,%edx
24         movl    $0,(%ecx)
25         addl    $3,%eax
26         ret
28         .p2align 5
29 test_str:
30         .asciz  "bus-locked cmpxchgl (successful exchange) in pipeline"