ruby-llvm 19.1.2 → 19.1.4

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
  SHA256:
3
- metadata.gz: df367b2c98f260a385eaadca04206f2a7f71a9354b2e2584be63ac33fd28b122
4
- data.tar.gz: 478b9eea54dd4686fba6d6643965be3aa21570906dcf6b95df4b8b6a5101ff0e
3
+ metadata.gz: 9e469d4e2883a534fd6ec69287e59706d455fef0d69ebec51a062334d994b263
4
+ data.tar.gz: 9a92c986b3157b631a0e0155e27fed51c09932b9f096721e220ef7969f145888
5
5
  SHA512:
6
- metadata.gz: 71f91dd881e22562015aba5cd9d818f949f460f44a7e4d0dd12850d95aefdfd512db2c9fc9131db0515947a0a31e0afe806cc55b8d5bbc185cd16fb3fa282eea
7
- data.tar.gz: 21a4ea3e227b4c127ac5212cd705fae433a571be7524fe3c4e14b48c3e0eec1e10c5642c4c47ff773432bceec862cf07199d148e407caa384dfe761dbc380b3d
6
+ metadata.gz: b833152c3a4479a7c9e5b496da12c98e4baefd9f4304a1256f4d0125118bd225bf236aefd0f586e81fc487eb9ca5f9568a2f657b17f1858f805835f65c626394
7
+ data.tar.gz: 83407f9eba08b86200d78f9f19ea0072f6fc7c4484e38c00efaa93851e31462a1808dd23fb9555cf792ac5cde6a3944fe5b0e364437dc3d00745d11faba72c4b
data/lib/llvm/config.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  # Generated by ruby-llvm. Please do not change this file by hand.
2
2
  module LLVM
3
3
  module CONFIG
4
- VERSION = "19.1.2"
4
+ VERSION = "19.1.5"
5
5
  COMPONENTS = ["aarch64", "aarch64asmparser", "aarch64codegen", "aarch64desc", "aarch64disassembler", "aarch64info", "aarch64utils", "aggressiveinstcombine", "all", "all-targets", "amdgpu", "amdgpuasmparser", "amdgpucodegen", "amdgpudesc", "amdgpudisassembler", "amdgpuinfo", "amdgputargetmca", "amdgpuutils", "analysis", "arm", "armasmparser", "armcodegen", "armdesc", "armdisassembler", "arminfo", "armutils", "asmparser", "asmprinter", "avr", "avrasmparser", "avrcodegen", "avrdesc", "avrdisassembler", "avrinfo", "binaryformat", "bitreader", "bitstreamreader", "bitwriter", "bpf", "bpfasmparser", "bpfcodegen", "bpfdesc", "bpfdisassembler", "bpfinfo", "cfguard", "codegen", "codegendata", "codegentypes", "core", "coroutines", "coverage", "debuginfobtf", "debuginfocodeview", "debuginfodwarf", "debuginfogsym", "debuginfologicalview", "debuginfomsf", "debuginfopdb", "demangle", "dlltooldriver", "dwarflinker", "dwarflinkerclassic", "dwarflinkerparallel", "dwp", "engine", "executionengine", "extensions", "filecheck", "frontenddriver", "frontendhlsl", "frontendoffloading", "frontendopenacc", "frontendopenmp", "fuzzercli", "fuzzmutate", "globalisel", "hexagon", "hexagonasmparser", "hexagoncodegen", "hexagondesc", "hexagondisassembler", "hexagoninfo", "hipstdpar", "instcombine", "instrumentation", "interfacestub", "interpreter", "ipo", "irprinter", "irreader", "jitlink", "lanai", "lanaiasmparser", "lanaicodegen", "lanaidesc", "lanaidisassembler", "lanaiinfo", "libdriver", "lineeditor", "linker", "loongarch", "loongarchasmparser", "loongarchcodegen", "loongarchdesc", "loongarchdisassembler", "loongarchinfo", "lto", "m68k", "m68kasmparser", "m68kcodegen", "m68kdesc", "m68kdisassembler", "m68kinfo", "mc", "mca", "mcdisassembler", "mcjit", "mcparser", "mips", "mipsasmparser", "mipscodegen", "mipsdesc", "mipsdisassembler", "mipsinfo", "mirparser", "msp430", "msp430asmparser", "msp430codegen", "msp430desc", "msp430disassembler", "msp430info", "native", "nativecodegen", "nvptx", "nvptxcodegen", "nvptxdesc", "nvptxinfo", "objcarcopts", "objcopy", "object", "objectyaml", "option", "orcdebugging", "orcjit", "orcshared", "orctargetprocess", "passes", "perfjitevents", "powerpc", "powerpcasmparser", "powerpccodegen", "powerpcdesc", "powerpcdisassembler", "powerpcinfo", "profiledata", "remarks", "riscv", "riscvasmparser", "riscvcodegen", "riscvdesc", "riscvdisassembler", "riscvinfo", "riscvtargetmca", "runtimedyld", "sandboxir", "scalaropts", "selectiondag", "sparc", "sparcasmparser", "sparccodegen", "sparcdesc", "sparcdisassembler", "sparcinfo", "support", "symbolize", "systemz", "systemzasmparser", "systemzcodegen", "systemzdesc", "systemzdisassembler", "systemzinfo", "tablegen", "target", "targetparser", "textapi", "textapibinaryreader", "transformutils", "ve", "veasmparser", "vecodegen", "vectorize", "vedesc", "vedisassembler", "veinfo", "webassembly", "webassemblyasmparser", "webassemblycodegen", "webassemblydesc", "webassemblydisassembler", "webassemblyinfo", "webassemblyutils", "windowsdriver", "windowsmanifest", "x86", "x86asmparser", "x86codegen", "x86desc", "x86disassembler", "x86info", "x86targetmca", "xcore", "xcorecodegen", "xcoredesc", "xcoredisassembler", "xcoreinfo", "xray", "xtensa", "xtensaasmparser", "xtensacodegen", "xtensadesc", "xtensadisassembler", "xtensainfo"]
