aboutsummaryrefslogtreecommitdiff
path: root/src/pkg/runtime
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2012-04-10 12:51:59 -0400
committerRuss Cox <rsc@golang.org>2012-04-10 12:51:59 -0400
commite530d6a1e00fbc0149b71bca9f940058838c1c44 (patch)
treea49c2b7abd1f1ae0e0c1ec121ac863e708b6fa10 /src/pkg/runtime
parentb72c7e943cfbb7296bb182717642072c0e8efd5c (diff)
downloadgo-e530d6a1e00fbc0149b71bca9f940058838c1c44.tar.xz
6c, 6g, 6l: add MOVQL to make truncation explicit
Without an explicit signal for a truncation, copy propagation will sometimes propagate a 32-bit truncation and end up overwriting uses of the original 64-bit value. The case that arose in practice is in C but I believe that the same could plausibly happen in Go. The main reason we didn't run into the same in Go is that I (perhaps incorrectly?) drop MOVL AX, AX during gins, so the truncation was never generated, so it didn't confuse the optimizer. Fixes #1315. Fixes #3488. R=ken2 CC=golang-dev https://golang.org/cl/6002043
Diffstat (limited to 'src/pkg/runtime')
0 files changed, 0 insertions, 0 deletions