| [!GOOS:linux] skip |
| [!GOARCH:ppc64le] skip |
| |
| env GOPPC64=power8 |
| |
| # Report a missing TOC restoration slot without panicking while rewriting it. |
| ! go build -buildmode=pie -ldflags=-linkmode=internal |
| stderr 'missing toc restoration slot' |
| ! stderr 'panic:' |
| |
| -- go.mod -- |
| module main |
| |
| go 1.20 |
| -- main.go -- |
| package main |
| |
| //go:cgo_import_dynamic libc_getpid getpid "libc.so.6" |
| |
| func getpid() int64 |
| |
| func main() { |
| println(getpid()) |
| } |
| -- main_ppc64le.s -- |
| #include "textflag.h" |
| |
| TEXT ·getpid(SB), NOSPLIT|NOFRAME, $0-8 |
| CALL libc_getpid(SB) |