6
6
  TARGETS_BUILT = ["AArch64", "AMDGPU", "ARM", "AVR", "BPF", "Hexagon", "Lanai", "LoongArch", "Mips", "MSP430", "NVPTX", "PowerPC", "RISCV", "Sparc", "SystemZ", "VE", "WebAssembly", "X86", "XCore", "M68k", "Xtensa"]
7
7
  HOST_TARGET = "x86_64-pc-linux-gnu"
@@ -149,15 +149,15 @@ module LLVM
149
149
  private
150
150
 
151
151
  def enum_value_mem_none?
152
- (enum_value & 63).zero?
152
+ enum_value.nobits?(63)
153
153
  end
154
154
 
155
155
  def enum_value_mem_read?
156
- (enum_value & 21) != 0
156
+ enum_value.anybits?(21)
157
157
  end
158
158
 
159
159
  def enum_value_mem_write?
160
- (enum_value & 42) != 0
160
+ enum_value.anybits?(42)
161
161
  end
162
162
 
163
163
  def enum_kind_id
@@ -12,7 +12,7 @@ module LLVM
12
12
  val
13
13
  end
14
14
 
15
- def self.from_ptr_kind(ptr)
15
+ def self.from_ptr_kind(ptr) # rubocop:disable Metrics/CyclomaticComplexity
16
16
  return if ptr.null?
17
17
 
18
18
  kind = C.get_value_kind(ptr)
@@ -27,6 +27,10 @@ module LLVM
27
27
  Poison.from_ptr(ptr)
28
28
  when :global_variable
29
29
  GlobalVariable.from_ptr(ptr)
30
+ when :const_expr
31
+ ConstantExpr.from_ptr(ptr)
32
+ when :const_null
33
+ ConstantNull.from_ptr(ptr)
30
34
  else
31
35
  raise "from_ptr_kind cannot handle: #{kind}"
32
36
  end
@@ -810,6 +814,9 @@ module LLVM
810
814
  end
811
815
  end
812
816
 
817
+ class ConstantNull < Constant
818
+ end
819
+
813
820
  class GlobalValue < Constant
814
821
  def declaration?
815
822
  C.is_declaration(self)
@@ -1181,6 +1188,8 @@ module LLVM
1181
1188
  end
1182
1189
 
1183
1190
  class Instruction < User
1191
+ # Create Instruction from pointer to value
1192
+ # many places where this is called, the instruction may be a constant, so create those instead
1184
1193
  def self.from_ptr(ptr)
1185
1194
  kind = C.get_value_kind(ptr)
1186
1195
  kind == :instruction ? super : LLVM::Value.from_ptr_kind(ptr)
data/lib/llvm/version.rb CHANGED
@@ -2,6 +2,6 @@
2
2
 
3
3
  module LLVM
4
4
  LLVM_VERSION = "19"
5
- LLVM_REQUIRED_VERSION = "19.1.2"
6
- RUBY_LLVM_VERSION = "19.1.2"
5
+ LLVM_REQUIRED_VERSION = "19.1.4"
6
+ RUBY_LLVM_VERSION = "19.1.4"
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-llvm
3
3
  version: !ruby/object:Gem::Version
4
- version: 19.1.2
4
+ version: 19.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jesse Johnson
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2024-10-16 00:00:00.000000000 Z
12
+ date: 2024-11-27 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: ffi