From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ@public.gmane.org Subject: [Bug 90887] PhiMovesPass in register allocator broken Date: Sun, 12 Jul 2015 18:41:02 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1154020107==" Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: nouveau.vger.kernel.org --===============1154020107== Content-Type: multipart/alternative; boundary="1436726462.3484e2.21253"; charset="UTF-8" --1436726462.3484e2.21253 Date: Sun, 12 Jul 2015 18:41:02 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" https://bugs.freedesktop.org/show_bug.cgi?id=90887 --- Comment #21 from jr --- Created attachment 117077 --> https://bugs.freedesktop.org/attachment.cgi?id=117077&action=edit Prototype of a more highlevel graph modification api After I realized that the prev/next arrays actually represent *two* linked lists (one for the source and one for the target side) and that these are circular it became easier:-) I have attached a prototype of what I was hinting at in my first post. This is only lightly tested (but seems to work for Lifeless Planet at least) and I'm not sure that Pass is the correct place for the new method to live. It would probably also be nice if edge splitting kept both the outgoing and the incoming list of source and target resp. intact. One improvement of this patch above my original proposal is that it produces the same edge types as the current code. My earlier patch would keep the edge type instead of setting it to FORWARD. While fixing that I was wondering whether TREE is always correct for the edge into the new BB. -- You are receiving this mail because: You are the QA Contact for the bug. You are the assignee for the bug. --1436726462.3484e2.21253 Date: Sun, 12 Jul 2015 18:41:02 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8"

Comment # 21 on bug 90887 from
Created attachment 117077 [details] [review]
Prototype of a more highlevel graph modification api

After I realized that the prev/next arrays actually represent *two* linked
lists (one for the source and one for the target side) and that these are
circular it became easier:-)

I have attached a prototype of what I was hinting at in my first post. This is
only lightly tested (but seems to work for Lifeless Planet at least) and I'm
not sure that Pass is the correct place for the new method to live. It would
probably also be nice if edge splitting kept both the outgoing and the incoming
list of source and target resp. intact.

One improvement of this patch above my original proposal is that it produces
the same edge types as the current code. My earlier patch would keep the edge
type instead of setting it to FORWARD. While fixing that I was wondering
whether TREE is always correct for the edge into the new BB.


You are receiving this mail because:
  • You are the QA Contact for the bug.
  • You are the assignee for the bug.
--1436726462.3484e2.21253-- --===============1154020107== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTm91dmVhdSBt YWlsaW5nIGxpc3QKTm91dmVhdUBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL25vdXZlYXUK --===============1154020107==--