Skip to content

Commit

Permalink
resolved comments
Browse files Browse the repository at this point in the history
  • Loading branch information
prabhavdogra committed Mar 5, 2025
1 parent 0c50447 commit 60e20ca
Show file tree
Hide file tree
Showing 10 changed files with 133 additions and 133 deletions.
37 changes: 19 additions & 18 deletions src/internal/runtime/atomic/atomic_386.s
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@
#include "textflag.h"
#include "funcdata.h"

// bool Cas(int32 *val, int32 old, int32 new)
// func Cas(val *int32, old int32, new int32) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// }else
// return 0;
// }
// if *val == old {
// *val = new
// return true
// } else {
// return false
// }
TEXT ·Cas(SB), NOSPLIT, $0-13
MOVL ptr+0(FP), BX
MOVL old+4(FP), AX
Expand Down Expand Up @@ -64,13 +64,13 @@ TEXT ·Xaddint32(SB), NOSPLIT, $0-12
TEXT ·Xaddint64(SB), NOSPLIT, $0-20
JMP ·Xadd64(SB)

// bool ·Cas64(uint64 *val, uint64 old, uint64 new)
// func Cas64(val *uint64, old uint64, new uint64) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// if *val == old {
// *val = new
// return true
// } else {
// return 0;
// return false
// }
TEXT ·Cas64(SB), NOSPLIT, $0-21
NO_LOCAL_POINTERS
Expand All @@ -87,13 +87,14 @@ TEXT ·Cas64(SB), NOSPLIT, $0-21
SETEQ ret+20(FP)
RET

// bool Casp1(void **p, void *old, void *new)
// func Casp1(p *unsafe.Pointer, old, new unsafe.Pointer) bool
// Atomically:
// if(*p == old){
// *p = new;
// return 1;
// }else
// return 0;
// if *p == old {
// *p = new
// return true
// } else {
// return false
// }
TEXT ·Casp1(SB), NOSPLIT, $0-13
MOVL ptr+0(FP), BX
MOVL old+4(FP), AX
Expand Down
33 changes: 16 additions & 17 deletions src/internal/runtime/atomic/atomic_amd64.s
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,14 @@ TEXT ·Loadint32(SB), NOSPLIT, $0-12
TEXT ·Loadint64(SB), NOSPLIT, $0-16
JMP ·Load64(SB)

// bool Cas(int32 *val, int32 old, int32 new)
// func Cas(val *int32, old, new int32) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// if *val == old {
// *val = new
// return true
// } else
// return 0;
// }
// return false
// }
TEXT ·Cas(SB),NOSPLIT,$0-17
MOVQ ptr+0(FP), BX
MOVL old+8(FP), AX
Expand All @@ -36,13 +36,13 @@ TEXT ·Cas(SB),NOSPLIT,$0-17
SETEQ ret+16(FP)
RET

// bool ·Cas64(uint64 *val, uint64 old, uint64 new)
// func Cas64(val *uint64, old, new uint64) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// if *val == old {
// *val = new
// return true
// } else {
// return 0;
// return false
// }
TEXT ·Cas64(SB), NOSPLIT, $0-25
MOVQ ptr+0(FP), BX
Expand All @@ -53,14 +53,13 @@ TEXT ·Cas64(SB), NOSPLIT, $0-25
SETEQ ret+24(FP)
RET

// bool Casp1(void **val, void *old, void *new)
// func Casp1(val *unsafe.Pointer, old, new unsafe.Pointer) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// if *val == old {
// *val = new
// return true
// } else
// return 0;
// }
// return false
TEXT ·Casp1(SB), NOSPLIT, $0-25
MOVQ ptr+0(FP), BX
MOVQ old+8(FP), AX
Expand Down
14 changes: 7 additions & 7 deletions src/internal/runtime/atomic/atomic_arm.s
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@
#include "textflag.h"
#include "funcdata.h"

// bool armcas(int32 *val, int32 old, int32 new)
// func armcas(val *int32, old, new int32) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// }else
// return 0;
// }
// if *val == old {
// *val = new
// return true
// } else
// return false
// }
//
// To implement ·cas in sys_$GOOS_arm.s
// using the native instructions, use:
Expand Down
28 changes: 14 additions & 14 deletions src/internal/runtime/atomic/atomic_arm64.s
Original file line number Diff line number Diff line change
Expand Up @@ -192,14 +192,14 @@ load_store_loop:
RET
#endif

// bool Cas(uint32 *ptr, uint32 old, uint32 new)
// func Cas(val *uint32, old, new uint32) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// } else
// return 0;
// }
// if *val == old {
// *val = new
// return true
// } else {
// return false
// }
TEXT ·Cas(SB), NOSPLIT, $0-17
MOVD ptr+0(FP), R0
MOVW old+8(FP), R1
Expand Down Expand Up @@ -227,14 +227,14 @@ ok:
RET
#endif

// bool ·Cas64(uint64 *ptr, uint64 old, uint64 new)
// func Cas64(val *uint64, old, new uint64) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// } else {
// return 0;
// }
// if *val == old {
// *val = new
// return true
// } else {
// return false
// }
TEXT ·Cas64(SB), NOSPLIT, $0-25
MOVD ptr+0(FP), R0
MOVD old+8(FP), R1
Expand Down
38 changes: 19 additions & 19 deletions src/internal/runtime/atomic/atomic_loong64.s
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@
#include "go_asm.h"
#include "textflag.h"

