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

Issue 6248068: code review 6248068: cmd/6g: avoid MOVSD between registers (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
12 years, 7 months ago by rsc
Modified:
12 years, 7 months ago
Reviewers:
ken3
CC:
ken2, golang-dev
Visibility:
Public.

Description

cmd/6g: avoid MOVSD between registers MOVSD only copies the low half of the packed register pair, while MOVAPD copies both halves. I assume the internal register renaming works better with the latter, since it makes our code run 25% faster. Before: mandelbrot 16000 gcc -O2 mandelbrot.c 28.44u 0.00s 28.45r gc mandelbrot 44.12u 0.00s 44.13r gc_B mandelbrot 44.17u 0.01s 44.19r After: mandelbrot 16000 gcc -O2 mandelbrot.c 28.22u 0.00s 28.23r gc mandelbrot 32.81u 0.00s 32.82r gc_B mandelbrot 32.82u 0.00s 32.83r

Patch Set 1 #

Patch Set 2 : diff -r 4ec6d34af4e5 https://go.googlecode.com/hg/ #

Patch Set 3 : diff -r b19b4e1b7ade https://go.googlecode.com/hg/ #

Unified diffs Side-by-side diffs Delta from patch set Stats (+11 lines, -0 lines) Patch
M src/cmd/6g/peep.c View 1 2 chunks +11 lines, -0 lines 0 comments Download

Messages

Total messages: 3
rsc
Hello ken2 (cc: golang-dev@googlegroups.com), I'd like you to review this change to https://go.googlecode.com/hg/
12 years, 7 months ago (2012-05-30 18:41:17 UTC) #1
rsc
*** Submitted as http://code.google.com/p/go/source/detail?r=dcbee6d95561 *** cmd/6g: avoid MOVSD between registers MOVSD only copies the low ...
12 years, 7 months ago (2012-05-30 18:41:21 UTC) #2
ken3
12 years, 7 months ago (2012-05-30 20:48:40 UTC) #3
lgtm
Sign in to reply to this message.

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