@@ -662,31 +662,31 @@ func initIntrinsics(cfg *intrinsicBuildConfig) {
662662 s .vars [memVar ] = p1
663663 return p0
664664 },
665- sys .AMD64 , sys .Loong64 )
665+ sys .AMD64 , sys .Loong64 , sys . RISCV64 )
666666 addF ("internal/runtime/atomic" , "And32" ,
667667 func (s * state , n * ir.CallExpr , args []* ssa.Value ) * ssa.Value {
668668 v := s .newValue3 (ssa .OpAtomicAnd32value , types .NewTuple (types .Types [types .TUINT32 ], types .TypeMem ), args [0 ], args [1 ], s .mem ())
669669 p0 , p1 := s .split (v )
670670 s .vars [memVar ] = p1
671671 return p0
672672 },
673- sys .AMD64 , sys .Loong64 )
673+ sys .AMD64 , sys .Loong64 , sys . RISCV64 )
674674 addF ("internal/runtime/atomic" , "Or64" ,
675675 func (s * state , n * ir.CallExpr , args []* ssa.Value ) * ssa.Value {
676676 v := s .newValue3 (ssa .OpAtomicOr64value , types .NewTuple (types .Types [types .TUINT64 ], types .TypeMem ), args [0 ], args [1 ], s .mem ())
677677 p0 , p1 := s .split (v )
678678 s .vars [memVar ] = p1
679679 return p0
680680 },
681- sys .AMD64 , sys .Loong64 )
681+ sys .AMD64 , sys .Loong64 , sys . RISCV64 )
682682 addF ("internal/runtime/atomic" , "Or32" ,
683683 func (s * state , n * ir.CallExpr , args []* ssa.Value ) * ssa.Value {
684684 v := s .newValue3 (ssa .OpAtomicOr32value , types .NewTuple (types .Types [types .TUINT32 ], types .TypeMem ), args [0 ], args [1 ], s .mem ())
685685 p0 , p1 := s .split (v )
686686 s .vars [memVar ] = p1
687687 return p0
688688 },
689- sys .AMD64 , sys .Loong64 )
689+ sys .AMD64 , sys .Loong64 , sys . RISCV64 )
690690
691691 // Aliases for atomic load operations
692692 alias ("internal/runtime/atomic" , "Loadint32" , "internal/runtime/atomic" , "Load" , all ... )
@@ -1333,16 +1333,16 @@ func initIntrinsics(cfg *intrinsicBuildConfig) {
13331333 alias ("sync/atomic" , "AddUintptr" , "internal/runtime/atomic" , "Xadd" , p4 ... )
13341334 alias ("sync/atomic" , "AddUintptr" , "internal/runtime/atomic" , "Xadd64" , p8 ... )
13351335
1336- alias ("sync/atomic" , "AndInt32" , "internal/runtime/atomic" , "And32" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 )
1337- alias ("sync/atomic" , "AndUint32" , "internal/runtime/atomic" , "And32" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 )
1338- alias ("sync/atomic" , "AndInt64" , "internal/runtime/atomic" , "And64" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 )
1339- alias ("sync/atomic" , "AndUint64" , "internal/runtime/atomic" , "And64" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 )
1340- alias ("sync/atomic" , "AndUintptr" , "internal/runtime/atomic" , "And64" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 )
1341- alias ("sync/atomic" , "OrInt32" , "internal/runtime/atomic" , "Or32" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 )
1342- alias ("sync/atomic" , "OrUint32" , "internal/runtime/atomic" , "Or32" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 )
1343- alias ("sync/atomic" , "OrInt64" , "internal/runtime/atomic" , "Or64" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 )
1344- alias ("sync/atomic" , "OrUint64" , "internal/runtime/atomic" , "Or64" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 )
1345- alias ("sync/atomic" , "OrUintptr" , "internal/runtime/atomic" , "Or64" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 )
1336+ alias ("sync/atomic" , "AndInt32" , "internal/runtime/atomic" , "And32" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 , sys . ArchRISCV64 )
1337+ alias ("sync/atomic" , "AndUint32" , "internal/runtime/atomic" , "And32" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 , sys . ArchRISCV64 )
1338+ alias ("sync/atomic" , "AndInt64" , "internal/runtime/atomic" , "And64" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 , sys . ArchRISCV64 )
1339+ alias ("sync/atomic" , "AndUint64" , "internal/runtime/atomic" , "And64" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 , sys . ArchRISCV64 )
1340+ alias ("sync/atomic" , "AndUintptr" , "internal/runtime/atomic" , "And64" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 , sys . ArchRISCV64 )
1341+ alias ("sync/atomic" , "OrInt32" , "internal/runtime/atomic" , "Or32" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 , sys . ArchRISCV64 )
1342+ alias ("sync/atomic" , "OrUint32" , "internal/runtime/atomic" , "Or32" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 , sys . ArchRISCV64 )
1343+ alias ("sync/atomic" , "OrInt64" , "internal/runtime/atomic" , "Or64" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 , sys . ArchRISCV64 )
1344+ alias ("sync/atomic" , "OrUint64" , "internal/runtime/atomic" , "Or64" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 , sys . ArchRISCV64 )
1345+ alias ("sync/atomic" , "OrUintptr" , "internal/runtime/atomic" , "Or64" , sys .ArchARM64 , sys .ArchAMD64 , sys .ArchLoong64 , sys . ArchRISCV64 )
13461346
13471347 /******** math/big ********/
13481348 alias ("math/big" , "mulWW" , "math/bits" , "Mul64" , p8 ... )
0 commit comments