rubinius-compiler 3.12 → 3.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d82d23b21111ee5ad2695fbc87cdf2b753db1020
4
- data.tar.gz: 54d6ac1e6209ca74b118b4e1cc0de6444e69529d
3
+ metadata.gz: ec50c054685c06bbcb58b527e0013e03ec56d13a
4
+ data.tar.gz: 9c3f27ee809b45d0819c1999332c29bea05e4100
5
5
  SHA512:
6
- metadata.gz: b2b6e5397f84c8fe26474cd7eec864d08e8e10e4290874b0150868b02975cdc8471310a51dc0010fce33716d5a22c332309a105f8fbbbb6e4e7ed0ec292a247f
7
- data.tar.gz: 302ede88b2ee07eb13ab3932b08c657fab2dc31c7da866907f37377b354ea9c91c82561a8317de959e92b185f1f319c18b8cc090cb67deefa440a2e44f44aa1c
6
+ metadata.gz: 72682e8dc43a0a11b4b93d32693b7a4d7feeaddb467699d916041fe344800ec7268f9abd3fc7f967d9f751a47303bb2f9e315d242b4c484784495deaad655be7
7
+ data.tar.gz: d02c1c106db66ff89f5835ce1dbaeb643128ab7a8a13761266c206cc57d1befd68778d12100e33c2c055cf72334bcb2d0a3a718666743239e7721964e296bfee
@@ -32,15 +32,19 @@ module CodeTools
32
32
  attr_reader :used, :basic_block
33
33
  alias_method :used?, :used
34
34
 
35
- def initialize(generator)
35
+ def initialize(generator, basic_block=true)
36
36
  @generator = generator
37
- @basic_block = generator.new_basic_block
37
+ @basic_block = basic_block ? generator.new_basic_block : nil
38
38
  @position = nil
39
39
  @used = false
40
40
  @location = nil
41
41
  @locations = nil
42
42
  end
43
43
 
44
+ def place
45
+ @position = @generator.ip
46
+ end
47
+
44
48
  def set!
45
49
  @position = @generator.ip
46
50
  if @locations
@@ -448,6 +452,12 @@ module CodeTools
448
452
  Label.new(self)
449
453
  end
450
454
 
455
+ def new_unwind_label
456
+ label = Label.new(self, false)
457
+ label.place
458
+ label
459
+ end
460
+
451
461
  # Helpers
452
462
 
453
463
  def new_basic_block
@@ -771,11 +771,6 @@ module CodeTools
771
771
  @ip += 2
772
772
  arg1.used_at location
773
773
  @current_block.add_stack(0, 0)
774
- @current_block.left = arg1.basic_block
775
- @current_block.close
776
- block = new_basic_block
777
- @current_block.right = block
778
- @current_block = block
779
774
  @instruction = 93
780
775
  end
781
776
 
@@ -1,5 +1,5 @@
1
1
  module CodeTools
2
2
  class Compiler
3
- VERSION = "3.12"
3
+ VERSION = "3.13"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubinius-compiler
3
3
  version: !ruby/object:Gem::Version
4
- version: '3.12'
4
+ version: '3.13'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brian Shirai
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-08-23 00:00:00.000000000 Z
11
+ date: 2017-08-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler