* [Bug 91124] Civilization V (in Wine) has rendering issues: text missing, menu bar corrupted
[not found] ` <bug-91124-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
@ 2015-06-30 8:19 ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2015-07-01 6:10 ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ @ 2015-06-30 8:19 UTC (permalink / raw)
To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW
[-- Attachment #1.1: Type: text/plain, Size: 1840 bytes --]
https://bugs.freedesktop.org/show_bug.cgi?id=91124
--- Comment #1 from Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org> ---
Created attachment 116817
--> https://bugs.freedesktop.org/attachment.cgi?id=116817&action=edit
shader that triggers bug
The attached shader appears to trigger an issue in the FlatteningPass.
Specifically the resulting code looks like
00000198: a0036003 00000000 joinat 0x1b0
000001a0: b00005fd 600187c8 set $c0 # ge f32 $r2 $r0
000001a8: 1000020d 0403c100 (e $c0) mov b32 $r3 $r1
000001b0: 10000801 2400c780 B ld $r0 b32 c0[0x10]
That joinat shouldn't be there at all. This is a bit tricky, since pre-RA, the
code looks like
60: joinat BB:5 (0)
61: set u8 %c259 ge f32 %r215 %r255 (0)
62: eq %c259 bra BB:4 (0)
BB:3 (1 instructions) - idom = BB:12, df = { BB:5 }
-> BB:5 (forward)
63: bra BB:5 (0)
BB:4 (1 instructions) - idom = BB:12, df = { BB:5 }
-> BB:5 (forward)
64: bra BB:5 (0)
BB:5 (14 instructions) - idom = BB:12, df = { BB:10 }
-> BB:7 (tree)
-> BB:6 (tree)
65: phi u32 %r261 %r254 %r252 (0)
66: join (0)
and the (e $c0) mov ... is actually generated from the phi node (since it
creates constraint moves into BB:3/4. Post-RA but pre-FlatteningPass, this
looks like
64: joinat BB:5 (0)
65: set u8 $c0 ge f32 $r2 $r0 (0)
66: eq $c0 bra BB:4 (0)
BB:3 (1 instructions) - idom = BB:12, df = { BB:5 }
-> BB:5 (forward)
67: bra BB:5 (0)
BB:4 (2 instructions) - idom = BB:12, df = { BB:5 }
-> BB:5 (forward)
68: mov u32 $r3 $r1 (0)
69: bra BB:5 (0)
BB:5 (13 instructions) - idom = BB:12, df = { BB:10 }
-> BB:7 (tree)
-> BB:6 (tree)
70: join (0)
Will have to understand the FlatteningPass better before I can figure out
what's wrong though.
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
[-- Attachment #1.2: Type: text/html, Size: 2822 bytes --]
[-- Attachment #2: Type: text/plain, Size: 153 bytes --]
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau
^ permalink raw reply [flat|nested] 5+ messages in thread* [Bug 91124] Civilization V (in Wine) has rendering issues: text missing, menu bar corrupted
[not found] ` <bug-91124-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
2015-06-30 8:19 ` [Bug 91124] " bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
@ 2015-07-01 6:10 ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2015-07-01 6:47 ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2015-07-01 7:18 ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
3 siblings, 0 replies; 5+ messages in thread
From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ @ 2015-07-01 6:10 UTC (permalink / raw)
To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW
[-- Attachment #1.1: Type: text/plain, Size: 822 bytes --]
https://bugs.freedesktop.org/show_bug.cgi?id=91124
--- Comment #2 from Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org> ---
I believe the following patch resolves the issue:
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_bb.cpp
b/src/gallium/drivers/nouveau/codegen/nv50_ir_bb.cpp
index 51b9225..fa8ee07 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_bb.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_bb.cpp
@@ -332,6 +332,9 @@ BasicBlock::splitBefore(Instruction *insn, bool attach)
BasicBlock *bb = new BasicBlock(func);
assert(!insn || insn->op != OP_PHI);
+ bb->joinAt = joinAt;
+ joinAt = NULL;
+
splitCommon(insn, bb, attach);
return bb;
}
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
[-- Attachment #1.2: Type: text/html, Size: 1661 bytes --]
[-- Attachment #2: Type: text/plain, Size: 153 bytes --]
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau
^ permalink raw reply related [flat|nested] 5+ messages in thread* [Bug 91124] Civilization V (in Wine) has rendering issues: text missing, menu bar corrupted
[not found] ` <bug-91124-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
2015-06-30 8:19 ` [Bug 91124] " bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2015-07-01 6:10 ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
@ 2015-07-01 6:47 ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2015-07-01 7:18 ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
3 siblings, 0 replies; 5+ messages in thread
From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ @ 2015-07-01 6:47 UTC (permalink / raw)
To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW
[-- Attachment #1.1: Type: text/plain, Size: 1015 bytes --]
https://bugs.freedesktop.org/show_bug.cgi?id=91124
--- Comment #3 from Béla Gyebrószki <gyebro69-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> ---
(In reply to Ilia Mirkin from comment #2)
> I believe the following patch resolves the issue:
>
> diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_bb.cpp
> b/src/gallium/drivers/nouveau/codegen/nv50_ir_bb.cpp
> index 51b9225..fa8ee07 100644
> --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_bb.cpp
> +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_bb.cpp
> @@ -332,6 +332,9 @@ BasicBlock::splitBefore(Instruction *insn, bool attach)
> BasicBlock *bb = new BasicBlock(func);
> assert(!insn || insn->op != OP_PHI);
>
> + bb->joinAt = joinAt;
> + joinAt = NULL;
> +
> splitCommon(insn, bb, attach);
> return bb;
> }
The patch works very well, it fixes the reported issues in the game, thank you.
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
[-- Attachment #1.2: Type: text/html, Size: 1993 bytes --]
[-- Attachment #2: Type: text/plain, Size: 153 bytes --]
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau
^ permalink raw reply [flat|nested] 5+ messages in thread* [Bug 91124] Civilization V (in Wine) has rendering issues: text missing, menu bar corrupted
[not found] ` <bug-91124-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
` (2 preceding siblings ...)
2015-07-01 6:47 ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
@ 2015-07-01 7:18 ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
3 siblings, 0 replies; 5+ messages in thread
From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ @ 2015-07-01 7:18 UTC (permalink / raw)
To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW
[-- Attachment #1.1: Type: text/plain, Size: 802 bytes --]
https://bugs.freedesktop.org/show_bug.cgi?id=91124
Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #4 from Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org> ---
Pushed out as
commit 5dcb28c3d26828ed1b0e2bd5a0589c5baab04b85
Author: Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org>
Date: Wed Jul 1 02:11:39 2015 -0400
nv50/ir: copy joinAt when splitting both before and after
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
[-- Attachment #1.2: Type: text/html, Size: 2349 bytes --]
[-- Attachment #2: Type: text/plain, Size: 153 bytes --]
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau
^ permalink raw reply [flat|nested] 5+ messages in thread