ruby-llvm 3.3.0 → 3.4.0

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: 6cddca1edd8ba250d7003d333aeba9c4fffffc9a
4
- data.tar.gz: 480c115d38ecc429338f474e7bfcbdba846406e0
3
+ metadata.gz: 878b8916b8491bdbe2853e9595d7e462f3409b7e
4
+ data.tar.gz: eb5a2758a1f1711f7f7832974459a00571ffe9bf
5
5
  SHA512:
6
- metadata.gz: f9bd7e960dc2b5cc1654254e14afb0dfa10d447a330dc0950035517a6f31adaa488fa1cd4aad1b6d87dc286d420ff477e2bdc0801994f03929240346c4534da8
7
- data.tar.gz: 7851c1b08cd9df28d8d518bfe97f6f1b8b2629ee68f3eac1feea6799d24549d9db92adc2d05bfd2a2611ed98a7f758bd0b9c2313564bc2bbb63153e187a4db34
6
+ metadata.gz: 76d69849283e05f5ef6352c4f2e0acd60184ff16c1835485163327bff58c0401b99ea4d2562aa996d1a721b1c04a95befca5eb3a5feec128d712f82a121f4944
7
+ data.tar.gz: 21a27d8d676573270a0e412e76d2e29ad1649b8850297fe51a7f370dbeca127fb4fd7f8ac235e0c286c1d0c3206f90f58966681e5149789945d32a962a3a739e
data/README.md CHANGED
@@ -9,7 +9,7 @@ computationally intensive algorithms on the fly.
9
9
 
10
10
  Requirements
11
11
  ------------
12
- * LLVM 3.3, including libLLVM-3.3 (compile LLVM with --enable-shared).
12
+ * LLVM 3.4, including libLLVM-3.4 (compile LLVM with --enable-shared).
13
13
  * In order to ensure the usability of JIT features (i.e. create_jit_compiler), compile LLVM with --enable-jit as well.
14
14
 
15
15
  About version numbers
@@ -25,15 +25,6 @@ extern "C" {
25
25
  unwrap<GlobalValue>(global)->setUnnamedAddr(val != 0);
26
26
  }
27
27
 
28
- void LLVMDumpType(LLVMTypeRef type) {
29
- unwrap<Type>(type)->dump();
30
- }
31
-
32
- void LLVMPrintModuleToFD(LLVMModuleRef module, int fd, LLVMBool shouldClose, LLVMBool unbuffered) {
33
- raw_fd_ostream os(fd, shouldClose, unbuffered);
34
- unwrap(module)->print(os, 0);
35
- }
36
-
37
28
  void LLVMInitializeAllTargetInfos() {
38
29
  llvm::InitializeAllTargetInfos();
39
30
  }
@@ -54,7 +45,7 @@ extern "C" {
54
45
  llvm::InitializeNativeTarget();
55
46
  }
56
47
 
57
- void LLVMInitializeNativeTargetAsmPrinter() {
48
+ void LLVMInitializeNativeAsmPrinter() {
58
49
  llvm::InitializeNativeTargetAsmPrinter();
59
50
  }
60
51
  }
@@ -4,7 +4,7 @@ require 'ffi'
4
4
 
5
5
  module LLVM::C
6
6
  extend FFI::Library
7
- ffi_lib 'LLVM-3.3'
7
+ ffi_lib 'LLVM-3.4'
8
8
 
9
9
  def self.attach_function(name, *_)
10
10
  begin; super; rescue FFI::NotFoundError => e
@@ -1,10 +1,10 @@
1
1
  # Generated by ruby-llvm. Please do not change this file by hand.
2
2
  module LLVM
3
3
  module CONFIG
4
- COMPONENTS = ["aarch64", "aarch64asmparser", "aarch64asmprinter", "aarch64codegen", "aarch64desc", "aarch64disassembler", "aarch64info", "aarch64utils", "all", "all-targets", "analysis", "archive", "arm", "armasmparser", "armasmprinter", "armcodegen", "armdesc", "armdisassembler", "arminfo", "asmparser", "asmprinter", "bitreader", "bitwriter", "codegen", "core", "cppbackend", "cppbackendcodegen", "cppbackendinfo", "debuginfo", "engine", "executionengine", "hexagon", "hexagonasmprinter", "hexagoncodegen", "hexagondesc", "hexagoninfo", "instcombine", "instrumentation", "interpreter", "ipa", "ipo", "irreader", "jit", "linker", "mblaze", "mblazeasmparser", "mblazeasmprinter", "mblazecodegen", "mblazedesc", "mblazedisassembler", "mblazeinfo", "mc", "mcdisassembler", "mcjit", "mcparser", "mips", "mipsasmparser", "mipsasmprinter", "mipscodegen", "mipsdesc", "mipsdisassembler", "mipsinfo", "msp430", "msp430asmprinter", "msp430codegen", "msp430desc", "msp430info", "native", "nativecodegen", "nvptx", "nvptxasmprinter", "nvptxcodegen", "nvptxdesc", "nvptxinfo", "objcarcopts", "object", "option", "powerpc", "powerpcasmparser", "powerpcasmprinter", "powerpccodegen", "powerpcdesc", "powerpcinfo", "r600", "r600asmprinter", "r600codegen", "r600desc", "r600info", "runtimedyld", "scalaropts", "selectiondag", "sparc", "sparccodegen", "sparcdesc", "sparcinfo", "support", "systemz", "systemzasmparser", "systemzasmprinter", "systemzcodegen", "systemzdesc", "systemzinfo", "tablegen", "target", "transformutils", "vectorize", "x86", "x86asmparser", "x86asmprinter", "x86codegen", "x86desc", "x86disassembler", "x86info", "x86utils", "xcore", "xcoreasmprinter", "xcorecodegen", "xcoredesc", "xcoredisassembler", "xcoreinfo"]
5
- TARGETS_BUILT = ["R600", "X86", "Sparc", "PowerPC", "AArch64", "ARM", "Mips", "XCore", "MSP430", "CppBackend", "MBlaze", "NVPTX", "Hexagon", "SystemZ"]
4
+ COMPONENTS = ["aarch64", "aarch64asmparser", "aarch64asmprinter", "aarch64codegen", "aarch64desc", "aarch64disassembler", "aarch64info", "aarch64utils", "all", "all-targets", "analysis", "arm", "armasmparser", "armasmprinter", "armcodegen", "armdesc", "armdisassembler", "arminfo", "asmparser", "asmprinter", "bitreader", "bitwriter", "codegen", "core", "cppbackend", "cppbackendcodegen", "cppbackendinfo", "debuginfo", "engine", "executionengine", "hexagon", "hexagonasmprinter", "hexagoncodegen", "hexagondesc", "hexagoninfo", "instcombine", "instrumentation", "interpreter", "ipa", "ipo", "irreader", "jit", "linker", "lto", "mc", "mcdisassembler", "mcjit", "mcparser", "mips", "mipsasmparser", "mipsasmprinter", "mipscodegen", "mipsdesc", "mipsdisassembler", "mipsinfo", "msp430", "msp430asmprinter", "msp430codegen", "msp430desc", "msp430info", "native", "nativecodegen", "nvptx", "nvptxasmprinter", "nvptxcodegen", "nvptxdesc", "nvptxinfo", "objcarcopts", "object", "option", "powerpc", "powerpcasmparser", "powerpcasmprinter", "powerpccodegen", "powerpcdesc", "powerpcinfo", "r600", "r600asmprinter", "r600codegen", "r600desc", "r600info", "runtimedyld", "scalaropts", "selectiondag", "sparc", "sparccodegen", "sparcdesc", "sparcinfo", "support", "systemz", "systemzasmparser", "systemzasmprinter", "systemzcodegen", "systemzdesc", "systemzdisassembler", "systemzinfo", "tablegen", "target", "transformutils", "vectorize", "x86", "x86asmparser", "x86asmprinter", "x86codegen", "x86desc", "x86disassembler", "x86info", "x86utils", "xcore", "xcoreasmprinter", "xcorecodegen", "xcoredesc", "xcoredisassembler", "xcoreinfo"]
5
+ TARGETS_BUILT = ["X86", "Sparc", "PowerPC", "AArch64", "ARM", "Mips", "XCore", "MSP430", "CppBackend", "NVPTX", "Hexagon", "SystemZ", "R600"]
6
6
  HOST_TARGET = "x86_64-pc-linux-gnu "
7
7
  BUILD_MODE = "Release "
8
- CFLAGS = "-I/usr/lib/llvm-3.3/include -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -g -O2 -fomit-frame-pointer -fPIC "
8
+ CFLAGS = "-I/usr/lib/llvm-3.4/include -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -g -O2 -fomit-frame-pointer -fPIC "
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ require 'ffi'
4
4
 
5
5
  module LLVM::C
6
6
  extend FFI::Library
7
- ffi_lib 'LLVM-3.3'
7
+ ffi_lib 'LLVM-3.4'
8
8
 
9
9
  def self.attach_function(name, *_)
10
10
  begin; super; rescue FFI::NotFoundError => e
@@ -226,28 +226,14 @@ module LLVM
226
226
  end
227
227
  end
228
228
 
229
- # Print the module's IR to the given IO object or integer file descriptor.
230
- #
231
- # The IO object#fileno must not be nil. If fd_or_io is nil or omitted,
232
- # dump the module to the output stream for debugging (stderr).
233
- def dump(fd_or_io=nil)
234
- if fd_or_io.nil?
235
- C.dump_module(self)
236
- else
237
- fd = if fd_or_io.kind_of? ::Integer
238
- fd_or_io
239
- elsif fd_or_io.respond_to? :fileno
240
- fd_or_io.fileno
241
- end
229
+ # Returns the LLVM IR of the module as a string.
230
+ def to_s
231
+ C.print_module_to_string(self)
232
+ end
242
233
 
243
- raise ArgumentError, 'Expected IO object or Integer file descriptor' if fd.nil?
244
- Support::C.print_module(
245
- self,
246
- fd,
247
- 0, # should_close=false : not be closed automatically
248
- 0 # unbuffered=false : buffered internally
249
- )
250
- end
234
+ # Print the module's IR to the standard error.
235
+ def dump
236
+ C.dump_module(self)
251
237
  end
252
238
 
253
239
  end
@@ -56,7 +56,7 @@ module LLVM
56
56
 
57
57
  # Print the type's representation to stdout.
58
58
  def dump
59
- Support::C.dump_type(self)
59
+ C.dump_type(self)
60
60
  end
61
61
 
62
62
  # Creates an array type of Type with the given size.
@@ -4,7 +4,7 @@ require 'ffi'
4
4
 
5
5
  module LLVM::C
6
6
  extend FFI::Library
7
- ffi_lib 'LLVM-3.3'
7
+ ffi_lib 'LLVM-3.4'
8
8
 
9
9
  def self.attach_function(name, *_)
10
10
  begin; super; rescue FFI::NotFoundError => e
@@ -256,6 +256,8 @@ module LLVM::C
256
256
  #
257
257
  # :bit_cast ::
258
258
  #
259
+ # :addr_space_cast ::
260
+ #
259
261
  # :i_cmp ::
260
262
  # Other Operators
261
263
  # :f_cmp ::
@@ -337,6 +339,7 @@ module LLVM::C
337
339
  :ptr_to_int, 39,
338
340
  :int_to_ptr, 40,
339
341
  :bit_cast, 41,
342
+ :addr_space_cast, 60,
340
343
  :i_cmp, 42,
341
344
  :f_cmp, 43,
342
345
  :phi, 44,
@@ -434,7 +437,7 @@ module LLVM::C
434
437
  # < Same, but only replaced by something
435
438
  # equivalent.
436
439
  # :weak_any ::
437
- # < Like LinkOnceODR, but possibly hidden.
440
+ # < Obsolete
438
441
  # :weak_odr ::
439
442
  # < Keep one copy of function when linking (weak)
440
443
  # :appending ::
@@ -515,6 +518,10 @@ module LLVM::C
515
518
  #
516
519
  # :cold ::
517
520
  #
521
+ # :web_kit_js ::
522
+ #
523
+ # :any_reg ::
524
+ #
518
525
  # :x86_stdcall ::
519
526
  #
520
527
  # :x86_fastcall ::
@@ -527,6 +534,8 @@ module LLVM::C
527
534
  :c, 0,
528
535
  :fast, 8,
529
536
  :cold, 9,
537
+ :web_kit_js, 12,
538
+ :any_reg, 13,
530
539
  :x86_stdcall, 64,
531
540
  :x86_fastcall, 65
532
541
  ]
@@ -691,16 +700,16 @@ module LLVM::C
691
700
  # < Lowest level of atomicity, guarantees
692
701
  # somewhat sane results, lock free.
693
702
  # :acquire ::
694
- # < guarantees that if you take all the
695
- # operations affecting a specific address,
703
+ # < guarantees that if you take all the
704
+ # operations affecting a specific address,
696
705
  # a consistent ordering exists
697
706
  # :release ::
698
- # < Acquire provides a barrier of the sort
699
- # necessary to acquire a lock to access other
707
+ # < Acquire provides a barrier of the sort
708
+ # necessary to acquire a lock to access other
700
709
  # memory with normal loads and stores.
701
710
  # :acquire_release ::
702
- # < Release is similar to Acquire, but with
703
- # a barrier of the sort necessary to release
711
+ # < Release is similar to Acquire, but with
712
+ # a barrier of the sort necessary to release
704
713
  # a lock.
705
714
  #
706
715
  # @method _enum_atomic_ordering_
@@ -738,15 +747,15 @@ module LLVM::C
738
747
  # < Xor a value and return the old one
739
748
  # :min ::
740
749
  # < Sets the value if it's greater than the
741
- # original using a signed comparison and return
750
+ # original using a signed comparison and return
742
751
  # the old one
743
752
  # :u_max ::
744
753
  # < Sets the value if it's Smaller than the
745
- # original using a signed comparison and return
754
+ # original using a signed comparison and return
746
755
  # the old one
747
756
  # :u_min ::
748
757
  # < Sets the value if it's greater than the
749
- # original using an unsigned comparison and return
758
+ # original using an unsigned comparison and return
750
759
  # the old one
751
760
  #
752
761
  # @method _enum_atomic_rmw_bin_op_
@@ -785,12 +794,49 @@ module LLVM::C
785
794
 
786
795
  # ===-- Error handling ----------------------------------------------------===
787
796
  #
797
+ # @method create_message(message)
798
+ # @param [String] message
799
+ # @return [String]
800
+ # @scope class
801
+ attach_function :create_message, :LLVMCreateMessage, [:string], :string
802
+
803
+ # (Not documented)
804
+ #
788
805
  # @method dispose_message(message)
789
806
  # @param [String] message
790
807
  # @return [nil]
791
808
  # @scope class
792
809
  attach_function :dispose_message, :LLVMDisposeMessage, [:string], :void
793
810
 
811
+ # Install a fatal error handler. By default, if LLVM detects a fatal error, it
812
+ # will call exit(1). This may not be appropriate in many contexts. For example,
813
+ # doing exit(1) will bypass many crash reporting/tracing system tools. This
814
+ # function allows you to install a callback that will be invoked prior to the
815
+ # call to exit(1).
816
+ #
817
+ # @method install_fatal_error_handler(handler)
818
+ # @param [FFI::Pointer(FatalErrorHandler)] handler
819
+ # @return [nil]
820
+ # @scope class
821
+ attach_function :install_fatal_error_handler, :LLVMInstallFatalErrorHandler, [:pointer], :void
822
+
823
+ # Reset the fatal error handler. This resets LLVM's fatal error handling
824
+ # behavior to the default.
825
+ #
826
+ # @method reset_fatal_error_handler()
827
+ # @return [nil]
828
+ # @scope class
829
+ attach_function :reset_fatal_error_handler, :LLVMResetFatalErrorHandler, [], :void
830
+
831
+ # Enable LLVM's built-in stack trace code. This intercepts the OS's crash
832
+ # signals and prints which component of LLVM you were in at the time if the
833
+ # crash.
834
+ #
835
+ # @method enable_pretty_stack_trace()
836
+ # @return [nil]
837
+ # @scope class
838
+ attach_function :enable_pretty_stack_trace, :LLVMEnablePrettyStackTrace, [], :void
839
+
794
840
  # Create a new context.
795
841
  #
796
842
  # Every call to this function should be paired with a call to
@@ -940,6 +986,17 @@ module LLVM::C
940
986
  # @scope class
941
987
  attach_function :print_module_to_file, :LLVMPrintModuleToFile, [OpaqueModule, :string, :pointer], :int
942
988
 
989
+ # Return a string representation of the module. Use
990
+ # LLVMDisposeMessage to free the string.
991
+ #
992
+ # @see Module::print()
993
+ #
994
+ # @method print_module_to_string(m)
995
+ # @param [OpaqueModule] m
996
+ # @return [String]
997
+ # @scope class
998
+ attach_function :print_module_to_string, :LLVMPrintModuleToString, [OpaqueModule], :string
999
+
943
1000
  # Set inline assembly for a module.
944
1001
  #
945
1002
  # @see Module::setModuleInlineAsm()
@@ -1111,6 +1168,27 @@ module LLVM::C
1111
1168
  # @scope class
1112
1169
  attach_function :get_type_context, :LLVMGetTypeContext, [OpaqueType], OpaqueContext
1113
1170
 
1171
+ # Dump a representation of a type to stderr.
1172
+ #
1173
+ # @see llvm::Type::dump()
1174
+ #
1175
+ # @method dump_type(val)
1176
+ # @param [OpaqueType] val
1177
+ # @return [nil]
1178
+ # @scope class
1179
+ attach_function :dump_type, :LLVMDumpType, [OpaqueType], :void
1180
+
1181
+ # Return a string representation of the type. Use
1182
+ # LLVMDisposeMessage to free the string.
1183
+ #
1184
+ # @see llvm::Type::print()
1185
+ #
1186
+ # @method print_type_to_string(val)
1187
+ # @param [OpaqueType] val
1188
+ # @return [String]
1189
+ # @scope class
1190
+ attach_function :print_type_to_string, :LLVMPrintTypeToString, [OpaqueType], :string
1191
+
1114
1192
  # Obtain an integer type from a context with specified bit width.
1115
1193
  #
1116
1194
  # @method int1_type_in_context(c)
@@ -1646,6 +1724,17 @@ module LLVM::C
1646
1724
  # @scope class
1647
1725
  attach_function :dump_value, :LLVMDumpValue, [OpaqueValue], :void
1648
1726
 
1727
+ # Return a string representation of the value. Use
1728
+ # LLVMDisposeMessage to free the string.
1729
+ #
1730
+ # @see llvm::Value::print()
1731
+ #
1732
+ # @method print_value_to_string(val)
1733
+ # @param [OpaqueValue] val
1734
+ # @return [String]
1735
+ # @scope class
1736
+ attach_function :print_value_to_string, :LLVMPrintValueToString, [OpaqueValue], :string
1737
+
1649
1738
  # Replace all uses of a value with another one.
1650
1739
  #
1651
1740
  # @see llvm::Value::replaceAllUsesWith()
@@ -1673,7 +1762,15 @@ module LLVM::C
1673
1762
  # @scope class
1674
1763
  attach_function :is_undef, :LLVMIsUndef, [OpaqueValue], :int
1675
1764
 
1676
- # (Not documented)
1765
+ # Convert value instances between types.
1766
+ #
1767
+ # Internally, an LLVMValueRef is "pinned" to a specific type. This
1768
+ # series of functions allows you to cast an instance to a specific
1769
+ # type.
1770
+ #
1771
+ # If the cast is not valid for the specified type, NULL is returned.
1772
+ #
1773
+ # @see llvm::dyn_cast_or_null<>
1677
1774
  #
1678
1775
  # @method is_a_argument(val)
1679
1776
  # @param [OpaqueValue] val
@@ -1681,7 +1778,7 @@ module LLVM::C
1681
1778
  # @scope class
1682
1779
  attach_function :is_a_argument, :LLVMIsAArgument, [OpaqueValue], OpaqueValue
1683
1780
 
1684
- # (Not documented)
1781
+ # @}
1685
1782
  #
1686
1783
  # @method is_a_basic_block(val)
1687
1784
  # @param [OpaqueValue] val
@@ -1689,7 +1786,7 @@ module LLVM::C
1689
1786
  # @scope class
1690
1787
  attach_function :is_a_basic_block, :LLVMIsABasicBlock, [OpaqueValue], OpaqueValue
1691
1788
 
1692
- # (Not documented)
1789
+ # @}
1693
1790
  #
1694
1791
  # @method is_a_inline_asm(val)
1695
1792
  # @param [OpaqueValue] val
@@ -1697,7 +1794,7 @@ module LLVM::C
1697
1794
  # @scope class
1698
1795
  attach_function :is_a_inline_asm, :LLVMIsAInlineAsm, [OpaqueValue], OpaqueValue
1699
1796
 
1700
- # (Not documented)
1797
+ # @}
1701
1798
  #
1702
1799
  # @method is_amd_node(val)
1703
1800
  # @param [OpaqueValue] val
@@ -1705,7 +1802,7 @@ module LLVM::C
1705
1802
  # @scope class
1706
1803
  attach_function :is_amd_node, :LLVMIsAMDNode, [OpaqueValue], OpaqueValue
1707
1804
 
1708
- # (Not documented)
1805
+ # @}
1709
1806
  #
1710
1807
  # @method is_amd_string(val)
1711
1808
  # @param [OpaqueValue] val
@@ -1713,7 +1810,7 @@ module LLVM::C
1713
1810
  # @scope class
1714
1811
  attach_function :is_amd_string, :LLVMIsAMDString, [OpaqueValue], OpaqueValue
1715
1812
 
1716
- # (Not documented)
1813
+ # @}
1717
1814
  #
1718
1815
  # @method is_a_user(val)
1719
1816
  # @param [OpaqueValue] val
@@ -1721,7 +1818,7 @@ module LLVM::C
1721
1818
  # @scope class
1722
1819
  attach_function :is_a_user, :LLVMIsAUser, [OpaqueValue], OpaqueValue
1723
1820
 
1724
- # (Not documented)
1821
+ # @}
1725
1822
  #
1726
1823
  # @method is_a_constant(val)
1727
1824
  # @param [OpaqueValue] val
@@ -1729,7 +1826,7 @@ module LLVM::C
1729
1826
  # @scope class
1730
1827
  attach_function :is_a_constant, :LLVMIsAConstant, [OpaqueValue], OpaqueValue
1731
1828
 
1732
- # (Not documented)
1829
+ # @}
1733
1830
  #
1734
1831
  # @method is_a_block_address(val)
1735
1832
  # @param [OpaqueValue] val
@@ -1737,7 +1834,7 @@ module LLVM::C
1737
1834
  # @scope class
1738
1835
  attach_function :is_a_block_address, :LLVMIsABlockAddress, [OpaqueValue], OpaqueValue
1739
1836
 
1740
- # (Not documented)
1837
+ # @}
1741
1838
  #
1742
1839
  # @method is_a_constant_aggregate_zero(val)
1743
1840
  # @param [OpaqueValue] val
@@ -1745,7 +1842,7 @@ module LLVM::C
1745
1842
  # @scope class
1746
1843
  attach_function :is_a_constant_aggregate_zero, :LLVMIsAConstantAggregateZero, [OpaqueValue], OpaqueValue
1747
1844
 
1748
- # (Not documented)
1845
+ # @}
1749
1846
  #
1750
1847
  # @method is_a_constant_array(val)
1751
1848
  # @param [OpaqueValue] val
@@ -1753,7 +1850,31 @@ module LLVM::C
1753
1850
  # @scope class
1754
1851
  attach_function :is_a_constant_array, :LLVMIsAConstantArray, [OpaqueValue], OpaqueValue
1755
1852
 
1756
- # (Not documented)
1853
+ # @}
1854
+ #
1855
+ # @method is_a_constant_data_sequential(val)
1856
+ # @param [OpaqueValue] val
1857
+ # @return [OpaqueValue]
1858
+ # @scope class
1859
+ attach_function :is_a_constant_data_sequential, :LLVMIsAConstantDataSequential, [OpaqueValue], OpaqueValue
1860
+
1861
+ # @}
1862
+ #
1863
+ # @method is_a_constant_data_array(val)
1864
+ # @param [OpaqueValue] val
1865
+ # @return [OpaqueValue]
1866
+ # @scope class
1867
+ attach_function :is_a_constant_data_array, :LLVMIsAConstantDataArray, [OpaqueValue], OpaqueValue
1868
+
1869
+ # @}
1870
+ #
1871
+ # @method is_a_constant_data_vector(val)
1872
+ # @param [OpaqueValue] val
1873
+ # @return [OpaqueValue]
1874
+ # @scope class
1875
+ attach_function :is_a_constant_data_vector, :LLVMIsAConstantDataVector, [OpaqueValue], OpaqueValue
1876
+
1877
+ # @}
1757
1878
  #
1758
1879
  # @method is_a_constant_expr(val)
1759
1880
  # @param [OpaqueValue] val
@@ -1761,7 +1882,7 @@ module LLVM::C
1761
1882
  # @scope class
1762
1883
  attach_function :is_a_constant_expr, :LLVMIsAConstantExpr, [OpaqueValue], OpaqueValue
1763
1884
 
1764
- # (Not documented)
1885
+ # @}
1765
1886
  #
1766
1887
  # @method is_a_constant_fp(val)
1767
1888
  # @param [OpaqueValue] val
@@ -1769,7 +1890,7 @@ module LLVM::C
1769
1890
  # @scope class
1770
1891
  attach_function :is_a_constant_fp, :LLVMIsAConstantFP, [OpaqueValue], OpaqueValue
1771
1892
 
1772
- # (Not documented)
1893
+ # @}
1773
1894
  #
1774
1895
  # @method is_a_constant_int(val)
1775
1896
  # @param [OpaqueValue] val
@@ -1777,7 +1898,7 @@ module LLVM::C
1777
1898
  # @scope class
1778
1899
  attach_function :is_a_constant_int, :LLVMIsAConstantInt, [OpaqueValue], OpaqueValue
1779
1900
 
1780
- # (Not documented)
1901
+ # @}
1781
1902
  #
1782
1903
  # @method is_a_constant_pointer_null(val)
1783
1904
  # @param [OpaqueValue] val
@@ -1785,7 +1906,7 @@ module LLVM::C
1785
1906
  # @scope class
1786
1907
  attach_function :is_a_constant_pointer_null, :LLVMIsAConstantPointerNull, [OpaqueValue], OpaqueValue
1787
1908
 
1788
- # (Not documented)
1909
+ # @}
1789
1910
  #
1790
1911
  # @method is_a_constant_struct(val)
1791
1912
  # @param [OpaqueValue] val
@@ -1793,7 +1914,7 @@ module LLVM::C
1793
1914
  # @scope class
1794
1915
  attach_function :is_a_constant_struct, :LLVMIsAConstantStruct, [OpaqueValue], OpaqueValue
1795
1916
 
1796
- # (Not documented)
1917
+ # @}
1797
1918
  #
1798
1919
  # @method is_a_constant_vector(val)
1799
1920
  # @param [OpaqueValue] val
@@ -1801,7 +1922,7 @@ module LLVM::C
1801
1922
  # @scope class
1802
1923
  attach_function :is_a_constant_vector, :LLVMIsAConstantVector, [OpaqueValue], OpaqueValue
1803
1924
 
1804
- # (Not documented)
1925
+ # @}
1805
1926
  #
1806
1927
  # @method is_a_global_value(val)
1807
1928
  # @param [OpaqueValue] val
@@ -1809,7 +1930,7 @@ module LLVM::C
1809
1930
  # @scope class
1810
1931
  attach_function :is_a_global_value, :LLVMIsAGlobalValue, [OpaqueValue], OpaqueValue
1811
1932
 
1812
- # (Not documented)
1933
+ # @}
1813
1934
  #
1814
1935
  # @method is_a_function(val)
1815
1936
  # @param [OpaqueValue] val
@@ -1817,7 +1938,7 @@ module LLVM::C
1817
1938
  # @scope class
1818
1939
  attach_function :is_a_function, :LLVMIsAFunction, [OpaqueValue], OpaqueValue
1819
1940
 
1820
- # (Not documented)
1941
+ # @}
1821
1942
  #
1822
1943
  # @method is_a_global_alias(val)
1823
1944
  # @param [OpaqueValue] val
@@ -1825,7 +1946,7 @@ module LLVM::C
1825
1946
  # @scope class
1826
1947
  attach_function :is_a_global_alias, :LLVMIsAGlobalAlias, [OpaqueValue], OpaqueValue
1827
1948
 
1828
- # (Not documented)
1949
+ # @}
1829
1950
  #
1830
1951
  # @method is_a_global_variable(val)
1831
1952
  # @param [OpaqueValue] val
@@ -1833,7 +1954,7 @@ module LLVM::C
1833
1954
  # @scope class
1834
1955
  attach_function :is_a_global_variable, :LLVMIsAGlobalVariable, [OpaqueValue], OpaqueValue
1835
1956
 
1836
- # (Not documented)
1957
+ # @}
1837
1958
  #
1838
1959
  # @method is_a_undef_value(val)
1839
1960
  # @param [OpaqueValue] val
@@ -1841,7 +1962,7 @@ module LLVM::C
1841
1962
  # @scope class
1842
1963
  attach_function :is_a_undef_value, :LLVMIsAUndefValue, [OpaqueValue], OpaqueValue
1843
1964
 
1844
- # (Not documented)
1965
+ # @}
1845
1966
  #
1846
1967
  # @method is_a_instruction(val)
1847
1968
  # @param [OpaqueValue] val
@@ -1849,7 +1970,7 @@ module LLVM::C
1849
1970
  # @scope class
1850
1971
  attach_function :is_a_instruction, :LLVMIsAInstruction, [OpaqueValue], OpaqueValue
1851
1972
 
1852
- # (Not documented)
1973
+ # @}
1853
1974
  #
1854
1975
  # @method is_a_binary_operator(val)
1855
1976
  # @param [OpaqueValue] val
@@ -1857,7 +1978,7 @@ module LLVM::C
1857
1978
  # @scope class
1858
1979
  attach_function :is_a_binary_operator, :LLVMIsABinaryOperator, [OpaqueValue], OpaqueValue
1859
1980
 
1860
- # (Not documented)
1981
+ # @}
1861
1982
  #
1862
1983
  # @method is_a_call_inst(val)
1863
1984
  # @param [OpaqueValue] val
@@ -1865,7 +1986,7 @@ module LLVM::C
1865
1986
  # @scope class
1866
1987
  attach_function :is_a_call_inst, :LLVMIsACallInst, [OpaqueValue], OpaqueValue
1867
1988
 
1868
- # (Not documented)
1989
+ # @}
1869
1990
  #
1870
1991
  # @method is_a_intrinsic_inst(val)
1871
1992
  # @param [OpaqueValue] val
@@ -1873,7 +1994,7 @@ module LLVM::C
1873
1994
  # @scope class
1874
1995
  attach_function :is_a_intrinsic_inst, :LLVMIsAIntrinsicInst, [OpaqueValue], OpaqueValue
1875
1996
 
1876
- # (Not documented)
1997
+ # @}
1877
1998
  #
1878
1999
  # @method is_a_dbg_info_intrinsic(val)
1879
2000
  # @param [OpaqueValue] val
@@ -1881,7 +2002,7 @@ module LLVM::C
1881
2002
  # @scope class
1882
2003
  attach_function :is_a_dbg_info_intrinsic, :LLVMIsADbgInfoIntrinsic, [OpaqueValue], OpaqueValue
1883
2004
 
1884
- # (Not documented)
2005
+ # @}
1885
2006
  #
1886
2007
  # @method is_a_dbg_declare_inst(val)
1887
2008
  # @param [OpaqueValue] val
@@ -1889,7 +2010,7 @@ module LLVM::C
1889
2010
  # @scope class
1890
2011
  attach_function :is_a_dbg_declare_inst, :LLVMIsADbgDeclareInst, [OpaqueValue], OpaqueValue
1891
2012
 
1892
- # (Not documented)
2013
+ # @}
1893
2014
  #
1894
2015
  # @method is_a_mem_intrinsic(val)
1895
2016
  # @param [OpaqueValue] val
@@ -1897,7 +2018,7 @@ module LLVM::C
1897
2018
  # @scope class
1898
2019
  attach_function :is_a_mem_intrinsic, :LLVMIsAMemIntrinsic, [OpaqueValue], OpaqueValue
1899
2020
 
1900
- # (Not documented)
2021
+ # @}
1901
2022
  #
1902
2023
  # @method is_a_mem_cpy_inst(val)
1903
2024
  # @param [OpaqueValue] val
@@ -1905,7 +2026,7 @@ module LLVM::C
1905
2026
  # @scope class
1906
2027
  attach_function :is_a_mem_cpy_inst, :LLVMIsAMemCpyInst, [OpaqueValue], OpaqueValue
1907
2028
 
1908
- # (Not documented)
2029
+ # @}
1909
2030
  #
1910
2031
  # @method is_a_mem_move_inst(val)
1911
2032
  # @param [OpaqueValue] val
@@ -1913,7 +2034,7 @@ module LLVM::C
1913
2034
  # @scope class
1914
2035
  attach_function :is_a_mem_move_inst, :LLVMIsAMemMoveInst, [OpaqueValue], OpaqueValue
1915
2036
 
1916
- # (Not documented)
2037
+ # @}
1917
2038
  #
1918
2039
  # @method is_a_mem_set_inst(val)
1919
2040
  # @param [OpaqueValue] val
@@ -1921,7 +2042,7 @@ module LLVM::C
1921
2042
  # @scope class
1922
2043
  attach_function :is_a_mem_set_inst, :LLVMIsAMemSetInst, [OpaqueValue], OpaqueValue
1923
2044
 
1924
- # (Not documented)
2045
+ # @}
1925
2046
  #
1926
2047
  # @method is_a_cmp_inst(val)
1927
2048
  # @param [OpaqueValue] val
@@ -1929,7 +2050,7 @@ module LLVM::C
1929
2050
  # @scope class
1930
2051
  attach_function :is_a_cmp_inst, :LLVMIsACmpInst, [OpaqueValue], OpaqueValue
1931
2052
 
1932
- # (Not documented)
2053
+ # @}
1933
2054
  #
1934
2055
  # @method is_af_cmp_inst(val)
1935
2056
  # @param [OpaqueValue] val
@@ -1937,7 +2058,7 @@ module LLVM::C
1937
2058
  # @scope class
1938
2059
  attach_function :is_af_cmp_inst, :LLVMIsAFCmpInst, [OpaqueValue], OpaqueValue
1939
2060
 
1940
- # (Not documented)
2061
+ # @}
1941
2062
  #
1942
2063
  # @method is_ai_cmp_inst(val)
1943
2064
  # @param [OpaqueValue] val
@@ -1945,7 +2066,7 @@ module LLVM::C
1945
2066
  # @scope class
1946
2067
  attach_function :is_ai_cmp_inst, :LLVMIsAICmpInst, [OpaqueValue], OpaqueValue
1947
2068
 
1948
- # (Not documented)
2069
+ # @}
1949
2070
  #
1950
2071
  # @method is_a_extract_element_inst(val)
1951
2072
  # @param [OpaqueValue] val
@@ -1953,7 +2074,7 @@ module LLVM::C
1953
2074
  # @scope class
1954
2075
  attach_function :is_a_extract_element_inst, :LLVMIsAExtractElementInst, [OpaqueValue], OpaqueValue
1955
2076
 
1956
- # (Not documented)
2077
+ # @}
1957
2078
  #
1958
2079
  # @method is_a_get_element_ptr_inst(val)
1959
2080
  # @param [OpaqueValue] val
@@ -1961,7 +2082,7 @@ module LLVM::C
1961
2082
  # @scope class
1962
2083
  attach_function :is_a_get_element_ptr_inst, :LLVMIsAGetElementPtrInst, [OpaqueValue], OpaqueValue
1963
2084
 
1964
- # (Not documented)
2085
+ # @}
1965
2086
  #
1966
2087
  # @method is_a_insert_element_inst(val)
1967
2088
  # @param [OpaqueValue] val
@@ -1969,7 +2090,7 @@ module LLVM::C
1969
2090
  # @scope class
1970
2091
  attach_function :is_a_insert_element_inst, :LLVMIsAInsertElementInst, [OpaqueValue], OpaqueValue
1971
2092
 
1972
- # (Not documented)
2093
+ # @}
1973
2094
  #
1974
2095
  # @method is_a_insert_value_inst(val)
1975
2096
  # @param [OpaqueValue] val
@@ -1977,7 +2098,7 @@ module LLVM::C
1977
2098
  # @scope class
1978
2099
  attach_function :is_a_insert_value_inst, :LLVMIsAInsertValueInst, [OpaqueValue], OpaqueValue
1979
2100
 
1980
- # (Not documented)
2101
+ # @}
1981
2102
  #
1982
2103
  # @method is_a_landing_pad_inst(val)
1983
2104
  # @param [OpaqueValue] val
@@ -1985,7 +2106,7 @@ module LLVM::C
1985
2106
  # @scope class
1986
2107
  attach_function :is_a_landing_pad_inst, :LLVMIsALandingPadInst, [OpaqueValue], OpaqueValue
1987
2108
 
1988
- # (Not documented)
2109
+ # @}
1989
2110
  #
1990
2111
  # @method is_aphi_node(val)
1991
2112
  # @param [OpaqueValue] val
@@ -1993,7 +2114,7 @@ module LLVM::C
1993
2114
  # @scope class
1994
2115
  attach_function :is_aphi_node, :LLVMIsAPHINode, [OpaqueValue], OpaqueValue
1995
2116
 
1996
- # (Not documented)
2117
+ # @}
1997
2118
  #
1998
2119
  # @method is_a_select_inst(val)
1999
2120
  # @param [OpaqueValue] val
@@ -2001,7 +2122,7 @@ module LLVM::C
2001
2122
  # @scope class
2002
2123
  attach_function :is_a_select_inst, :LLVMIsASelectInst, [OpaqueValue], OpaqueValue
2003
2124
 
2004
- # (Not documented)
2125
+ # @}
2005
2126
  #
2006
2127
  # @method is_a_shuffle_vector_inst(val)
2007
2128
  # @param [OpaqueValue] val
@@ -2009,7 +2130,7 @@ module LLVM::C
2009
2130
  # @scope class
2010
2131
  attach_function :is_a_shuffle_vector_inst, :LLVMIsAShuffleVectorInst, [OpaqueValue], OpaqueValue
2011
2132
 
2012
- # (Not documented)
2133
+ # @}
2013
2134
  #
2014
2135
  # @method is_a_store_inst(val)
2015
2136
  # @param [OpaqueValue] val
@@ -2017,7 +2138,7 @@ module LLVM::C
2017
2138
  # @scope class
2018
2139
  attach_function :is_a_store_inst, :LLVMIsAStoreInst, [OpaqueValue], OpaqueValue
2019
2140
 
2020
- # (Not documented)
2141
+ # @}
2021
2142
  #
2022
2143
  # @method is_a_terminator_inst(val)
2023
2144
  # @param [OpaqueValue] val
@@ -2025,7 +2146,7 @@ module LLVM::C
2025
2146
  # @scope class
2026
2147
  attach_function :is_a_terminator_inst, :LLVMIsATerminatorInst, [OpaqueValue], OpaqueValue
2027
2148
 
2028
- # (Not documented)
2149
+ # @}
2029
2150
  #
2030
2151
  # @method is_a_branch_inst(val)
2031
2152
  # @param [OpaqueValue] val
@@ -2033,7 +2154,7 @@ module LLVM::C
2033
2154
  # @scope class
2034
2155
  attach_function :is_a_branch_inst, :LLVMIsABranchInst, [OpaqueValue], OpaqueValue
2035
2156
 
2036
- # (Not documented)
2157
+ # @}
2037
2158
  #
2038
2159
  # @method is_a_indirect_br_inst(val)
2039
2160
  # @param [OpaqueValue] val
@@ -2041,7 +2162,7 @@ module LLVM::C
2041
2162
  # @scope class
2042
2163
  attach_function :is_a_indirect_br_inst, :LLVMIsAIndirectBrInst, [OpaqueValue], OpaqueValue
2043
2164
 
2044
- # (Not documented)
2165
+ # @}
2045
2166
  #
2046
2167
  # @method is_a_invoke_inst(val)
2047
2168
  # @param [OpaqueValue] val
@@ -2049,7 +2170,7 @@ module LLVM::C
2049
2170
  # @scope class
2050
2171
  attach_function :is_a_invoke_inst, :LLVMIsAInvokeInst, [OpaqueValue], OpaqueValue
2051
2172
 
2052
- # (Not documented)
2173
+ # @}
2053
2174
  #
2054
2175
  # @method is_a_return_inst(val)
2055
2176
  # @param [OpaqueValue] val
@@ -2057,7 +2178,7 @@ module LLVM::C
2057
2178
  # @scope class
2058
2179
  attach_function :is_a_return_inst, :LLVMIsAReturnInst, [OpaqueValue], OpaqueValue
2059
2180
 
2060
- # (Not documented)
2181
+ # @}
2061
2182
  #
2062
2183
  # @method is_a_switch_inst(val)
2063
2184
  # @param [OpaqueValue] val
@@ -2065,7 +2186,7 @@ module LLVM::C
2065
2186
  # @scope class
2066
2187
  attach_function :is_a_switch_inst, :LLVMIsASwitchInst, [OpaqueValue], OpaqueValue
2067
2188
 
2068
- # (Not documented)
2189
+ # @}
2069
2190
  #
2070
2191
  # @method is_a_unreachable_inst(val)
2071
2192
  # @param [OpaqueValue] val
@@ -2073,7 +2194,7 @@ module LLVM::C
2073
2194
  # @scope class
2074
2195
  attach_function :is_a_unreachable_inst, :LLVMIsAUnreachableInst, [OpaqueValue], OpaqueValue
2075
2196
 
2076
- # (Not documented)
2197
+ # @}
2077
2198
  #
2078
2199
  # @method is_a_resume_inst(val)
2079
2200
  # @param [OpaqueValue] val
@@ -2081,7 +2202,7 @@ module LLVM::C
2081
2202
  # @scope class
2082
2203
  attach_function :is_a_resume_inst, :LLVMIsAResumeInst, [OpaqueValue], OpaqueValue
2083
2204
 
2084
- # (Not documented)
2205
+ # @}
2085
2206
  #
2086
2207
  # @method is_a_unary_instruction(val)
2087
2208
  # @param [OpaqueValue] val
@@ -2089,7 +2210,7 @@ module LLVM::C
2089
2210
  # @scope class
2090
2211
  attach_function :is_a_unary_instruction, :LLVMIsAUnaryInstruction, [OpaqueValue], OpaqueValue
2091
2212
 
2092
- # (Not documented)
2213
+ # @}
2093
2214
  #
2094
2215
  # @method is_a_alloca_inst(val)
2095
2216
  # @param [OpaqueValue] val
@@ -2097,7 +2218,7 @@ module LLVM::C
2097
2218
  # @scope class
2098
2219
  attach_function :is_a_alloca_inst, :LLVMIsAAllocaInst, [OpaqueValue], OpaqueValue
2099
2220
 
2100
- # (Not documented)
2221
+ # @}
2101
2222
  #
2102
2223
  # @method is_a_cast_inst(val)
2103
2224
  # @param [OpaqueValue] val
@@ -2105,7 +2226,15 @@ module LLVM::C
2105
2226
  # @scope class
2106
2227
  attach_function :is_a_cast_inst, :LLVMIsACastInst, [OpaqueValue], OpaqueValue
2107
2228
 
2108
- # (Not documented)
2229
+ # @}
2230
+ #
2231
+ # @method is_a_addr_space_cast_inst(val)
2232
+ # @param [OpaqueValue] val
2233
+ # @return [OpaqueValue]
2234
+ # @scope class
2235
+ attach_function :is_a_addr_space_cast_inst, :LLVMIsAAddrSpaceCastInst, [OpaqueValue], OpaqueValue
2236
+
2237
+ # @}
2109
2238
  #
2110
2239
  # @method is_a_bit_cast_inst(val)
2111
2240
  # @param [OpaqueValue] val
@@ -2113,7 +2242,7 @@ module LLVM::C
2113
2242
  # @scope class
2114
2243
  attach_function :is_a_bit_cast_inst, :LLVMIsABitCastInst, [OpaqueValue], OpaqueValue
2115
2244
 
2116
- # (Not documented)
2245
+ # @}
2117
2246
  #
2118
2247
  # @method is_afp_ext_inst(val)
2119
2248
  # @param [OpaqueValue] val
@@ -2121,7 +2250,7 @@ module LLVM::C
2121
2250
  # @scope class
2122
2251
  attach_function :is_afp_ext_inst, :LLVMIsAFPExtInst, [OpaqueValue], OpaqueValue
2123
2252
 
2124
- # (Not documented)
2253
+ # @}
2125
2254
  #
2126
2255
  # @method is_afp_to_si_inst(val)
2127
2256
  # @param [OpaqueValue] val
@@ -2129,7 +2258,7 @@ module LLVM::C
2129
2258
  # @scope class
2130
2259
  attach_function :is_afp_to_si_inst, :LLVMIsAFPToSIInst, [OpaqueValue], OpaqueValue
2131
2260
 
2132
- # (Not documented)
2261
+ # @}
2133
2262
  #
2134
2263
  # @method is_afp_to_ui_inst(val)
2135
2264
  # @param [OpaqueValue] val
@@ -2137,7 +2266,7 @@ module LLVM::C
2137
2266
  # @scope class
2138
2267
  attach_function :is_afp_to_ui_inst, :LLVMIsAFPToUIInst, [OpaqueValue], OpaqueValue
2139
2268
 
2140
- # (Not documented)
2269
+ # @}
2141
2270
  #
2142
2271
  # @method is_afp_trunc_inst(val)
2143
2272
  # @param [OpaqueValue] val
@@ -2145,7 +2274,7 @@ module LLVM::C
2145
2274
  # @scope class
2146
2275
  attach_function :is_afp_trunc_inst, :LLVMIsAFPTruncInst, [OpaqueValue], OpaqueValue
2147
2276
 
2148
- # (Not documented)
2277
+ # @}
2149
2278
  #
2150
2279
  # @method is_a_int_to_ptr_inst(val)
2151
2280
  # @param [OpaqueValue] val
@@ -2153,7 +2282,7 @@ module LLVM::C
2153
2282
  # @scope class
2154
2283
  attach_function :is_a_int_to_ptr_inst, :LLVMIsAIntToPtrInst, [OpaqueValue], OpaqueValue
2155
2284
 
2156
- # (Not documented)
2285
+ # @}
2157
2286
  #
2158
2287
  # @method is_a_ptr_to_int_inst(val)
2159
2288
  # @param [OpaqueValue] val
@@ -2161,7 +2290,7 @@ module LLVM::C
2161
2290
  # @scope class
2162
2291
  attach_function :is_a_ptr_to_int_inst, :LLVMIsAPtrToIntInst, [OpaqueValue], OpaqueValue
2163
2292
 
2164
- # (Not documented)
2293
+ # @}
2165
2294
  #
2166
2295
  # @method is_as_ext_inst(val)
2167
2296
  # @param [OpaqueValue] val
@@ -2169,7 +2298,7 @@ module LLVM::C
2169
2298
  # @scope class
2170
2299
  attach_function :is_as_ext_inst, :LLVMIsASExtInst, [OpaqueValue], OpaqueValue
2171
2300
 
2172
- # (Not documented)
2301
+ # @}
2173
2302
  #
2174
2303
  # @method is_asi_to_fp_inst(val)
2175
2304
  # @param [OpaqueValue] val
@@ -2177,7 +2306,7 @@ module LLVM::C
2177
2306
  # @scope class
2178
2307
  attach_function :is_asi_to_fp_inst, :LLVMIsASIToFPInst, [OpaqueValue], OpaqueValue
2179
2308
 
2180
- # (Not documented)
2309
+ # @}
2181
2310
  #
2182
2311
  # @method is_a_trunc_inst(val)
2183
2312
  # @param [OpaqueValue] val
@@ -2185,7 +2314,7 @@ module LLVM::C
2185
2314
  # @scope class
2186
2315
  attach_function :is_a_trunc_inst, :LLVMIsATruncInst, [OpaqueValue], OpaqueValue
2187
2316
 
2188
- # (Not documented)
2317
+ # @}
2189
2318
  #
2190
2319
  # @method is_aui_to_fp_inst(val)
2191
2320
  # @param [OpaqueValue] val
@@ -2193,7 +2322,7 @@ module LLVM::C
2193
2322
  # @scope class
2194
2323
  attach_function :is_aui_to_fp_inst, :LLVMIsAUIToFPInst, [OpaqueValue], OpaqueValue
2195
2324
 
2196
- # (Not documented)
2325
+ # @}
2197
2326
  #
2198
2327
  # @method is_az_ext_inst(val)
2199
2328
  # @param [OpaqueValue] val
@@ -2201,7 +2330,7 @@ module LLVM::C
2201
2330
  # @scope class
2202
2331
  attach_function :is_az_ext_inst, :LLVMIsAZExtInst, [OpaqueValue], OpaqueValue
2203
2332
 
2204
- # (Not documented)
2333
+ # @}
2205
2334
  #
2206
2335
  # @method is_a_extract_value_inst(val)
2207
2336
  # @param [OpaqueValue] val
@@ -2209,7 +2338,7 @@ module LLVM::C
2209
2338
  # @scope class
2210
2339
  attach_function :is_a_extract_value_inst, :LLVMIsAExtractValueInst, [OpaqueValue], OpaqueValue
2211
2340
 
2212
- # (Not documented)
2341
+ # @}
2213
2342
  #
2214
2343
  # @method is_a_load_inst(val)
2215
2344
  # @param [OpaqueValue] val
@@ -2217,7 +2346,7 @@ module LLVM::C
2217
2346
  # @scope class
2218
2347
  attach_function :is_a_load_inst, :LLVMIsALoadInst, [OpaqueValue], OpaqueValue
2219
2348
 
2220
- # (Not documented)
2349
+ # @}
2221
2350
  #
2222
2351
  # @method is_ava_arg_inst(val)
2223
2352
  # @param [OpaqueValue] val
@@ -2383,10 +2512,10 @@ module LLVM::C
2383
2512
  # @method const_int_of_arbitrary_precision(int_ty, num_words, words)
2384
2513
  # @param [OpaqueType] int_ty
2385
2514
  # @param [Integer] num_words
2386
- # @param [FFI::Pointer(*Uint64T)] words
2515
+ # @param [unexposed] words
2387
2516
  # @return [OpaqueValue]
2388
2517
  # @scope class
2389
- attach_function :const_int_of_arbitrary_precision, :LLVMConstIntOfArbitraryPrecision, [OpaqueType, :uint, :pointer], OpaqueValue
2518
+ attach_function :const_int_of_arbitrary_precision, :LLVMConstIntOfArbitraryPrecision, [OpaqueType, :uint, :char], OpaqueValue
2390
2519
 
2391
2520
  # Obtain a constant value for an integer parsed from a string.
2392
2521
  #
@@ -3004,6 +3133,15 @@ module LLVM::C
3004
3133
  # @scope class
3005
3134
  attach_function :const_bit_cast, :LLVMConstBitCast, [OpaqueValue, OpaqueType], OpaqueValue
3006
3135
 
3136
+ # (Not documented)
3137
+ #
3138
+ # @method const_addr_space_cast(constant_val, to_type)
3139
+ # @param [OpaqueValue] constant_val
3140
+ # @param [OpaqueType] to_type
3141
+ # @return [OpaqueValue]
3142
+ # @scope class
3143
+ attach_function :const_addr_space_cast, :LLVMConstAddrSpaceCast, [OpaqueValue, OpaqueType], OpaqueValue
3144
+
3007
3145
  # (Not documented)
3008
3146
  #
3009
3147
  # @method const_z_ext_or_bit_cast(constant_val, to_type)
@@ -3214,18 +3352,24 @@ module LLVM::C
3214
3352
  # @scope class
3215
3353
  attach_function :set_visibility, :LLVMSetVisibility, [OpaqueValue, :visibility], :void
3216
3354
 
3217
- # (Not documented)
3355
+ # Obtain the preferred alignment of the value.
3356
+ # @see llvm::LoadInst::getAlignment()
3357
+ # @see llvm::StoreInst::getAlignment()
3358
+ # @see llvm::GlobalValue::getAlignment()
3218
3359
  #
3219
- # @method get_alignment(global)
3220
- # @param [OpaqueValue] global
3360
+ # @method get_alignment(v)
3361
+ # @param [OpaqueValue] v
3221
3362
  # @return [Integer]
3222
3363
  # @scope class
3223
3364
  attach_function :get_alignment, :LLVMGetAlignment, [OpaqueValue], :uint
3224
3365
 
3225
- # (Not documented)
3366
+ # Set the preferred alignment of the value.
3367
+ # @see llvm::LoadInst::setAlignment()
3368
+ # @see llvm::StoreInst::setAlignment()
3369
+ # @see llvm::GlobalValue::setAlignment()
3226
3370
  #
3227
- # @method set_alignment(global, bytes)
3228
- # @param [OpaqueValue] global
3371
+ # @method set_alignment(v, bytes)
3372
+ # @param [OpaqueValue] v
3229
3373
  # @param [Integer] bytes
3230
3374
  # @return [nil]
3231
3375
  # @scope class
@@ -3560,7 +3704,7 @@ module LLVM::C
3560
3704
 
3561
3705
  # Obtain the function to which this argument belongs.
3562
3706
  #
3563
- # Unlike other functions in this group, this one takes a LLVMValueRef
3707
+ # Unlike other functions in this group, this one takes an LLVMValueRef
3564
3708
  # that corresponds to a llvm::Attribute.
3565
3709
  #
3566
3710
  # The returned LLVMValueRef is the llvm::Function to which this
@@ -3594,7 +3738,7 @@ module LLVM::C
3594
3738
 
3595
3739
  # Obtain the next parameter to a function.
3596
3740
  #
3597
- # This takes a LLVMValueRef obtained from LLVMGetFirstParam() (which is
3741
+ # This takes an LLVMValueRef obtained from LLVMGetFirstParam() (which is
3598
3742
  # actually a wrapped iterator) and obtains the next parameter from the
3599
3743
  # underlying iterator.
3600
3744
  #
@@ -3751,7 +3895,7 @@ module LLVM::C
3751
3895
  # @scope class
3752
3896
  attach_function :basic_block_as_value, :LLVMBasicBlockAsValue, [OpaqueBasicBlock], OpaqueValue
3753
3897
 
3754
- # Determine whether a LLVMValueRef is itself a basic block.
3898
+ # Determine whether an LLVMValueRef is itself a basic block.
3755
3899
  #
3756
3900
  # @method value_is_basic_block(val)
3757
3901
  # @param [OpaqueValue] val
@@ -3759,7 +3903,7 @@ module LLVM::C
3759
3903
  # @scope class
3760
3904
  attach_function :value_is_basic_block, :LLVMValueIsBasicBlock, [OpaqueValue], :int
3761
3905
 
3762
- # Convert a LLVMValueRef to a LLVMBasicBlockRef instance.
3906
+ # Convert an LLVMValueRef to an LLVMBasicBlockRef instance.
3763
3907
  #
3764
3908
  # @method value_as_basic_block(val)
3765
3909
  # @param [OpaqueValue] val
@@ -3977,7 +4121,7 @@ module LLVM::C
3977
4121
 
3978
4122
  # Obtain the last instruction in a basic block.
3979
4123
  #
3980
- # The returned LLVMValueRef corresponds to a LLVM:Instruction.
4124
+ # The returned LLVMValueRef corresponds to an LLVM:Instruction.
3981
4125
  #
3982
4126
  # @method get_last_instruction(bb)
3983
4127
  # @param [OpaqueBasicBlock] bb
@@ -4196,7 +4340,7 @@ module LLVM::C
4196
4340
  # @scope class
4197
4341
  attach_function :count_incoming, :LLVMCountIncoming, [OpaqueValue], :uint
4198
4342
 
4199
- # Obtain an incoming value to a PHI node as a LLVMValueRef.
4343
+ # Obtain an incoming value to a PHI node as an LLVMValueRef.
4200
4344
  #
4201
4345
  # @method get_incoming_value(phi_node, index)
4202
4346
  # @param [OpaqueValue] phi_node
@@ -4205,7 +4349,7 @@ module LLVM::C
4205
4349
  # @scope class
4206
4350
  attach_function :get_incoming_value, :LLVMGetIncomingValue, [OpaqueValue, :uint], OpaqueValue
4207
4351
 
4208
- # Obtain an incoming value to a PHI node as a LLVMBasicBlockRef.
4352
+ # Obtain an incoming value to a PHI node as an LLVMBasicBlockRef.
4209
4353
  #
4210
4354
  # @method get_incoming_block(phi_node, index)
4211
4355
  # @param [OpaqueValue] phi_node
@@ -5091,6 +5235,17 @@ module LLVM::C
5091
5235
  # @scope class
5092
5236
  attach_function :build_bit_cast, :LLVMBuildBitCast, [OpaqueBuilder, OpaqueValue, OpaqueType, :string], OpaqueValue
5093
5237
 
5238
+ # (Not documented)
5239
+ #
5240
+ # @method build_addr_space_cast(opaque_builder, val, dest_ty, name)
5241
+ # @param [OpaqueBuilder] opaque_builder
5242
+ # @param [OpaqueValue] val
5243
+ # @param [OpaqueType] dest_ty
5244
+ # @param [String] name
5245
+ # @return [OpaqueValue]
5246
+ # @scope class
5247
+ attach_function :build_addr_space_cast, :LLVMBuildAddrSpaceCast, [OpaqueBuilder, OpaqueValue, OpaqueType, :string], OpaqueValue
5248
+
5094
5249
  # (Not documented)
5095
5250
  #
5096
5251
  # @method build_z_ext_or_bit_cast(opaque_builder, val, dest_ty, name)