]> granicus.if.org Git - python/commitdiff
Issue #28823: Simplified compiling with opcode BUILD_MAP_UNPACK.
authorSerhiy Storchaka <storchaka@gmail.com>
Mon, 28 Nov 2016 18:56:37 +0000 (20:56 +0200)
committerSerhiy Storchaka <storchaka@gmail.com>
Mon, 28 Nov 2016 18:56:37 +0000 (20:56 +0200)
Python/compile.c

index 46a40a336904e56fd4a69fc37676681062a3a65b..62f1c3f3f37b2eaa6cdf64d88d26c83b7f91c4a9 100644 (file)
@@ -3344,11 +3344,8 @@ compiler_dict(struct compiler *c, expr_ty e)
     /* If there is more than one dict, they need to be merged into a new
      * dict.  If there is one dict and it's an unpacking, then it needs
      * to be copied into a new dict." */
-    while (containers > 1 || is_unpacking) {
-        int oparg = containers < 255 ? containers : 255;
-        ADDOP_I(c, BUILD_MAP_UNPACK, oparg);
-        containers -= (oparg - 1);
-        is_unpacking = 0;
+    if (containers > 1 || is_unpacking) {
+        ADDOP_I(c, BUILD_MAP_UNPACK, containers);
     }
     return 1;
 }