]> Cypherpunks repositories - gostls13.git/commit
[release-branch.go1.19] cmd/compile/internal/typebits: relax alignment check
authorCuong Manh Le <cuong.manhle.vn@gmail.com>
Fri, 16 Sep 2022 03:41:15 +0000 (10:41 +0700)
committerCherry Mui <cherryyz@google.com>
Wed, 21 Sep 2022 22:25:31 +0000 (22:25 +0000)
commit2614985ef7d252004c8bd2edddb7314446964874
tree8c5fcdc330cc3501910b371d1ee8b3aac5c32abe
parent3747bb2482b7ffccd7eafcf3be1df2de97427c1c
[release-branch.go1.19] cmd/compile/internal/typebits: relax alignment check

Now we have 8-byte alignment types on 32-bit system, so in some rare
case, e.g, generated wrapper for embedded interface, the function
argument may need more than 4 byte alignment. We could pad somehow, but
this is a rare case which makes it hard to ensure that we've got it right.

So relaxing the check for argument and return value region of the stack.

Fixes #55152

Change-Id: I34986e17a920254392a39439ad3dcb323da2ea8d
Reviewed-on: https://go-review.googlesource.com/c/go/+/431098
Reviewed-by: Keith Randall <khr@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Run-TryBot: Cuong Manh Le <cuong.manhle.vn@gmail.com>
Auto-Submit: Keith Randall <khr@golang.org>
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-on: https://go-review.googlesource.com/c/go/+/431895
src/cmd/compile/internal/liveness/plive.go
src/cmd/compile/internal/typebits/typebits.go
test/fixedbugs/issue54991.go [new file with mode: 0644]