Created
March 25, 2013 16:10
-
-
Save sklam/5238271 to your computer and use it in GitHub Desktop.
numba-bytecode->llvm test3 dump
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| define %unknown* @test3(%unknown* %a, %unknown* %b, %unknown* %c) { | |
| block0: | |
| %0 = load %unknown** @numba.builtin.range | |
| %1 = call %unknown* @numba.abstract.const.i32(i32 1) | |
| %2 = call %unknown* @numba.abstract.pack.unknown_p.unknown_p(%unknown* %1, %unknown* %a) | |
| %3 = call %unknown* @numba.abstract.call.unknown_p.unknown_p.unknown_p(%unknown* %0, %unknown* %2, %unknown* null) | |
| %4 = call %unknown* @numba.abstract.get_iter.unknown_p(%unknown* %3) | |
| br label %block16 | |
| block16: ; preds = %block45, %block0 | |
| %.02 = phi %unknown* [ null, %block0 ], [ %.13, %block45 ] | |
| %.01 = phi %unknown* [ null, %block0 ], [ %5, %block45 ] | |
| %.0 = phi %unknown* [ %c, %block0 ], [ %.1, %block45 ] | |
| %5 = call %unknown* @numba.abstract.iter.next.unknown_p(%unknown* %4) | |
| %6 = call i1 @numba.abstract.iter.empty.unknown_p(%unknown* %5) | |
| br i1 %6, label %block69, label %subblock16 | |
| block45: ; preds = %subblock45, %subblock16 | |
| %.13 = phi %unknown* [ %.02, %subblock16 ], [ %7, %subblock45 ] | |
| %.1 = phi %unknown* [ %10, %subblock16 ], [ %17, %subblock45 ] | |
| %7 = call %unknown* @numba.abstract.iter.next.unknown_p(%unknown* %15) | |
| %8 = call i1 @numba.abstract.iter.empty.unknown_p(%unknown* %7) | |
| br i1 %8, label %block16, label %subblock45 | |
| block69: ; preds = %block16 | |
| ret %unknown* %.0 | |
| subblock16: ; preds = %block16 | |
| %9 = call %unknown* @numba.abstract.decref.unknown_p(%unknown* %.01) | |
| %10 = call %unknown* @numba.abstract.binop.add.unknown_p.unknown_p(%unknown* %.0, %unknown* %5) | |
| %11 = call %unknown* @numba.abstract.decref.unknown_p(%unknown* %.0) | |
| %12 = load %unknown** @numba.builtin.range | |
| %13 = call %unknown* @numba.abstract.pack.unknown_p(%unknown* %b) | |
| %14 = call %unknown* @numba.abstract.call.unknown_p.unknown_p.unknown_p(%unknown* %12, %unknown* %13, %unknown* null) | |
| %15 = call %unknown* @numba.abstract.get_iter.unknown_p(%unknown* %14) | |
| br label %block45 | |
| subblock45: ; preds = %block45 | |
| %16 = call %unknown* @numba.abstract.decref.unknown_p(%unknown* %.13) | |
| %17 = call %unknown* @numba.abstract.binop.add.unknown_p.unknown_p(%unknown* %.1, %unknown* %7) | |
| %18 = call %unknown* @numba.abstract.decref.unknown_p(%unknown* %.1) | |
| br label %block45 | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| define %unknown* @test3(%unknown* %a, %unknown* %b, %unknown* %c) { | |
| block0: | |
| %0 = load %unknown** @numba.builtin.range | |
| %1 = tail call %unknown* @PyInt_FromLong(i32 1) | |
| %2 = tail call %unknown* (i64, ...)* @PyTuple_Pack(i64 2, %unknown* %1, %unknown* %a) | |
| %3 = tail call %unknown* @PyObject_Call(%unknown* %0, %unknown* %2, %unknown* null) | |
| %4 = tail call %unknown* @PyObject_GetIter(%unknown* %3) | |
| %5 = tail call %unknown* @PyIter_Next(%unknown* %4) | |
| %6 = icmp eq %unknown* %5, null | |
| br i1 %6, label %block69, label %subblock16 | |
| block16.loopexit: ; preds = %block45.backedge, %numba.abstract.decref.unknown_p.exit5 | |
| %.1.lcssa = phi %unknown* [ %12, %numba.abstract.decref.unknown_p.exit5 ], [ %24, %block45.backedge ] | |
| %.13.lcssa = phi %unknown* [ %.0210, %numba.abstract.decref.unknown_p.exit5 ], [ %21, %block45.backedge ] | |
| %7 = tail call %unknown* @PyIter_Next(%unknown* %4) | |
| %8 = icmp eq %unknown* %7, null | |
| br i1 %8, label %block69, label %subblock16 | |
| block69: ; preds = %block16.loopexit, %block0 | |
| %.0.lcssa = phi %unknown* [ %c, %block0 ], [ %.1.lcssa, %block16.loopexit ] | |
| ret %unknown* %.0.lcssa | |
| subblock16: ; preds = %block0, %block16.loopexit | |
| %9 = phi %unknown* [ %7, %block16.loopexit ], [ %5, %block0 ] | |
| %.012 = phi %unknown* [ %.1.lcssa, %block16.loopexit ], [ %c, %block0 ] | |
| %.0111 = phi %unknown* [ %9, %block16.loopexit ], [ null, %block0 ] | |
| %.0210 = phi %unknown* [ %.13.lcssa, %block16.loopexit ], [ null, %block0 ] | |
| %10 = icmp eq %unknown* %.0111, null | |
| br i1 %10, label %numba.abstract.decref.unknown_p.exit4, label %11 | |
| ; <label>:11 ; preds = %subblock16 | |
| tail call void @Py_DecRef(%unknown* %.0111) | |
| br label %numba.abstract.decref.unknown_p.exit4 | |
| numba.abstract.decref.unknown_p.exit4: ; preds = %subblock16, %11 | |
| %12 = tail call %unknown* @PyNumber_Add(%unknown* %.012, %unknown* %9) | |
| %13 = icmp eq %unknown* %.012, null | |
| br i1 %13, label %numba.abstract.decref.unknown_p.exit5, label %14 | |
| ; <label>:14 ; preds = %numba.abstract.decref.unknown_p.exit4 | |
| tail call void @Py_DecRef(%unknown* %.012) | |
| br label %numba.abstract.decref.unknown_p.exit5 | |
| numba.abstract.decref.unknown_p.exit5: ; preds = %numba.abstract.decref.unknown_p.exit4, %14 | |
| %15 = load %unknown** @numba.builtin.range | |
| %16 = tail call %unknown* (i64, ...)* @PyTuple_Pack(i64 1, %unknown* %b) | |
| %17 = tail call %unknown* @PyObject_Call(%unknown* %15, %unknown* %16, %unknown* null) | |
| %18 = tail call %unknown* @PyObject_GetIter(%unknown* %17) | |
| %19 = tail call %unknown* @PyIter_Next(%unknown* %18) | |
| %20 = icmp eq %unknown* %19, null | |
| br i1 %20, label %block16.loopexit, label %subblock45 | |
| subblock45: ; preds = %numba.abstract.decref.unknown_p.exit5, %block45.backedge | |
| %21 = phi %unknown* [ %26, %block45.backedge ], [ %19, %numba.abstract.decref.unknown_p.exit5 ] | |
| %.18 = phi %unknown* [ %24, %block45.backedge ], [ %12, %numba.abstract.decref.unknown_p.exit5 ] | |
| %.137 = phi %unknown* [ %21, %block45.backedge ], [ %.0210, %numba.abstract.decref.unknown_p.exit5 ] | |
| %22 = icmp eq %unknown* %.137, null | |
| br i1 %22, label %numba.abstract.decref.unknown_p.exit6, label %23 | |
| ; <label>:23 ; preds = %subblock45 | |
| tail call void @Py_DecRef(%unknown* %.137) | |
| br label %numba.abstract.decref.unknown_p.exit6 | |
| numba.abstract.decref.unknown_p.exit6: ; preds = %subblock45, %23 | |
| %24 = tail call %unknown* @PyNumber_Add(%unknown* %.18, %unknown* %21) | |
| %25 = icmp eq %unknown* %.18, null | |
| br i1 %25, label %block45.backedge, label %28 | |
| block45.backedge: ; preds = %numba.abstract.decref.unknown_p.exit6, %28 | |
| %26 = tail call %unknown* @PyIter_Next(%unknown* %18) | |
| %27 = icmp eq %unknown* %26, null | |
| br i1 %27, label %block16.loopexit, label %subblock45 | |
| ; <label>:28 ; preds = %numba.abstract.decref.unknown_p.exit6 | |
| tail call void @Py_DecRef(%unknown* %.18) | |
| br label %block45.backedge | |
| } | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| define %unknown* @test3(%unknown* %a, %unknown* %b, %unknown* %c) { | |
| block0: | |
| %0 = load %unknown** @numba.builtin.range | |
| %1 = tail call %unknown* @PyInt_FromLong(i32 1) | |
| %2 = icmp eq %unknown* %1, null | |
| br i1 %2, label %3, label %4 | |
| ; <label>:3 ; preds = %block0 | |
| ret %unknown* null | |
| ; <label>:4 ; preds = %block0 | |
| %5 = tail call %unknown* (i64, ...)* @PyTuple_Pack(i64 2, %unknown* %1, %unknown* %a) | |
| %6 = icmp eq %unknown* %5, null | |
| br i1 %6, label %7, label %8 | |
| ; <label>:7 ; preds = %4 | |
| ret %unknown* null | |
| ; <label>:8 ; preds = %4 | |
| %9 = tail call %unknown* @PyObject_Call(%unknown* %0, %unknown* %5, %unknown* null) | |
| %10 = icmp eq %unknown* %9, null | |
| br i1 %10, label %11, label %12 | |
| ; <label>:11 ; preds = %8 | |
| ret %unknown* null | |
| ; <label>:12 ; preds = %8 | |
| %13 = tail call %unknown* @PyObject_GetIter(%unknown* %9) | |
| %14 = icmp eq %unknown* %13, null | |
| br i1 %14, label %15, label %16 | |
| ; <label>:15 ; preds = %12 | |
| ret %unknown* null | |
| ; <label>:16 ; preds = %12 | |
| %17 = tail call %unknown* @PyIter_Next(%unknown* %13) | |
| %18 = icmp eq %unknown* %17, null | |
| %19 = call %unknown* @PyErr_Occurred() | |
| %20 = icmp ne %unknown* %19, null | |
| %21 = and i1 %18, %20 | |
| br i1 %21, label %22, label %23 | |
| ; <label>:22 ; preds = %16 | |
| ret %unknown* null | |
| ; <label>:23 ; preds = %16 | |
| %24 = icmp eq %unknown* %17, null | |
| br i1 %24, label %block69, label %subblock16 | |
| block16.loopexit: ; preds = %77, %61 | |
| %.1.lcssa = phi %unknown* [ %36, %61 ], [ %66, %77 ] | |
| %.13.lcssa = phi %unknown* [ %.0210, %61 ], [ %63, %77 ] | |
| %25 = tail call %unknown* @PyIter_Next(%unknown* %13) | |
| %26 = icmp eq %unknown* %25, null | |
| %27 = call %unknown* @PyErr_Occurred() | |
| %28 = icmp ne %unknown* %27, null | |
| %29 = and i1 %26, %28 | |
| br i1 %29, label %30, label %31 | |
| ; <label>:30 ; preds = %block16.loopexit | |
| ret %unknown* null | |
| ; <label>:31 ; preds = %block16.loopexit | |
| %32 = icmp eq %unknown* %25, null | |
| br i1 %32, label %block69, label %subblock16 | |
| block69: ; preds = %31, %23 | |
| %.0.lcssa = phi %unknown* [ %c, %23 ], [ %.1.lcssa, %31 ] | |
| ret %unknown* %.0.lcssa | |
| subblock16: ; preds = %23, %31 | |
| %33 = phi %unknown* [ %25, %31 ], [ %17, %23 ] | |
| %.012 = phi %unknown* [ %.1.lcssa, %31 ], [ %c, %23 ] | |
| %.0111 = phi %unknown* [ %33, %31 ], [ null, %23 ] | |
| %.0210 = phi %unknown* [ %.13.lcssa, %31 ], [ null, %23 ] | |
| %34 = icmp eq %unknown* %.0111, null | |
| br i1 %34, label %numba.abstract.decref.unknown_p.exit4, label %35 | |
| ; <label>:35 ; preds = %subblock16 | |
| tail call void @Py_DecRef(%unknown* %.0111) | |
| br label %numba.abstract.decref.unknown_p.exit4 | |
| numba.abstract.decref.unknown_p.exit4: ; preds = %subblock16, %35 | |
| %36 = tail call %unknown* @PyNumber_Add(%unknown* %.012, %unknown* %33) | |
| %37 = icmp eq %unknown* %36, null | |
| br i1 %37, label %38, label %39 | |
| ; <label>:38 ; preds = %numba.abstract.decref.unknown_p.exit4 | |
| ret %unknown* null | |
| ; <label>:39 ; preds = %numba.abstract.decref.unknown_p.exit4 | |
| %40 = icmp eq %unknown* %.012, null | |
| br i1 %40, label %numba.abstract.decref.unknown_p.exit5, label %41 | |
| ; <label>:41 ; preds = %39 | |
| tail call void @Py_DecRef(%unknown* %.012) | |
| br label %numba.abstract.decref.unknown_p.exit5 | |
| numba.abstract.decref.unknown_p.exit5: ; preds = %39, %41 | |
| %42 = load %unknown** @numba.builtin.range | |
| %43 = tail call %unknown* (i64, ...)* @PyTuple_Pack(i64 1, %unknown* %b) | |
| %44 = icmp eq %unknown* %43, null | |
| br i1 %44, label %45, label %46 | |
| ; <label>:45 ; preds = %numba.abstract.decref.unknown_p.exit5 | |
| ret %unknown* null | |
| ; <label>:46 ; preds = %numba.abstract.decref.unknown_p.exit5 | |
| %47 = tail call %unknown* @PyObject_Call(%unknown* %42, %unknown* %43, %unknown* null) | |
| %48 = icmp eq %unknown* %47, null | |
| br i1 %48, label %49, label %50 | |
| ; <label>:49 ; preds = %46 | |
| ret %unknown* null | |
| ; <label>:50 ; preds = %46 | |
| %51 = tail call %unknown* @PyObject_GetIter(%unknown* %47) | |
| %52 = icmp eq %unknown* %51, null | |
| br i1 %52, label %53, label %54 | |
| ; <label>:53 ; preds = %50 | |
| ret %unknown* null | |
| ; <label>:54 ; preds = %50 | |
| %55 = tail call %unknown* @PyIter_Next(%unknown* %51) | |
| %56 = icmp eq %unknown* %55, null | |
| %57 = call %unknown* @PyErr_Occurred() | |
| %58 = icmp ne %unknown* %57, null | |
| %59 = and i1 %56, %58 | |
| br i1 %59, label %60, label %61 | |
| ; <label>:60 ; preds = %54 | |
| ret %unknown* null | |
| ; <label>:61 ; preds = %54 | |
| %62 = icmp eq %unknown* %55, null | |
| br i1 %62, label %block16.loopexit, label %subblock45 | |
| subblock45: ; preds = %61, %77 | |
| %63 = phi %unknown* [ %71, %77 ], [ %55, %61 ] | |
| %.18 = phi %unknown* [ %66, %77 ], [ %36, %61 ] | |
| %.137 = phi %unknown* [ %63, %77 ], [ %.0210, %61 ] | |
| %64 = icmp eq %unknown* %.137, null | |
| br i1 %64, label %numba.abstract.decref.unknown_p.exit6, label %65 | |
| ; <label>:65 ; preds = %subblock45 | |
| tail call void @Py_DecRef(%unknown* %.137) | |
| br label %numba.abstract.decref.unknown_p.exit6 | |
| numba.abstract.decref.unknown_p.exit6: ; preds = %subblock45, %65 | |
| %66 = tail call %unknown* @PyNumber_Add(%unknown* %.18, %unknown* %63) | |
| %67 = icmp eq %unknown* %66, null | |
| br i1 %67, label %68, label %69 | |
| ; <label>:68 ; preds = %numba.abstract.decref.unknown_p.exit6 | |
| ret %unknown* null | |
| ; <label>:69 ; preds = %numba.abstract.decref.unknown_p.exit6 | |
| %70 = icmp eq %unknown* %.18, null | |
| br i1 %70, label %block45.backedge, label %79 | |
| block45.backedge: ; preds = %69, %79 | |
| %71 = tail call %unknown* @PyIter_Next(%unknown* %51) | |
| %72 = icmp eq %unknown* %71, null | |
| %73 = call %unknown* @PyErr_Occurred() | |
| %74 = icmp ne %unknown* %73, null | |
| %75 = and i1 %72, %74 | |
| br i1 %75, label %76, label %77 | |
| ; <label>:76 ; preds = %block45.backedge | |
| ret %unknown* null | |
| ; <label>:77 ; preds = %block45.backedge | |
| %78 = icmp eq %unknown* %71, null | |
| br i1 %78, label %block16.loopexit, label %subblock45 | |
| ; <label>:79 ; preds = %69 | |
| tail call void @Py_DecRef(%unknown* %.18) | |
| br label %block45.backedge | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| define %unknown* @test3(%unknown* %a, %unknown* %b, %unknown* %c) { | |
| block0: | |
| %0 = load %unknown** @numba.builtin.range | |
| %1 = tail call %unknown* @PyInt_FromLong(i32 1) | |
| %2 = icmp eq %unknown* %1, null | |
| br i1 %2, label %block69, label %3 | |
| block69: ; preds = %block16.loopexit, %40, %37, %34, %numba.abstract.decref.unknown_p.exit5, %numba.abstract.decref.unknown_p.exit4, %block45.backedge, %numba.abstract.decref.unknown_p.exit6, %12, %9, %6, %3, %block0 | |
| %merge = phi %unknown* [ %.mux, %12 ], [ null, %9 ], [ null, %6 ], [ null, %3 ], [ null, %block0 ], [ null, %numba.abstract.decref.unknown_p.exit6 ], [ null, %block45.backedge ], [ %.mux16, %block16.loopexit ], [ null, %40 ], [ null, %37 ], [ null, %34 ], [ null, %numba.abstract.decref.unknown_p.exit5 ], [ null, %numba.abstract.decref.unknown_p.exit4 ] | |
| ret %unknown* %merge | |
| ; <label>:3 ; preds = %block0 | |
| %4 = tail call %unknown* (i64, ...)* @PyTuple_Pack(i64 2, %unknown* %1, %unknown* %a) | |
| %5 = icmp eq %unknown* %4, null | |
| br i1 %5, label %block69, label %6 | |
| ; <label>:6 ; preds = %3 | |
| %7 = tail call %unknown* @PyObject_Call(%unknown* %0, %unknown* %4, %unknown* null) | |
| %8 = icmp eq %unknown* %7, null | |
| br i1 %8, label %block69, label %9 | |
| ; <label>:9 ; preds = %6 | |
| %10 = tail call %unknown* @PyObject_GetIter(%unknown* %7) | |
| %11 = icmp eq %unknown* %10, null | |
| br i1 %11, label %block69, label %12 | |
| ; <label>:12 ; preds = %9 | |
| %13 = tail call %unknown* @PyIter_Next(%unknown* %10) | |
| %14 = icmp eq %unknown* %13, null | |
| %15 = tail call %unknown* @PyErr_Occurred() | |
| %16 = icmp ne %unknown* %15, null | |
| %17 = and i1 %14, %16 | |
| %.mux = select i1 %17, %unknown* null, %unknown* %c | |
| br i1 %14, label %block69, label %subblock16 | |
| block16.loopexit: ; preds = %59, %46 | |
| %.1.lcssa = phi %unknown* [ %26, %46 ], [ %50, %59 ] | |
| %.13.lcssa = phi %unknown* [ %.0210, %46 ], [ %47, %59 ] | |
| %18 = tail call %unknown* @PyIter_Next(%unknown* %10) | |
| %19 = icmp eq %unknown* %18, null | |
| %20 = tail call %unknown* @PyErr_Occurred() | |
| %21 = icmp ne %unknown* %20, null | |
| %22 = and i1 %19, %21 | |
| %.mux16 = select i1 %22, %unknown* null, %unknown* %.1.lcssa | |
| br i1 %19, label %block69, label %subblock16 | |
| subblock16: ; preds = %12, %block16.loopexit | |
| %23 = phi %unknown* [ %18, %block16.loopexit ], [ %13, %12 ] | |
| %.012 = phi %unknown* [ %.1.lcssa, %block16.loopexit ], [ %c, %12 ] | |
| %.0111 = phi %unknown* [ %23, %block16.loopexit ], [ null, %12 ] | |
| %.0210 = phi %unknown* [ %.13.lcssa, %block16.loopexit ], [ null, %12 ] | |
| %24 = icmp eq %unknown* %.0111, null | |
| br i1 %24, label %numba.abstract.decref.unknown_p.exit4, label %25 | |
| ; <label>:25 ; preds = %subblock16 | |
| tail call void @Py_DecRef(%unknown* %.0111) | |
| br label %numba.abstract.decref.unknown_p.exit4 | |
| numba.abstract.decref.unknown_p.exit4: ; preds = %subblock16, %25 | |
| %26 = tail call %unknown* @PyNumber_Add(%unknown* %.012, %unknown* %23) | |
| %27 = icmp eq %unknown* %26, null | |
| br i1 %27, label %block69, label %28 | |
| ; <label>:28 ; preds = %numba.abstract.decref.unknown_p.exit4 | |
| %29 = icmp eq %unknown* %.012, null | |
| br i1 %29, label %numba.abstract.decref.unknown_p.exit5, label %30 | |
| ; <label>:30 ; preds = %28 | |
| tail call void @Py_DecRef(%unknown* %.012) | |
| br label %numba.abstract.decref.unknown_p.exit5 | |
| numba.abstract.decref.unknown_p.exit5: ; preds = %28, %30 | |
| %31 = load %unknown** @numba.builtin.range | |
| %32 = tail call %unknown* (i64, ...)* @PyTuple_Pack(i64 1, %unknown* %b) | |
| %33 = icmp eq %unknown* %32, null | |
| br i1 %33, label %block69, label %34 | |
| ; <label>:34 ; preds = %numba.abstract.decref.unknown_p.exit5 | |
| %35 = tail call %unknown* @PyObject_Call(%unknown* %31, %unknown* %32, %unknown* null) | |
| %36 = icmp eq %unknown* %35, null | |
| br i1 %36, label %block69, label %37 | |
| ; <label>:37 ; preds = %34 | |
| %38 = tail call %unknown* @PyObject_GetIter(%unknown* %35) | |
| %39 = icmp eq %unknown* %38, null | |
| br i1 %39, label %block69, label %40 | |
| ; <label>:40 ; preds = %37 | |
| %41 = tail call %unknown* @PyIter_Next(%unknown* %38) | |
| %42 = icmp eq %unknown* %41, null | |
| %43 = tail call %unknown* @PyErr_Occurred() | |
| %44 = icmp ne %unknown* %43, null | |
| %45 = and i1 %42, %44 | |
| br i1 %45, label %block69, label %46 | |
| ; <label>:46 ; preds = %40 | |
| br i1 %42, label %block16.loopexit, label %subblock45 | |
| subblock45: ; preds = %46, %59 | |
| %47 = phi %unknown* [ %54, %59 ], [ %41, %46 ] | |
| %.18 = phi %unknown* [ %50, %59 ], [ %26, %46 ] | |
| %.137 = phi %unknown* [ %47, %59 ], [ %.0210, %46 ] | |
| %48 = icmp eq %unknown* %.137, null | |
| br i1 %48, label %numba.abstract.decref.unknown_p.exit6, label %49 | |
| ; <label>:49 ; preds = %subblock45 | |
| tail call void @Py_DecRef(%unknown* %.137) | |
| br label %numba.abstract.decref.unknown_p.exit6 | |
| numba.abstract.decref.unknown_p.exit6: ; preds = %subblock45, %49 | |
| %50 = tail call %unknown* @PyNumber_Add(%unknown* %.18, %unknown* %47) | |
| %51 = icmp eq %unknown* %50, null | |
| br i1 %51, label %block69, label %52 | |
| ; <label>:52 ; preds = %numba.abstract.decref.unknown_p.exit6 | |
| %53 = icmp eq %unknown* %.18, null | |
| br i1 %53, label %block45.backedge, label %60 | |
| block45.backedge: ; preds = %52, %60 | |
| %54 = tail call %unknown* @PyIter_Next(%unknown* %38) | |
| %55 = icmp eq %unknown* %54, null | |
| %56 = tail call %unknown* @PyErr_Occurred() | |
| %57 = icmp ne %unknown* %56, null | |
| %58 = and i1 %55, %57 | |
| br i1 %58, label %block69, label %59 | |
| ; <label>:59 ; preds = %block45.backedge | |
| br i1 %55, label %block16.loopexit, label %subblock45 | |
| ; <label>:60 ; preds = %52 | |
| tail call void @Py_DecRef(%unknown* %.18) | |
| br label %block45.backedge | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| def test3(a, b, c): | |
| for i in range(1, a): | |
| c += i | |
| for j in range(b): | |
| c += j | |
| return c |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment