linux: reduce binary size in the common case

This commit changes the runtime.putchar implementation to directly call
the `write` system call. This reduces the binary size by around 2.7kB.
Этот коммит содержится в:
Ayke van Laethem 2021-11-04 20:35:13 +01:00 коммит произвёл Ron Evans
родитель cceb655874
коммит 670fcf59d8

Просмотреть файл

@ -7,8 +7,8 @@ import (
"unsafe" "unsafe"
) )
//export putchar //export write
func _putchar(c int) int func libc_write(fd int32, buf unsafe.Pointer, count uint) int
//export usleep //export usleep
func usleep(usec uint) int func usleep(usec uint) int
@ -145,7 +145,8 @@ func syscall_runtime_envs() []string {
} }
func putchar(c byte) { func putchar(c byte) {
_putchar(int(c)) buf := [1]byte{c}
libc_write(1, unsafe.Pointer(&buf[0]), 1)
} }
func ticksToNanoseconds(ticks timeUnit) int64 { func ticksToNanoseconds(ticks timeUnit) int64 {