Files
llgo/compiler/cl/_testrt/mask/in.go

43 lines
692 B
Go
Raw Normal View History

2024-05-16 10:20:02 +08:00
package main
func main() {
println(mask(1))
2024-05-16 15:09:00 +08:00
println(mask_shl(127, 5))
println(mask_shl8(127, 5))
println(mask_shl8u(127, 5))
println(mask_shl8(127, 16))
println(mask_shl8u(127, 16))
println(mask_shr(127, 5))
println(mask_shr8(127, 5))
println(mask_shr8u(127, 5))
println(mask_shr8(127, 16))
2024-05-16 10:20:02 +08:00
}
2024-05-16 15:09:00 +08:00
2024-05-16 10:20:02 +08:00
func mask(x int8) int32 {
return int32(x) << 31 >> 31
}
2024-05-16 15:09:00 +08:00
func mask_shl8(x int8, y int) int8 {
return x << y
}
func mask_shl8u(x uint8, y int) uint8 {
return x << y
}
func mask_shl(x int, y int) int {
return x << y
}
func mask_shr8(x int8, y int) int8 {
return x >> y
}
func mask_shr8u(x uint8, y int) uint8 {
return x >> y
}
func mask_shr(x int, y int) int {
return x >> y
}