ruby-llvm 19.1.2 → 19.1.4

Sign up to get free protection for your applications and to get access to all the features.
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