summaryrefslogtreecommitdiff
path: root/spec/ruby/core/array/shared/length.rb
diff options
context:
space:
mode:
authorKevin Newton <kddnewton@gmail.com>2022-08-17 12:59:08 -0400
committerTakashi Kokubun <takashikkbn@gmail.com>2022-08-29 08:47:11 -0700
commitd57a9f61a065418ef99fcbbb65eca4f34f33f1c8 (patch)
tree85744ad4c76c082169681c86de195514df9780e7 /spec/ruby/core/array/shared/length.rb
parentb735eb5ef39e73e2a0ea6bbdb6ff7ce41a998d63 (diff)
Build output operands explicitly (https://github.com/Shopify/ruby/pull/411)
When we're pushing instructions onto the assembler, we previously would iterate through the instruction's operands and then assign the output operand to it through the push_insn function. This is easy when all instructions have a vector of operands, but is much more difficult when the shape differs in an enum. This commit changes it so that we explicitly define the output operand for each instruction before it gets pushed onto the assembler. This has the added benefit of changing the definition of push_insn to no longer require a mutable instruction. This paves the way to make the out field on the instructions an Option<Opnd> instead which is going to more accurately reflect the behavior we're going to have once we switch the instructions over to an enum instead of a struct.
Diffstat (limited to 'spec/ruby/core/array/shared/length.rb')
0 files changed, 0 insertions, 0 deletions