// bool cas(uint32 *ptr, uint32 old, uint32 new)
// func Cas(ptr *int32, old, new int32) bool
// Atomically:
// if(*ptr == old){
// *ptr = new;
// return 1;
// } else
// return 0;
// }
// if *ptr == old {
// *ptr = new
// return true
// } else {
// return false
// }
TEXT ·Cas(SB), NOSPLIT, $0-17
MOVV ptr+0(FP), R4
MOVW old+8(FP), R5
Expand Down Expand Up @@ -46,13 +46,13 @@ cas_fail1:
MOVV $0, R4
JMP -4(PC)

// bool cas64(uint64 *ptr, uint64 old, uint64 new)
// func Cas64(ptr *uint64, old, new uint64) bool
// Atomically:
// if(*ptr == old){
// *ptr = new;
// return 1;
// if *ptr == old {
// *ptr = new
// return true
// } else {
// return 0;
// return false
// }
TEXT ·Cas64(SB), NOSPLIT, $0-25
MOVV ptr+0(FP), R4
Expand Down Expand Up @@ -120,14 +120,14 @@ TEXT ·Xaddint32(SB),NOSPLIT,$0-20
TEXT ·Xaddint64(SB), NOSPLIT, $0-24
JMP ·Xadd64(SB)

// bool casp(void **val, void *old, void *new)
// func Casp(val *unsafe.Pointer, old, new unsafe.Pointer) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// } else
// return 0;
// }
// if *val == old {
// *val = new
// return true
// } else {
// return false
// }
TEXT ·Casp1(SB), NOSPLIT, $0-25
JMP ·Cas64(SB)

Expand Down
38 changes: 19 additions & 19 deletions src/internal/runtime/atomic/atomic_mips64x.s
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@

#define SYNC WORD $0xf

// bool cas(uint32 *ptr, uint32 old, uint32 new)
// func cas(val *uint32, old, new uint32) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// } else
// return 0;
// }
// if *val == old {
// *val = new
// return true
// } else {
// return false
// }
TEXT ·Cas(SB), NOSPLIT, $0-17
MOVV ptr+0(FP), R1
MOVW old+8(FP), R2
Expand All @@ -35,13 +35,13 @@ cas_fail:
MOVV $0, R1
JMP -4(PC)

// bool cas64(uint64 *ptr, uint64 old, uint64 new)
// func Cas64(val *uint64, old, new uint64) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// if *val == old {
// *val = new
// return true
// } else {
// return 0;
// return false
// }
TEXT ·Cas64(SB), NOSPLIT, $0-25
MOVV ptr+0(FP), R1
Expand Down Expand Up @@ -104,14 +104,14 @@ TEXT ·Xaddint32(SB), NOSPLIT, $0-20
TEXT ·Xaddint64(SB), NOSPLIT, $0-24
JMP ·Xadd64(SB)

// bool casp(void **val, void *old, void *new)
// func Casp1(val *unsafe.Pointer, old, new unsafe.Pointer) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// } else
// return 0;
// }
// if *val == old {
// *val = new
// return true
// } else {
// return false
// }
TEXT ·Casp1(SB), NOSPLIT, $0-25
JMP ·Cas64(SB)

Expand Down
12 changes: 6 additions & 6 deletions src/internal/runtime/atomic/atomic_mipsx.s
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@

#include "textflag.h"

// bool Cas(int32 *val, int32 old, int32 new)
// func Cas(val *int32, old, new int32) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// if *val == old {
// *val = new
// return true
// } else
// return 0;
// }
// return false
// }
TEXT ·Cas(SB),NOSPLIT,$0-13
MOVW ptr+0(FP), R1
MOVW old+4(FP), R2
Expand Down
38 changes: 19 additions & 19 deletions src/internal/runtime/atomic/atomic_ppc64x.s
Original file line number Diff line number Diff line change
Expand Up @@ -78,14 +78,14 @@ TEXT ·LoadAcq64(SB),NOSPLIT|NOFRAME,$-8-16
MOVD R3, ret+8(FP)
RET

// bool cas(uint32 *ptr, uint32 old, uint32 new)
// func Cas(val *int32, old, new int32) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// } else
// return 0;
// }
// if *val == old {
// *val = new
// return true
// } else {
// return false
// }
TEXT ·Cas(SB), NOSPLIT, $0-17
MOVD ptr+0(FP), R3
MOVWZ old+8(FP), R4
Expand All @@ -106,13 +106,13 @@ cas_fail:
MOVB R0, ret+16(FP)
RET

// bool ·Cas64(uint64 *ptr, uint64 old, uint64 new)
// func Cas64(val *uint64, old, new uint64) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// if *val == old {
// *val = new
// return true
// } else {
// return 0;
// return false
// }
TEXT ·Cas64(SB), NOSPLIT, $0-25
MOVD ptr+0(FP), R3
Expand Down Expand Up @@ -197,14 +197,14 @@ TEXT ·Xaddint32(SB), NOSPLIT, $0-20
TEXT ·Xaddint64(SB), NOSPLIT, $0-24
BR ·Xadd64(SB)

// bool casp(void **val, void *old, void *new)
// func Casp1(val *unsafe.Pointer, old, new unsafe.Pointer) bool
// Atomically:
// if(*val == old){
// *val = new;
// return 1;
// } else
// return 0;
// }
// if *val == old {
// *val = new
// return true
// } else {
// return false
// }
TEXT ·Casp1(SB), NOSPLIT, $0-25
BR ·Cas64(SB)

Expand Down
Loading

0 comments on commit 60e20ca

Please sign in to comment.