Displaying 19 results from an estimated 19 matches for "getfirst".
Did you mean:
get_first
2016 May 30
1
[Bug 96274] New: [NVC0] Failure when compiling compute shader: Assertion `bb->getFirst()->serial <= bb->getExit()->serial' failed
https://bugs.freedesktop.org/show_bug.cgi?id=96274
Bug ID: 96274
Summary: [NVC0] Failure when compiling compute shader:
Assertion `bb->getFirst()->serial <=
bb->getExit()->serial' failed
Product: Mesa
Version: git
Hardware: Other
OS: All
Status: NEW
Severity: normal
Priority: medium
Component: Drivers/DRI/nouveau...
2007 Mar 18
0
[895] branches/wxruby2/wxwidgets_282/swig/classes: Fix Window::GetChildren method for changes in 2.6 -> 2.8 API
...rrect ruby wrappers
</span><del>-%typemap(out) wxList& {
</del><ins>+%typemap(out) wxWindowList& {
</ins><span class="cx"> $result = rb_ary_new();
</span><span class="cx">
</span><del>- wxNode *node = $1->GetFirst();
</del><ins>+ wxWindowListNode *node = $1->GetFirst();
</ins><span class="cx"> while (node)
</span><span class="cx"> {
</span><span class="cx"> wxObject *obj = node->GetData();
</span></span>&...
2015 Jan 13
3
nv50/ir: Implement short notation for MAD V2
V2: clarify code, commit msgs, add comments. Drop code to was supposed to
make register assignment prefer SDST == SRC2 (patch 2) for now, because it
didn't quite do what I intended.
2015 Jan 23
3
[PATCH 1/2] nv50/ir: Add support for MAD short+IMM notation
Add emission rules for negative and saturate flags for MAD 4-byte opcodes,
and get rid of constraints. Short MAD has a very specific SDST == SSRC2
requirement, and since MAD IMM is short notation + 4-byte immediate, don't
have the compiler create MAD IMM instructions yet.
V2: Document MAD as supported short form
Signed-off-by: Roy Spliet <rspliet at eclipso.eu>
---
2015 Jan 11
0
[PATCH 3/3] nv50/ir: Fold IMM into MAD
...Does NVC0+ have other situations where this pass makes sense?
+class NV50PostRaConstantFolding : public Pass
+{
+private:
+ virtual bool visit(BasicBlock *);
+};
+
+bool
+NV50PostRaConstantFolding::visit(BasicBlock *bb)
+{
+ Value *vtmp;
+ Instruction *def;
+
+ for (Instruction *i = bb->getFirst(); i; i = i->next) {
+ switch (i->op) {
+ case OP_MAD:
+ if(i->def(0).getFile() == FILE_GPR &&
+ i->src(0).getFile() == FILE_GPR &&
+ i->src(1).getFile() == FILE_GPR &&
+ i->src(2).getFile() == FIL...
2015 Jan 13
0
[PATCH 2/3] nv50/ir: Fold IMM into MAD
...Does NVC0+ have other situations where this pass makes sense?
+class NV50PostRaConstantFolding : public Pass
+{
+private:
+ virtual bool visit(BasicBlock *);
+};
+
+bool
+NV50PostRaConstantFolding::visit(BasicBlock *bb)
+{
+ Value *vtmp;
+ Instruction *def;
+
+ for (Instruction *i = bb->getFirst(); i; i = i->next) {
+ switch (i->op) {
+ case OP_MAD:
+ if(i->def(0).getFile() != FILE_GPR ||
+ i->src(0).getFile() != FILE_GPR ||
+ i->src(1).getFile() != FILE_GPR ||
+ i->src(2).getFile() != FILE_GPR ||
+ i->getDe...
2015 Jan 23
0
[PATCH 2/2] nv50/ir: Fold IMM into MAD
...Does NVC0+ have other situations where this pass makes sense?
+class NV50PostRaConstantFolding : public Pass
+{
+private:
+ virtual bool visit(BasicBlock *);
+};
+
+bool
+NV50PostRaConstantFolding::visit(BasicBlock *bb)
+{
+ Value *vtmp;
+ Instruction *def;
+
+ for (Instruction *i = bb->getFirst(); i; i = i->next) {
+ switch (i->op) {
+ case OP_MAD:
+ if (i->def(0).getFile() != FILE_GPR ||
+ i->src(0).getFile() != FILE_GPR ||
+ i->src(1).getFile() != FILE_GPR ||
+ i->src(2).getFile() != FILE_GPR ||
+ i->...
2015 Feb 06
0
[PATCH 3/3] nv50/ir: Fold IMM into MAD
...Does NVC0+ have other situations where this pass makes sense?
+class NV50PostRaConstantFolding : public Pass
+{
+private:
+ virtual bool visit(BasicBlock *);
+};
+
+bool
+NV50PostRaConstantFolding::visit(BasicBlock *bb)
+{
+ Value *vtmp;
+ Instruction *def;
+
+ for (Instruction *i = bb->getFirst(); i; i = i->next) {
+ switch (i->op) {
+ case OP_MAD:
+ if (i->def(0).getFile() != FILE_GPR ||
+ i->src(0).getFile() != FILE_GPR ||
+ i->src(1).getFile() != FILE_GPR ||
+ i->src(2).getFile() != FILE_GPR ||
+ i->...
2007 Jul 21
0
[1135] trunk/wxruby2/swig/mark_free_impl.i: Convert from DOS to Unix newlines
...ToWindow(wxSizer *wx_sizer, VALUE rb_sizer)
-{
- // First, mark this sizer
- rb_gc_mark( rb_sizer );
-
- // Then loop over hte sizer''s content and mark each sub-sizer in turn
- wxSizerItemList& children = wx_sizer->GetChildren();
- for ( wxwxSizerItemListNode *node = children.GetFirst();
-                node;
-               &nbs...
2007 Jul 21
0
[1127] trunk/wxruby2: Move shared C++ GC functions into separate file included into wx.i
...ToWindow(wxSizer *wx_sizer, VALUE rb_sizer)
+{
+ // First, mark this sizer
+ rb_gc_mark( rb_sizer );
+
+ // Then loop over hte sizer''s content and mark each sub-sizer in turn
+ wxSizerItemList& children = wx_sizer->GetChildren();
+ for ( wxwxSizerItemListNode *node = children.GetFirst();
+                node;
+               &nbs...
2015 Jan 11
6
[PATCH 1/3] nv50/ir: Add support for MAD short+IMM notation
MAD IMM has a very specific SDST == SSRC2 requirement, so don't emit
Signed-off-by: Roy Spliet <rspliet at eclipso.eu>
---
.../drivers/nouveau/codegen/nv50_ir_emit_nv50.cpp | 18 ++++++++++++------
.../drivers/nouveau/codegen/nv50_ir_target_nv50.cpp | 2 +-
2 files changed, 13 insertions(+), 7 deletions(-)
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nv50.cpp
2015 Jan 04
3
[LLVMdev] Writing my own debugger... use __builtin_frame_address or is there something better?
...e save the current stack pointer to a global variable
// and tell the debugger that we are on line 1 of the current file's source code.
int N = 0;
DB_Line(2); // Tell the debugger that we have advanced to line 2 of our source code.
Type2* Curr = GetFirst(P);
DB_Line(3);
while (Curr) {
DB_Line(4);
Type3* Tmp = SubFunc(Curr, self, nil);
if (!Tmp) {
PrintError("Error");
return 0;
}
DB_Line(5);
N++;
DB_Line(6);
Item = GetNext(Curr);
DB_Line...
2015 Feb 06
2
[PATCH 1/3] nv50/ir: Add support for MAD 4-byte opcode
Add emission rules for negative and saturate flags for MAD 4-byte opcodes,
and get rid of some of the constraints. Obviously tested with a wide variety
of shaders.
V2: Document MAD as supported short form
V3: Split up IMM from short-form modifiers
Signed-off-by: Roy Spliet <rspliet at eclipso.eu>
---
src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nv50.cpp | 10 ++++------
2007 Jul 04
0
[1108] trunk/wxruby2/swig: Revised mem mgmt for Sizers to address more GC crashes in Sizers demo
...ed within other sizers need to be explicitly
-// handled:
-%{
-static void mark_wxSizer(void *ptr)
-{
- wxSizer* wx_sizer = (wxSizer*)ptr;
- wxSizerItemList& children = wx_sizer->GetChildren();
-
- // Mark each menu in the menubar in turn
- for ( wxwxSizerItemListNode *node = children.GetFirst();
-                node;
-               &nbs...
2006 Dec 20
0
[789] trunk/wxruby2/swig/classes/Window.i: Make GetChildren work (tho general fix for get_ruby_object still needed)
...uot;cx">
</span><span class="cx"> %apply int * INOUT { int * x_INOUT, int * y_INOUT }
</span><span class="cx">
</span><ins>+// Typemap for GetChildren
+%typemap(out) wxList& {
+ $result = rb_ary_new();
+
+ wxNode *node = $1->GetFirst();
+ while (node)
+ {
+ wxObject *obj = node->GetData();
+ rb_ary_push($result, get_ruby_object(obj));
+ node = node->GetNext();
+ }
+}
+
+// general-purpose function used to return ruby wrappers around windows
+// whose type is not known in advance - as in find_window, get_child...
2014 Dec 02
0
[PATCH RESEND] nv50/ir: use unordered_set instead of list to keep track of var defs
...rvalsPass::addLiveRange(Value *val,
const BasicBlock *bb,
int end)
{
- Instruction *insn = val->getUniqueInsn();
+ Instruction *insn = val->getUniqueInsnMerged();
if (!insn)
insn = bb->getFirst();
@@ -579,7 +579,7 @@ RegAlloc::BuildIntervalsPass::visit(BasicBlock *bb)
for (int s = 0; i->srcExists(s); ++s) {
assert(i->src(s).getInsn());
- if (i->getSrc(s)->getUniqueInsn()->bb == bb) // XXX: reachableBy ?
+ if (i->getSrc(s)-&g...
2007 May 28
0
[1033] trunk/wxruby2/swig: GC fixes for nested sizers; fix crashes in html.rb demo
...ed within other sizers need to be explicitly
+// handled:
+%{
+static void mark_wxSizer(void *ptr)
+{
+ wxSizer* wx_sizer = (wxSizer*)ptr;
+ wxSizerItemList& children = wx_sizer->GetChildren();
+
+ // Mark each menu in the menubar in turn
+ for ( wxwxSizerItemListNode *node = children.GetFirst();
+                node;
+               &nbs...
2007 Jul 05
0
[1109] trunk/wxruby2/swig: Move marking of MenuBar from direct %markfunc to via mark_wxFrame, so
...ot;cx"> // Then loop over hte sizer''s content and mark each sub-sizer in turn
</span><span class="cx"> wxSizerItemList& children = wx_sizer->GetChildren();
</span><span class="cx"> for ( wxwxSizerItemListNode *node = children.GetFirst();
</span><span class="lines">@@ -53,7 +63,26 @@
</span><span class="cx">         }
</span><span class="cx">
</span><span class="cx"> }
</span...
2017 Mar 26
5
[PATCH v5 0/5] nvc0/ir: add support for MAD/FMA PostRALoadPropagation
was "nv50/ir: PostRaConstantFolding improvements" before.
nothing really changed from the last version, just minor things.
Karol Herbst (5):
nv50/ir: restructure and rename postraconstantfolding pass
nv50/ir: implement mad post ra folding for nvc0+
gk110/ir: add LIMM form of mad
gm107/ir: add LIMM form of mad
nv50/ir: also do PostRaLoadPropagation for FMA