Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(20)

Issue 134390043: code review 134390043: runtime: refactor/fix asmcgocall/asmcgocall_errno (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
10 years, 8 months ago by rsc
Modified:
10 years, 8 months ago
Reviewers:
brainman
CC:
iant, golang-codereviews
Visibility:
Public.

Description

runtime: refactor/fix asmcgocall/asmcgocall_errno Instead of making asmcgocall call asmcgocall_errno, make both load args into registers and call a shared assembly function. On amd64, this costs 1 word in the asmcgocall_errno path but saves 3 words in the asmcgocall path, and the latter is what happens on critical nosplit paths on Windows. On arm, this fixes build failures: asmcgocall was writing the arguments for asmcgocall_errno into the wrong place on the stack. Passing them in registers avoids the decision entirely. On 386, this isn't really needed, since the nosplit paths have twice as many words to work with, but do it for consistency. Update issue 8635 Fixes arm build (except GOARM=5).

Patch Set 1 #

Patch Set 2 : diff -r 23e48d4f30661630cff46dd356ca9ea3916365c5 https://code.google.com/p/go/ #

Patch Set 3 : diff -r 23e48d4f30661630cff46dd356ca9ea3916365c5 https://code.google.com/p/go/ #

Patch Set 4 : diff -r 61ca284cc8aabe27a1224d6841a2e66c938e73dc https://code.google.com/p/go/ #

Unified diffs Side-by-side diffs Delta from patch set Stats (+32 lines, -18 lines) Patch
M misc/cgo/test/callback.go View 1 2 2 chunks +7 lines, -2 lines 0 comments Download
M src/pkg/runtime/asm_386.s View 1 2 2 chunks +8 lines, -5 lines 0 comments Download
M src/pkg/runtime/asm_amd64.s View 1 2 chunks +8 lines, -5 lines 0 comments Download
M src/pkg/runtime/asm_arm.s View 1 2 2 chunks +9 lines, -6 lines 0 comments Download

Messages

Total messages: 3
rsc
Hello iant (cc: golang-codereviews@googlegroups.com), I'd like you to review this change to https://code.google.com/p/go/
10 years, 8 months ago (2014-09-04 04:01:52 UTC) #1
rsc
*** Submitted as https://code.google.com/p/go/source/detail?r=86debf86246b *** runtime: refactor/fix asmcgocall/asmcgocall_errno Instead of making asmcgocall call asmcgocall_errno, make ...
10 years, 8 months ago (2014-09-04 04:02:00 UTC) #2
brainman
10 years, 8 months ago (2014-09-04 04:23:57 UTC) #3
Message was sent while issue was closed.
LGTM
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b