Module: LLVM::C

Extended by:
FFI::Library
Defined in:
lib/llvm/core.rb,
lib/llvm/target.rb,
lib/llvm/core_ffi.rb,
lib/llvm/linker_ffi.rb,
lib/llvm/target_ffi.rb,
lib/llvm/analysis_ffi.rb,
lib/llvm/core/bitcode_ffi.rb,
lib/llvm/execution_engine_ffi.rb,
lib/llvm/transforms/pass_builder.rb

Defined Under Namespace

Modules: TargetWrappers Classes: MCJITCompilerOptions, OpaqueExecutionEngine, OpaqueGenericValue, OpaqueMCJITMemoryManager, OpaqueTargetData, OpaqueTargetLibraryInfotData, OpaqueTargetMachine, Target

Class Method Summary collapse

Class Method Details

._callback_diagnostic_handler_(diagnostic_info_ref, void) ⇒ FFI::Pointer(DiagnosticInfoRef)

Contexts are execution states for the core LLVM IR system.

Most types are tied to a context instance. Multiple contexts can exist simultaneously. A single context is not thread safe. However, different contexts can execute on different threads simultaneously.

@{

This entry is only for documentation and no real method.

Parameters:

  • diagnostic_info_ref (FFI::Pointer(DiagnosticInfoRef))
  • void (FFI::Pointer(*Void))

Returns:

  • (FFI::Pointer(DiagnosticInfoRef))


871
# File 'lib/llvm/core_ffi.rb', line 871

callback :diagnostic_handler, [:pointer, :pointer], :pointer

._callback_memory_manager_allocate_code_section_callback_(uint8_t, opaque, size, alignment, section_id, section_name) ⇒ Integer

– Operations on memory managers ————————————-===

This entry is only for documentation and no real method.

Parameters:

  • uint8_t (Integer)
  • opaque (FFI::Pointer(*Void))
  • size (Integer)
  • alignment (Integer)
  • section_id (Integer)
  • section_name (String)

Returns:

  • (Integer)


364
# File 'lib/llvm/execution_engine_ffi.rb', line 364

callback :memory_manager_allocate_code_section_callback, [:uchar, :pointer, :ulong, :uint, :uint, :string], :uchar

._callback_memory_manager_allocate_data_section_callback_(uint8_t, opaque, size, alignment, section_id, section_name, is_read_only) ⇒ Integer

(Not documented)

This entry is only for documentation and no real method.

Parameters:

  • uint8_t (Integer)
  • opaque (FFI::Pointer(*Void))
  • size (Integer)
  • alignment (Integer)
  • section_id (Integer)
  • section_name (String)
  • is_read_only (Integer)

Returns:

  • (Integer)


380
# File 'lib/llvm/execution_engine_ffi.rb', line 380

callback :memory_manager_allocate_data_section_callback, [:uchar, :pointer, :ulong, :uint, :uint, :string, :int], :uchar

._callback_memory_manager_finalize_memory_callback_(bool, opaque, err_msg) ⇒ Integer

(Not documented)

This entry is only for documentation and no real method.

Parameters:

  • bool (Integer)
  • opaque (FFI::Pointer(*Void))
  • err_msg (FFI::Pointer(**CharS))

Returns:

  • (Integer)


392
# File 'lib/llvm/execution_engine_ffi.rb', line 392

callback :memory_manager_finalize_memory_callback, [:int, :pointer, :pointer], :int

._callback_yield_callback_(context_ref, void) ⇒ FFI::Pointer(ContextRef)

(Not documented)

This entry is only for documentation and no real method.

Parameters:

  • context_ref (FFI::Pointer(ContextRef))
  • void (FFI::Pointer(*Void))

Returns:

  • (FFI::Pointer(ContextRef))


882
# File 'lib/llvm/core_ffi.rb', line 882

callback :yield_callback, [:pointer, :pointer], :pointer

._enum_atomic_ordering_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:atomic_ordering).

Options:

:not_atomic
:unordered

< A load or store which is not atomic

:monotonic

< Lowest level of atomicity, guarantees

somewhat sane results, lock free.
:acquire

< guarantees that if you take all the

operations affecting a specific address,
a consistent ordering exists
:release

< Acquire provides a barrier of the sort

necessary to acquire a lock to access other
memory with normal loads and stores.
:acquire_release

< Release is similar to Acquire, but with

a barrier of the sort necessary to release
a lock.
:sequentially_consistent

< provides both an Acquire and a

Release barrier (for fences and
operations which both read and write
 memory).

Returns:

  • (Symbol)


736
737
738
739
740
741
742
743
744
# File 'lib/llvm/core_ffi.rb', line 736

enum :atomic_ordering, [
  :not_atomic, 0,
  :unordered, 1,
  :monotonic, 2,
  :acquire, 4,
  :release, 5,
  :acquire_release, 6,
  :sequentially_consistent, 7
]

._enum_atomic_rmw_bin_op_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:atomic_rmw_bin_op).

Options:

:xchg
:add

< Set the new value and return the one old

:sub

< Add a value and return the old one

:and_

< Subtract a value and return the old one

:nand

< And a value and return the old one

:or_

< Not-And a value and return the old one

:xor

< OR a value and return the old one

:max

< Xor a value and return the old one

:min

< Sets the value if it’s greater than the

original using a signed comparison and return
the old one
:u_max

< Sets the value if it’s Smaller than the

original using a signed comparison and return
the old one
:u_min

< Sets the value if it’s greater than the

original using an unsigned comparison and return
the old one

Returns:

  • (Symbol)


783
784
785
786
787
788
789
790
791
792
793
794
795
# File 'lib/llvm/core_ffi.rb', line 783

enum :atomic_rmw_bin_op, [
  :xchg, 0,
  :add, 1,
  :sub, 2,
  :and_, 3,
  :nand, 4,
  :or_, 5,
  :xor, 6,
  :max, 7,
  :min, 8,
  :u_max, 9,
  :u_min, 10
]

._enum_attribute_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:attribute).

Options:

:z_ext_attribute
:s_ext_attribute
:no_return_attribute
:in_reg_attribute
:struct_ret_attribute
:no_unwind_attribute
:no_alias_attribute
:by_val_attribute
:nest_attribute
:read_none_attribute
:read_only_attribute
:no_inline_attribute
:always_inline_attribute
:optimize_for_size_attribute
:stack_protect_attribute
:stack_protect_req_attribute
:alignment
:no_capture_attribute
:no_red_zone_attribute
:no_implicit_float_attribute
:naked_attribute
:inline_hint_attribute
:stack_alignment
:returns_twice
:uw_table
:non_lazy_bind

Returns:

  • (Symbol)


116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# File 'lib/llvm/core_ffi.rb', line 116

enum :attribute, [
  :z_ext_attribute, 1,
  :s_ext_attribute, 2,
  :no_return_attribute, 4,
  :in_reg_attribute, 8,
  :struct_ret_attribute, 16,
  :no_unwind_attribute, 32,
  :no_alias_attribute, 64,
  :by_val_attribute, 128,
  :nest_attribute, 256,
  :read_none_attribute, 512,
  :read_only_attribute, 1024,
  :no_inline_attribute, 2048,
  :always_inline_attribute, 4096,
  :optimize_for_size_attribute, 8192,
  :stack_protect_attribute, 16384,
  :stack_protect_req_attribute, 32768,
  :alignment, 2031616,
  :no_capture_attribute, 2097152,
  :no_red_zone_attribute, 4194304,
  :no_implicit_float_attribute, 8388608,
  :naked_attribute, 16777216,
  :inline_hint_attribute, 33554432,
  :stack_alignment, 469762048,
  :returns_twice, 536870912,
  :uw_table, 1073741824,
  :non_lazy_bind, 2147483648
]

._enum_byte_ordering_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:byte_ordering).

Options:

:big_endian
:little_endian

Returns:

  • (Symbol)


28
29
30
31
# File 'lib/llvm/target_ffi.rb', line 28

enum :byte_ordering, [
  :big_endian, 0,
  :little_endian, 1
]

._enum_call_conv_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:call_conv).

Options:

:c
:fast
:cold
:web_kit_js
:any_reg
:x86_stdcall
:x86_fastcall

Returns:

  • (Symbol)


546
547
548
549
550
551
552
553
554
# File 'lib/llvm/core_ffi.rb', line 546

enum :call_conv, [
  :c, 0,
  :fast, 8,
  :cold, 9,
  :web_kit_js, 12,
  :any_reg, 13,
  :x86_stdcall, 64,
  :x86_fastcall, 65
]

._enum_code_gen_file_type_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:code_gen_file_type).

Options:

:assembly
:object

Returns:

  • (Symbol)


426
427
428
429
# File 'lib/llvm/target_ffi.rb', line 426

enum :code_gen_file_type, [
  :assembly, 0,
  :object, 1
]

._enum_code_gen_opt_level_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:code_gen_opt_level).

Options:

:none
:less
:default
:aggressive

Returns:

  • (Symbol)


352
353
354
355
356
357
# File 'lib/llvm/target_ffi.rb', line 352

enum :code_gen_opt_level, [
  :none, 0,
  :less, 1,
  :default, 2,
  :aggressive, 3
]

._enum_code_model_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:code_model).

Options:

:default
:jit_default
:small
:kernel
:medium
:large

Returns:

  • (Symbol)


404
405
406
407
408
409
410
411
# File 'lib/llvm/target_ffi.rb', line 404

enum :code_model, [
  :default, 0,
  :jit_default, 1,
  :small, 2,
  :kernel, 3,
  :medium, 4,
  :large, 5
]

._enum_diagnostic_severity_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:diagnostic_severity).

Options:

:ds_error
:ds_warning
:ds_remark
:ds_note

Returns:

  • (Symbol)


814
815
816
817
818
819
# File 'lib/llvm/core_ffi.rb', line 814

enum :diagnostic_severity, [
  :ds_error, 0,
  :ds_warning, 1,
  :ds_remark, 2,
  :ds_note, 3
]

._enum_dll_storage_class_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:dll_storage_class).

Options:

:default
:dll_import
:dll_export

< Function to be imported from DLL.

Returns:

  • (Symbol)


517
518
519
520
521
# File 'lib/llvm/core_ffi.rb', line 517

enum :dll_storage_class, [
  :default, 0,
  :dll_import, 1,
  :dll_export, 2
]

._enum_int_predicate_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:int_predicate).

Options:

:eq
:ne

< equal

:ugt

< not equal

:uge

< unsigned greater than

:ult

< unsigned greater or equal

:ule

< unsigned less than

:sgt

< unsigned less or equal

:sge

< signed greater than

:slt

< signed greater or equal

:sle

< signed less than

Returns:

  • (Symbol)


585
586
587
588
589
590
591
592
593
594
595
596
# File 'lib/llvm/core_ffi.rb', line 585

enum :int_predicate, [
  :eq, 32,
  :ne, 33,
  :ugt, 34,
  :uge, 35,
  :ult, 36,
  :ule, 37,
  :sgt, 38,
  :sge, 39,
  :slt, 40,
  :sle, 41
]

._enum_landing_pad_clause_ty_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:landing_pad_clause_ty).

Options:

:catch
:filter

< A catch clause

Returns:

  • (Symbol)


671
672
673
674
# File 'lib/llvm/core_ffi.rb', line 671

enum :landing_pad_clause_ty, [
  :catch, 0,
  :filter, 1
]

._enum_linkage_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:linkage).

Options:

:external
:available_externally

< Externally visible function

:link_once_any
:link_once_odr

< Keep one copy of function when linking (inline)

:link_once_odr_auto_hide

< Same, but only replaced by something

equivalent.
:weak_any

< Obsolete

:weak_odr

< Keep one copy of function when linking (weak)

:appending

< Same, but only replaced by something

equivalent.
:internal

< Special purpose, only applies to global arrays

:private

< Rename collisions when linking (static

functions)
:dll_import

< Like Internal, but omit from symbol table

:dll_export

< Obsolete

:external_weak

< Obsolete

:ghost

< ExternalWeak linkage description

:common

< Obsolete

:linker_private

< Tentative definitions

:linker_private_weak

< Like Private, but linker removes.

Returns:

  • (Symbol)


461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
# File 'lib/llvm/core_ffi.rb', line 461

enum :linkage, [
  :external, 0,
  :available_externally, 1,
  :link_once_any, 2,
  :link_once_odr, 3,
  :link_once_odr_auto_hide, 4,
  :weak_any, 5,
  :weak_odr, 6,
  :appending, 7,
  :internal, 8,
  :private, 9,
  :dll_import, 10,
  :dll_export, 11,
  :external_weak, 12,
  :ghost, 13,
  :common, 14,
  :linker_private, 15,
  :linker_private_weak, 16
]

._enum_linker_mode_Symbol

This enum is provided for backwards-compatibility only. It has no effect.

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:linker_mode).

Options:

:destroy_source
:preserve_source_removed

This is the default behavior.

Returns:

  • (Symbol)


28
29
30
31
# File 'lib/llvm/linker_ffi.rb', line 28

enum :linker_mode, [
  :destroy_source, 0,
  :preserve_source_removed, 1
]

._enum_opcode_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:opcode).

Options:

:ret

Terminator Instructions

:br
:switch
:indirect_br
:invoke
:unreachable

removed 6 due to API changes

:add

Standard Binary Operators

:f_add
:sub
:f_sub
:mul
:f_mul
:u_div
:s_div
:f_div
:u_rem
:s_rem
:f_rem
:shl

Logical Operators

:l_shr
:a_shr
:and_
:or_
:xor
:alloca

Memory Operators

:load
:store
:get_element_ptr
:trunc

Cast Operators

:z_ext
:s_ext
:fp_to_ui
:fp_to_si
:ui_to_fp
:si_to_fp
:fp_trunc
:fp_ext
:ptr_to_int
:int_to_ptr
:bit_cast
:addr_space_cast
:i_cmp

Other Operators

:f_cmp
:phi
:call
:select
:user_op1
:user_op2
:va_arg
:extract_element
:insert_element
:shuffle_vector
:extract_value
:insert_value
:fence

Atomic operators

:atomic_cmp_xchg
:atomic_rmw
:resume

Exception Handling Operators

:landing_pad
:cleanup_ret
:catch_ret
:catch_pad
:cleanup_pad
:catch_switch

Returns:

  • (Symbol)


282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
# File 'lib/llvm/core_ffi.rb', line 282

enum :opcode, [
  :ret, 1,
  :br, 2,
  :switch, 3,
  :indirect_br, 4,
  :invoke, 5,
  :unreachable, 7,
  :add, 8,
  :f_add, 9,
  :sub, 10,
  :f_sub, 11,
  :mul, 12,
  :f_mul, 13,
  :u_div, 14,
  :s_div, 15,
  :f_div, 16,
  :u_rem, 17,
  :s_rem, 18,
  :f_rem, 19,
  :shl, 20,
  :l_shr, 21,
  :a_shr, 22,
  :and_, 23,
  :or_, 24,
  :xor, 25,
  :alloca, 26,
  :load, 27,
  :store, 28,
  :get_element_ptr, 29,
  :trunc, 30,
  :z_ext, 31,
  :s_ext, 32,
  :fp_to_ui, 33,
  :fp_to_si, 34,
  :ui_to_fp, 35,
  :si_to_fp, 36,
  :fp_trunc, 37,
  :fp_ext, 38,
  :ptr_to_int, 39,
  :int_to_ptr, 40,
  :bit_cast, 41,
  :addr_space_cast, 60,
  :i_cmp, 42,
  :f_cmp, 43,
  :phi, 44,
  :call, 45,
  :select, 46,
  :user_op1, 47,
  :user_op2, 48,
  :va_arg, 49,
  :extract_element, 50,
  :insert_element, 51,
  :shuffle_vector, 52,
  :extract_value, 53,
  :insert_value, 54,
  :fence, 55,
  :atomic_cmp_xchg, 56,
  :atomic_rmw, 57,
  :resume, 58,
  :landing_pad, 59,
  :cleanup_ret, 61,
  :catch_ret, 62,
  :catch_pad, 63,
  :cleanup_pad, 64,
  :catch_switch, 65
]

._enum_real_predicate_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:real_predicate).

Options:

:predicate_false
:oeq

< Always false (always folded)

:ogt

< True if ordered and equal

:oge

< True if ordered and greater than

:olt

< True if ordered and greater than or equal

:ole

< True if ordered and less than

:one

< True if ordered and less than or equal

:ord

< True if ordered and operands are unequal

:uno

< True if ordered (no nans)

:ueq

< True if unordered: isnan(X) | isnan(Y)

:ugt

< True if unordered or equal

:uge

< True if unordered or greater than

:ult

< True if unordered, greater than, or equal

:ule

< True if unordered or less than

:une

< True if unordered, less than, or equal

:predicate_true

< True if unordered or not equal

Returns:

  • (Symbol)


639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
# File 'lib/llvm/core_ffi.rb', line 639

enum :real_predicate, [
  :predicate_false, 0,
  :oeq, 1,
  :ogt, 2,
  :oge, 3,
  :olt, 4,
  :ole, 5,
  :one, 6,
  :ord, 7,
  :uno, 8,
  :ueq, 9,
  :ugt, 10,
  :uge, 11,
  :ult, 12,
  :ule, 13,
  :une, 14,
  :predicate_true, 15
]

._enum_reloc_mode_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:reloc_mode).

Options:

:default
:static
:pic
:dynamic_no_pic

Returns:

  • (Symbol)


376
377
378
379
380
381
# File 'lib/llvm/target_ffi.rb', line 376

enum :reloc_mode, [
  :default, 0,
  :static, 1,
  :pic, 2,
  :dynamic_no_pic, 3
]

._enum_thread_local_mode_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:thread_local_mode).

Options:

:not_thread_local
:general_dynamic_tls_model
:local_dynamic_tls_model
:initial_exec_tls_model
:local_exec_tls_model

Returns:

  • (Symbol)


695
696
697
698
699
700
701
# File 'lib/llvm/core_ffi.rb', line 695

enum :thread_local_mode, [
  :not_thread_local, 0,
  :general_dynamic_tls_model, 1,
  :local_dynamic_tls_model, 2,
  :initial_exec_tls_model, 3,
  :local_exec_tls_model, 4
]

._enum_type_kind_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:type_kind).

Options:

:void
:half

< type with no size

:float

< 16 bit floating point type

:double

< 32 bit floating point type

:x86_fp80

< 64 bit floating point type

:fp128

< 80 bit floating point type (X87)

:ppc_fp128

< 128 bit floating point type (112-bit mantissa)

:label

< 128 bit floating point type (two 64-bits)

:integer

< Labels

:function

< Arbitrary bit width integers

:struct

< Functions

:array

< Structures

:pointer

< Arrays

:vector

< Pointers

:metadata

< SIMD ‘packed’ format, or other vector type

:x86_mmx

< Metadata

:token

< X86 MMX

Returns:

  • (Symbol)


392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
# File 'lib/llvm/core_ffi.rb', line 392

enum :type_kind, [
  :void, 0,
  :half, 1,
  :float, 2,
  :double, 3,
  :x86_fp80, 4,
  :fp128, 5,
  :ppc_fp128, 6,
  :label, 7,
  :integer, 8,
  :function, 9,
  :struct, 10,
  :array, 11,
  :pointer, 12,
  :vector, 13,
  :metadata, 14,
  :x86_mmx, 15,
  :token, 16,
  :scalable_vector, 17,
  :bfloat, 18,
  :x86_amx, 19,
]

._enum_verifier_failure_action_Symbol

@{

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:verifier_failure_action).

Options:

:abort_process
:print_message

verifier will print to stderr and abort()

:return_status

verifier will print to stderr and return 1

Returns:

  • (Symbol)


33
34
35
36
37
# File 'lib/llvm/analysis_ffi.rb', line 33

enum :verifier_failure_action, [
  :abort_process, 0,
  :print_message, 1,
  :return_status, 2
]

._enum_visibility_Symbol

(Not documented)

This entry is only for documentation and no real method. The FFI::Enum can be accessed via #enum_type(:visibility).

Options:

:default
:hidden

< The GV is visible

:protected

< The GV is hidden

Returns:

  • (Symbol)


496
497
498
499
500
# File 'lib/llvm/core_ffi.rb', line 496

enum :visibility, [
  :default, 0,
  :hidden, 1,
  :protected, 2
]

.abi_alignment_of_type(td, ty) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


258
# File 'lib/llvm/target_ffi.rb', line 258

attach_function :abi_alignment_of_type, :LLVMABIAlignmentOfType, [OpaqueTargetData, :pointer], :uint

.abi_size_of_type(td, ty) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


249
# File 'lib/llvm/target_ffi.rb', line 249

attach_function :abi_size_of_type, :LLVMABISizeOfType, [OpaqueTargetData, :pointer], :ulong_long

.add_alias(m, ty, aliasee, name) ⇒ FFI::Pointer(ValueRef)

This group contains function that operate on global alias values.

@{

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • ty (FFI::Pointer(TypeRef))
  • aliasee (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::GlobalAlias


3538
# File 'lib/llvm/core_ffi.rb', line 3538

attach_function :add_alias, :LLVMAddAlias, [:pointer, :pointer, :pointer, :string], :pointer

.add_analysis_passes(t, pm) ⇒ nil

Adds the target-specific analysis passes to the pass manager.

Parameters:

Returns:

  • (nil)


626
# File 'lib/llvm/target_ffi.rb', line 626

attach_function :add_analysis_passes, :LLVMAddAnalysisPasses, [OpaqueTargetMachine, :pointer], :void

.add_case(switch, on_val, dest) ⇒ nil

Add a case to the switch instruction

Parameters:

  • switch (FFI::Pointer(ValueRef))
  • on_val (FFI::Pointer(ValueRef))
  • dest (FFI::Pointer(BasicBlockRef))

Returns:

  • (nil)


4604
# File 'lib/llvm/core_ffi.rb', line 4604

attach_function :add_case, :LLVMAddCase, [:pointer, :pointer, :pointer], :void

.add_clause(landing_pad, clause_val) ⇒ nil

Add a catch or filter clause to the landingpad instruction

Parameters:

  • landing_pad (FFI::Pointer(ValueRef))
  • clause_val (FFI::Pointer(ValueRef))

Returns:

  • (nil)


4622
# File 'lib/llvm/core_ffi.rb', line 4622

attach_function :add_clause, :LLVMAddClause, [:pointer, :pointer], :void

.add_destination(indirect_br, dest) ⇒ nil

Add a destination to the indirectbr instruction

Parameters:

  • indirect_br (FFI::Pointer(ValueRef))
  • dest (FFI::Pointer(BasicBlockRef))

Returns:

  • (nil)


4613
# File 'lib/llvm/core_ffi.rb', line 4613

attach_function :add_destination, :LLVMAddDestination, [:pointer, :pointer], :void

.add_function(m, name, function_ty) ⇒ FFI::Pointer(ValueRef)

Add a function to a module under a specified name.

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • name (String)
  • function_ty (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::Functionllvm::Function::Create()


1177
# File 'lib/llvm/core_ffi.rb', line 1177

attach_function :add_function, :LLVMAddFunction, [:pointer, :string, :pointer], :pointer

.add_global(m, ty, name) ⇒ FFI::Pointer(ValueRef)

This group contains functions that operate on global variable values.

@{

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::GlobalVariable


3376
# File 'lib/llvm/core_ffi.rb', line 3376

attach_function :add_global, :LLVMAddGlobal, [:pointer, :pointer, :string], :pointer

.add_global_in_address_space(m, ty, name, address_space) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • ty (FFI::Pointer(TypeRef))
  • name (String)
  • address_space (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


3387
# File 'lib/llvm/core_ffi.rb', line 3387

attach_function :add_global_in_address_space, :LLVMAddGlobalInAddressSpace, [:pointer, :pointer, :string, :uint], :pointer

.add_global_mapping(ee, global, addr) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


322
# File 'lib/llvm/execution_engine_ffi.rb', line 322

attach_function :add_global_mapping, :LLVMAddGlobalMapping, [OpaqueExecutionEngine, :pointer, :pointer], :void

.add_incoming(phi_node, incoming_values, incoming_blocks, count) ⇒ nil

Add an incoming value to the end of a PHI list.

Parameters:

  • phi_node (FFI::Pointer(ValueRef))
  • incoming_values (FFI::Pointer(*ValueRef))
  • incoming_blocks (FFI::Pointer(*BasicBlockRef))
  • count (Integer)

Returns:

  • (nil)


4354
# File 'lib/llvm/core_ffi.rb', line 4354

attach_function :add_incoming, :LLVMAddIncoming, [:pointer, :pointer, :pointer, :uint], :void

.add_module(ee, m) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


266
# File 'lib/llvm/execution_engine_ffi.rb', line 266

attach_function :add_module, :LLVMAddModule, [OpaqueExecutionEngine, :pointer], :void

.add_named_metadata_operand(m, name, val) ⇒ nil

Add an operand to named metadata.

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • name (String)
  • val (FFI::Pointer(ValueRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::Modulellvm::Module::getNamedMetadata()
  • llvmllvm::MDNodellvm::MDNode::addOperand()


1165
# File 'lib/llvm/core_ffi.rb', line 1165

attach_function :add_named_metadata_operand, :LLVMAddNamedMetadataOperand, [:pointer, :string, :pointer], :void

.add_symbol(symbol_name, symbol_value) ⇒ nil

(Not documented)

Parameters:

  • symbol_name (String)
  • symbol_value (FFI::Pointer(*Void))

Returns:

  • (nil)


53
# File 'lib/llvm/core_ffi.rb', line 53

attach_function :add_symbol, :LLVMAddSymbol, [:string, :pointer], :void

.add_target_dependent_function_attr(fn, a, v) ⇒ nil

Add a target-dependent attribute to a function

Parameters:

  • fn (FFI::Pointer(ValueRef))
  • a (String)
  • v (String)

Returns:

  • (nil)

See Also:

  • llvmllvm::AttrBuilderllvm::AttrBuilder::addAttribute()


3638
# File 'lib/llvm/core_ffi.rb', line 3638

attach_function :add_target_dependent_function_attr, :LLVMAddTargetDependentFunctionAttr, [:pointer, :string, :string], :void

.add_target_library_info(tli, pm) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


153
# File 'lib/llvm/target_ffi.rb', line 153

attach_function :add_target_library_info, :LLVMAddTargetLibraryInfo, [OpaqueTargetLibraryInfotData, :pointer], :void

.align_of(ty) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • ty (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))


2917
# File 'lib/llvm/core_ffi.rb', line 2917

attach_function :align_of, :LLVMAlignOf, [:pointer], :pointer

.append_basic_block(fn, name) ⇒ FFI::Pointer(BasicBlockRef)

Append a basic block to the end of a function using the global context.

Parameters:

  • fn (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(BasicBlockRef))

See Also:

  • llvmllvm::BasicBlockllvm::BasicBlock::Create()


3980
# File 'lib/llvm/core_ffi.rb', line 3980

attach_function :append_basic_block, :LLVMAppendBasicBlock, [:pointer, :string], :pointer

.append_basic_block_in_context(c, fn, name) ⇒ FFI::Pointer(BasicBlockRef)

Append a basic block to the end of a function.

Parameters:

  • c (FFI::Pointer(ContextRef))
  • fn (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(BasicBlockRef))

See Also:

  • llvmllvm::BasicBlockllvm::BasicBlock::Create()


3968
# File 'lib/llvm/core_ffi.rb', line 3968

attach_function :append_basic_block_in_context, :LLVMAppendBasicBlockInContext, [:pointer, :pointer, :string], :pointer

.array_type(element_type, element_count) ⇒ FFI::Pointer(TypeRef)

Create a fixed size array type that refers to a specific type.

The created type will exist in the context that its element type exists in.

Parameters:

  • element_type (FFI::Pointer(TypeRef))
  • element_count (Integer)

Returns:

  • (FFI::Pointer(TypeRef))

See Also:

  • llvmllvm::ArrayTypellvm::ArrayType::get()


1674
# File 'lib/llvm/core_ffi.rb', line 1674

attach_function :array_type, :LLVMArrayType, [:pointer, :uint], :pointer

.attach_function(name, *_) ⇒ Object



9
10
11
12
13
# File 'lib/llvm/core_ffi.rb', line 9

def self.attach_function(name, *_)
  begin; super; rescue FFI::NotFoundError => e
    (class << self; self; end).class_eval { define_method(name) { |*_| raise e } }
  end
end

.basic_block_as_value(bb) ⇒ FFI::Pointer(ValueRef)

Convert a basic block instance to a value type.

Parameters:

  • bb (FFI::Pointer(BasicBlockRef))

Returns:

  • (FFI::Pointer(ValueRef))


3841
# File 'lib/llvm/core_ffi.rb', line 3841

attach_function :basic_block_as_value, :LLVMBasicBlockAsValue, [:pointer], :pointer

.block_address(f, bb) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • f (FFI::Pointer(ValueRef))
  • bb (FFI::Pointer(BasicBlockRef))

Returns:

  • (FFI::Pointer(ValueRef))


3227
# File 'lib/llvm/core_ffi.rb', line 3227

attach_function :block_address, :LLVMBlockAddress, [:pointer, :pointer], :pointer

.build_a_shr(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4873
# File 'lib/llvm/core_ffi.rb', line 4873

attach_function :build_a_shr, :LLVMBuildAShr, [:pointer, :pointer, :pointer, :string], :pointer

.build_add(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

Arithmetic

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4642
# File 'lib/llvm/core_ffi.rb', line 4642

attach_function :build_add, :LLVMBuildAdd, [:pointer, :pointer, :pointer, :string], :pointer

.build_addr_space_cast(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5226
# File 'lib/llvm/core_ffi.rb', line 5226

attach_function :build_addr_space_cast, :LLVMBuildAddrSpaceCast, [:pointer, :pointer, :pointer, :string], :pointer

.build_aggregate_ret(builder_ref, ret_vals, n) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • ret_vals (FFI::Pointer(*ValueRef))
  • n (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


4524
# File 'lib/llvm/core_ffi.rb', line 4524

attach_function :build_aggregate_ret, :LLVMBuildAggregateRet, [:pointer, :pointer, :uint], :pointer

.build_alloca(builder_ref, ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4999
# File 'lib/llvm/core_ffi.rb', line 4999

attach_function :build_alloca, :LLVMBuildAlloca, [:pointer, :pointer, :string], :pointer

.build_and(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4884
# File 'lib/llvm/core_ffi.rb', line 4884

attach_function :build_and, :LLVMBuildAnd, [:pointer, :pointer, :pointer, :string], :pointer

.build_array_alloca(builder_ref, ty, val, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • ty (FFI::Pointer(TypeRef))
  • val (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5010
# File 'lib/llvm/core_ffi.rb', line 5010

attach_function :build_array_alloca, :LLVMBuildArrayAlloca, [:pointer, :pointer, :pointer, :string], :pointer

.build_array_malloc(builder_ref, ty, val, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • ty (FFI::Pointer(TypeRef))
  • val (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4989
# File 'lib/llvm/core_ffi.rb', line 4989

attach_function :build_array_malloc, :LLVMBuildArrayMalloc, [:pointer, :pointer, :pointer, :string], :pointer

.build_atomic_rmw(b, op, ptr, val, ordering, single_thread) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

Returns:

  • (FFI::Pointer(ValueRef))


5474
# File 'lib/llvm/core_ffi.rb', line 5474

attach_function :build_atomic_rmw, :LLVMBuildAtomicRMW, [:pointer, :atomic_rmw_bin_op, :pointer, :pointer, :atomic_ordering, :int], :pointer

.build_bin_op(b, op, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • b (FFI::Pointer(BuilderRef))
  • op (Symbol from _enum_opcode_)
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4918
# File 'lib/llvm/core_ffi.rb', line 4918

attach_function :build_bin_op, :LLVMBuildBinOp, [:pointer, :opcode, :pointer, :pointer, :string], :pointer

.build_bit_cast(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5215
# File 'lib/llvm/core_ffi.rb', line 5215

attach_function :build_bit_cast, :LLVMBuildBitCast, [:pointer, :pointer, :pointer, :string], :pointer

.build_br(builder_ref, dest) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • dest (FFI::Pointer(BasicBlockRef))

Returns:

  • (FFI::Pointer(ValueRef))


4533
# File 'lib/llvm/core_ffi.rb', line 4533

attach_function :build_br, :LLVMBuildBr, [:pointer, :pointer], :pointer

.build_cast(b, op, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • b (FFI::Pointer(BuilderRef))
  • op (Symbol from _enum_opcode_)
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5271
# File 'lib/llvm/core_ffi.rb', line 5271

attach_function :build_cast, :LLVMBuildCast, [:pointer, :opcode, :pointer, :pointer, :string], :pointer

.build_cond_br(builder_ref, if_, then_, else_) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • if_ (FFI::Pointer(ValueRef))
  • then_ (FFI::Pointer(BasicBlockRef))
  • else_ (FFI::Pointer(BasicBlockRef))

Returns:

  • (FFI::Pointer(ValueRef))


4544
# File 'lib/llvm/core_ffi.rb', line 4544

attach_function :build_cond_br, :LLVMBuildCondBr, [:pointer, :pointer, :pointer, :pointer], :pointer

.build_exact_s_div(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4796
# File 'lib/llvm/core_ffi.rb', line 4796

attach_function :build_exact_s_div, :LLVMBuildExactSDiv, [:pointer, :pointer, :pointer, :string], :pointer

.build_extract_element(builder_ref, vec_val, index, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • vec_val (FFI::Pointer(ValueRef))
  • index (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5372
# File 'lib/llvm/core_ffi.rb', line 5372

attach_function :build_extract_element, :LLVMBuildExtractElement, [:pointer, :pointer, :pointer, :string], :pointer

.build_extract_value(builder_ref, agg_val, index, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • agg_val (FFI::Pointer(ValueRef))
  • index (Integer)
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5407
# File 'lib/llvm/core_ffi.rb', line 5407

attach_function :build_extract_value, :LLVMBuildExtractValue, [:pointer, :pointer, :uint, :string], :pointer

.build_f_add(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4675
# File 'lib/llvm/core_ffi.rb', line 4675

attach_function :build_f_add, :LLVMBuildFAdd, [:pointer, :pointer, :pointer, :string], :pointer

.build_f_cmp(builder_ref, op, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • op (Symbol from _enum_real_predicate_)
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5328
# File 'lib/llvm/core_ffi.rb', line 5328

attach_function :build_f_cmp, :LLVMBuildFCmp, [:pointer, :real_predicate, :pointer, :pointer, :string], :pointer

.build_f_div(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4807
# File 'lib/llvm/core_ffi.rb', line 4807

attach_function :build_f_div, :LLVMBuildFDiv, [:pointer, :pointer, :pointer, :string], :pointer

.build_f_mul(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4763
# File 'lib/llvm/core_ffi.rb', line 4763

attach_function :build_f_mul, :LLVMBuildFMul, [:pointer, :pointer, :pointer, :string], :pointer

.build_f_neg(builder_ref, v, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • v (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4958
# File 'lib/llvm/core_ffi.rb', line 4958

attach_function :build_f_neg, :LLVMBuildFNeg, [:pointer, :pointer, :string], :pointer

.build_f_rem(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4840
# File 'lib/llvm/core_ffi.rb', line 4840

attach_function :build_f_rem, :LLVMBuildFRem, [:pointer, :pointer, :pointer, :string], :pointer

.build_f_sub(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4719
# File 'lib/llvm/core_ffi.rb', line 4719

attach_function :build_f_sub, :LLVMBuildFSub, [:pointer, :pointer, :pointer, :string], :pointer

.build_fence(b, ordering, single_thread, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • b (FFI::Pointer(BuilderRef))
  • ordering (Symbol from _enum_atomic_ordering_)
  • single_thread (Integer)
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5461
# File 'lib/llvm/core_ffi.rb', line 5461

attach_function :build_fence, :LLVMBuildFence, [:pointer, :atomic_ordering, :int, :string], :pointer

.build_fp_cast(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5304
# File 'lib/llvm/core_ffi.rb', line 5304

attach_function :build_fp_cast, :LLVMBuildFPCast, [:pointer, :pointer, :pointer, :string], :pointer

.build_fp_ext(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5182
# File 'lib/llvm/core_ffi.rb', line 5182

attach_function :build_fp_ext, :LLVMBuildFPExt, [:pointer, :pointer, :pointer, :string], :pointer

.build_fp_to_si(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5138
# File 'lib/llvm/core_ffi.rb', line 5138

attach_function :build_fp_to_si, :LLVMBuildFPToSI, [:pointer, :pointer, :pointer, :string], :pointer

.build_fp_to_ui(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5127
# File 'lib/llvm/core_ffi.rb', line 5127

attach_function :build_fp_to_ui, :LLVMBuildFPToUI, [:pointer, :pointer, :pointer, :string], :pointer

.build_fp_trunc(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5171
# File 'lib/llvm/core_ffi.rb', line 5171

attach_function :build_fp_trunc, :LLVMBuildFPTrunc, [:pointer, :pointer, :pointer, :string], :pointer

.build_free(builder_ref, pointer_val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • pointer_val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


5019
# File 'lib/llvm/core_ffi.rb', line 5019

attach_function :build_free, :LLVMBuildFree, [:pointer, :pointer], :pointer

.build_global_string(b, str, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • b (FFI::Pointer(BuilderRef))
  • str (String)
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5039
# File 'lib/llvm/core_ffi.rb', line 5039

attach_function :build_global_string, :LLVMBuildGlobalString, [:pointer, :string, :string], :pointer

.build_global_string_ptr(b, str, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • b (FFI::Pointer(BuilderRef))
  • str (String)
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5049
# File 'lib/llvm/core_ffi.rb', line 5049

attach_function :build_global_string_ptr, :LLVMBuildGlobalStringPtr, [:pointer, :string, :string], :pointer

.build_i_cmp(builder_ref, op, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

Comparisons

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • op (Symbol from _enum_int_predicate_)
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5316
# File 'lib/llvm/core_ffi.rb', line 5316

attach_function :build_i_cmp, :LLVMBuildICmp, [:pointer, :int_predicate, :pointer, :pointer, :string], :pointer

.build_indirect_br(b, addr, num_dests) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • b (FFI::Pointer(BuilderRef))
  • addr (FFI::Pointer(ValueRef))
  • num_dests (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


4565
# File 'lib/llvm/core_ffi.rb', line 4565

attach_function :build_indirect_br, :LLVMBuildIndirectBr, [:pointer, :pointer, :uint], :pointer

.build_insert_element(builder_ref, vec_val, elt_val, index, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • vec_val (FFI::Pointer(ValueRef))
  • elt_val (FFI::Pointer(ValueRef))
  • index (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5384
# File 'lib/llvm/core_ffi.rb', line 5384

attach_function :build_insert_element, :LLVMBuildInsertElement, [:pointer, :pointer, :pointer, :pointer, :string], :pointer

.build_insert_value(builder_ref, agg_val, elt_val, index, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • agg_val (FFI::Pointer(ValueRef))
  • elt_val (FFI::Pointer(ValueRef))
  • index (Integer)
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5419
# File 'lib/llvm/core_ffi.rb', line 5419

attach_function :build_insert_value, :LLVMBuildInsertValue, [:pointer, :pointer, :pointer, :uint, :string], :pointer

.build_int_cast(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5293
# File 'lib/llvm/core_ffi.rb', line 5293

attach_function :build_int_cast, :LLVMBuildIntCast, [:pointer, :pointer, :pointer, :string], :pointer

.build_int_to_ptr(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5204
# File 'lib/llvm/core_ffi.rb', line 5204

attach_function :build_int_to_ptr, :LLVMBuildIntToPtr, [:pointer, :pointer, :pointer, :string], :pointer

.build_is_not_null(builder_ref, val, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5439
# File 'lib/llvm/core_ffi.rb', line 5439

attach_function :build_is_not_null, :LLVMBuildIsNotNull, [:pointer, :pointer, :string], :pointer

.build_is_null(builder_ref, val, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5429
# File 'lib/llvm/core_ffi.rb', line 5429

attach_function :build_is_null, :LLVMBuildIsNull, [:pointer, :pointer, :string], :pointer

.build_l_shr(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4862
# File 'lib/llvm/core_ffi.rb', line 4862

attach_function :build_l_shr, :LLVMBuildLShr, [:pointer, :pointer, :pointer, :string], :pointer

.build_landing_pad(b, ty, pers_fn, num_clauses, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • b (FFI::Pointer(BuilderRef))
  • ty (FFI::Pointer(TypeRef))
  • pers_fn (FFI::Pointer(ValueRef))
  • num_clauses (Integer)
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4577
# File 'lib/llvm/core_ffi.rb', line 4577

attach_function :build_landing_pad, :LLVMBuildLandingPad, [:pointer, :pointer, :pointer, :uint, :string], :pointer

.build_malloc(builder_ref, ty, name) ⇒ FFI::Pointer(ValueRef)

Memory

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4978
# File 'lib/llvm/core_ffi.rb', line 4978

attach_function :build_malloc, :LLVMBuildMalloc, [:pointer, :pointer, :string], :pointer

.build_mul(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4730
# File 'lib/llvm/core_ffi.rb', line 4730

attach_function :build_mul, :LLVMBuildMul, [:pointer, :pointer, :pointer, :string], :pointer

.build_neg(builder_ref, v, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • v (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4928
# File 'lib/llvm/core_ffi.rb', line 4928

attach_function :build_neg, :LLVMBuildNeg, [:pointer, :pointer, :string], :pointer

.build_not(builder_ref, v, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • v (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4968
# File 'lib/llvm/core_ffi.rb', line 4968

attach_function :build_not, :LLVMBuildNot, [:pointer, :pointer, :string], :pointer

.build_nsw_add(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4653
# File 'lib/llvm/core_ffi.rb', line 4653

attach_function :build_nsw_add, :LLVMBuildNSWAdd, [:pointer, :pointer, :pointer, :string], :pointer

.build_nsw_mul(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4741
# File 'lib/llvm/core_ffi.rb', line 4741

attach_function :build_nsw_mul, :LLVMBuildNSWMul, [:pointer, :pointer, :pointer, :string], :pointer

.build_nsw_neg(b, v, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • b (FFI::Pointer(BuilderRef))
  • v (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4938
# File 'lib/llvm/core_ffi.rb', line 4938

attach_function :build_nsw_neg, :LLVMBuildNSWNeg, [:pointer, :pointer, :string], :pointer

.build_nsw_sub(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4697
# File 'lib/llvm/core_ffi.rb', line 4697

attach_function :build_nsw_sub, :LLVMBuildNSWSub, [:pointer, :pointer, :pointer, :string], :pointer

.build_nuw_add(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4664
# File 'lib/llvm/core_ffi.rb', line 4664

attach_function :build_nuw_add, :LLVMBuildNUWAdd, [:pointer, :pointer, :pointer, :string], :pointer

.build_nuw_mul(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4752
# File 'lib/llvm/core_ffi.rb', line 4752

attach_function :build_nuw_mul, :LLVMBuildNUWMul, [:pointer, :pointer, :pointer, :string], :pointer

.build_nuw_neg(b, v, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • b (FFI::Pointer(BuilderRef))
  • v (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4948
# File 'lib/llvm/core_ffi.rb', line 4948

attach_function :build_nuw_neg, :LLVMBuildNUWNeg, [:pointer, :pointer, :string], :pointer

.build_nuw_sub(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4708
# File 'lib/llvm/core_ffi.rb', line 4708

attach_function :build_nuw_sub, :LLVMBuildNUWSub, [:pointer, :pointer, :pointer, :string], :pointer

.build_or(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4895
# File 'lib/llvm/core_ffi.rb', line 4895

attach_function :build_or, :LLVMBuildOr, [:pointer, :pointer, :pointer, :string], :pointer

.build_phi(builder_ref, ty, name) ⇒ FFI::Pointer(ValueRef)

Miscellaneous instructions

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5338
# File 'lib/llvm/core_ffi.rb', line 5338

attach_function :build_phi, :LLVMBuildPhi, [:pointer, :pointer, :string], :pointer

.build_pointer_cast(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5282
# File 'lib/llvm/core_ffi.rb', line 5282

attach_function :build_pointer_cast, :LLVMBuildPointerCast, [:pointer, :pointer, :pointer, :string], :pointer

.build_ptr_diff(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5450
# File 'lib/llvm/core_ffi.rb', line 5450

attach_function :build_ptr_diff, :LLVMBuildPtrDiff, [:pointer, :pointer, :pointer, :string], :pointer

.build_ptr_to_int(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5193
# File 'lib/llvm/core_ffi.rb', line 5193

attach_function :build_ptr_to_int, :LLVMBuildPtrToInt, [:pointer, :pointer, :pointer, :string], :pointer

.build_resume(b, exn) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • b (FFI::Pointer(BuilderRef))
  • exn (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


4586
# File 'lib/llvm/core_ffi.rb', line 4586

attach_function :build_resume, :LLVMBuildResume, [:pointer, :pointer], :pointer

.build_ret(builder_ref, v) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • v (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


4514
# File 'lib/llvm/core_ffi.rb', line 4514

attach_function :build_ret, :LLVMBuildRet, [:pointer, :pointer], :pointer

.build_ret_void(builder_ref) ⇒ FFI::Pointer(ValueRef)

Terminators

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))

Returns:

  • (FFI::Pointer(ValueRef))


4505
# File 'lib/llvm/core_ffi.rb', line 4505

attach_function :build_ret_void, :LLVMBuildRetVoid, [:pointer], :pointer

.build_s_div(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4785
# File 'lib/llvm/core_ffi.rb', line 4785

attach_function :build_s_div, :LLVMBuildSDiv, [:pointer, :pointer, :pointer, :string], :pointer

.build_s_ext(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5116
# File 'lib/llvm/core_ffi.rb', line 5116

attach_function :build_s_ext, :LLVMBuildSExt, [:pointer, :pointer, :pointer, :string], :pointer

.build_s_ext_or_bit_cast(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5248
# File 'lib/llvm/core_ffi.rb', line 5248

attach_function :build_s_ext_or_bit_cast, :LLVMBuildSExtOrBitCast, [:pointer, :pointer, :pointer, :string], :pointer

.build_s_rem(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4829
# File 'lib/llvm/core_ffi.rb', line 4829

attach_function :build_s_rem, :LLVMBuildSRem, [:pointer, :pointer, :pointer, :string], :pointer

.build_select(builder_ref, if_, then_, else_, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • if_ (FFI::Pointer(ValueRef))
  • then_ (FFI::Pointer(ValueRef))
  • else_ (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5350
# File 'lib/llvm/core_ffi.rb', line 5350

attach_function :build_select, :LLVMBuildSelect, [:pointer, :pointer, :pointer, :pointer, :string], :pointer

.build_shl(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4851
# File 'lib/llvm/core_ffi.rb', line 4851

attach_function :build_shl, :LLVMBuildShl, [:pointer, :pointer, :pointer, :string], :pointer

.build_shuffle_vector(builder_ref, v1, v2, mask, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • v1 (FFI::Pointer(ValueRef))
  • v2 (FFI::Pointer(ValueRef))
  • mask (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5396
# File 'lib/llvm/core_ffi.rb', line 5396

attach_function :build_shuffle_vector, :LLVMBuildShuffleVector, [:pointer, :pointer, :pointer, :pointer, :string], :pointer

.build_si_to_fp(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5160
# File 'lib/llvm/core_ffi.rb', line 5160

attach_function :build_si_to_fp, :LLVMBuildSIToFP, [:pointer, :pointer, :pointer, :string], :pointer

.build_store(builder_ref, val, ptr) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • ptr (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


5029
# File 'lib/llvm/core_ffi.rb', line 5029

attach_function :build_store, :LLVMBuildStore, [:pointer, :pointer, :pointer], :pointer

.build_sub(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4686
# File 'lib/llvm/core_ffi.rb', line 4686

attach_function :build_sub, :LLVMBuildSub, [:pointer, :pointer, :pointer, :string], :pointer

.build_switch(builder_ref, v, else_, num_cases) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • v (FFI::Pointer(ValueRef))
  • else_ (FFI::Pointer(BasicBlockRef))
  • num_cases (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


4555
# File 'lib/llvm/core_ffi.rb', line 4555

attach_function :build_switch, :LLVMBuildSwitch, [:pointer, :pointer, :pointer, :uint], :pointer

.build_trunc(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

Casts

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5094
# File 'lib/llvm/core_ffi.rb', line 5094

attach_function :build_trunc, :LLVMBuildTrunc, [:pointer, :pointer, :pointer, :string], :pointer

.build_trunc_or_bit_cast(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5259
# File 'lib/llvm/core_ffi.rb', line 5259

attach_function :build_trunc_or_bit_cast, :LLVMBuildTruncOrBitCast, [:pointer, :pointer, :pointer, :string], :pointer

.build_u_div(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4774
# File 'lib/llvm/core_ffi.rb', line 4774

attach_function :build_u_div, :LLVMBuildUDiv, [:pointer, :pointer, :pointer, :string], :pointer

.build_u_rem(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4818
# File 'lib/llvm/core_ffi.rb', line 4818

attach_function :build_u_rem, :LLVMBuildURem, [:pointer, :pointer, :pointer, :string], :pointer

.build_ui_to_fp(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5149
# File 'lib/llvm/core_ffi.rb', line 5149

attach_function :build_ui_to_fp, :LLVMBuildUIToFP, [:pointer, :pointer, :pointer, :string], :pointer

.build_unreachable(builder_ref) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))

Returns:

  • (FFI::Pointer(ValueRef))


4594
# File 'lib/llvm/core_ffi.rb', line 4594

attach_function :build_unreachable, :LLVMBuildUnreachable, [:pointer], :pointer

.build_va_arg(builder_ref, list, ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • list (FFI::Pointer(ValueRef))
  • ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5361
# File 'lib/llvm/core_ffi.rb', line 5361

attach_function :build_va_arg, :LLVMBuildVAArg, [:pointer, :pointer, :pointer, :string], :pointer

.build_xor(builder_ref, lhs, rhs, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • lhs (FFI::Pointer(ValueRef))
  • rhs (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


4906
# File 'lib/llvm/core_ffi.rb', line 4906

attach_function :build_xor, :LLVMBuildXor, [:pointer, :pointer, :pointer, :string], :pointer

.build_z_ext(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5105
# File 'lib/llvm/core_ffi.rb', line 5105

attach_function :build_z_ext, :LLVMBuildZExt, [:pointer, :pointer, :pointer, :string], :pointer

.build_z_ext_or_bit_cast(builder_ref, val, dest_ty, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder_ref (FFI::Pointer(BuilderRef))
  • val (FFI::Pointer(ValueRef))
  • dest_ty (FFI::Pointer(TypeRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


5237
# File 'lib/llvm/core_ffi.rb', line 5237

attach_function :build_z_ext_or_bit_cast, :LLVMBuildZExtOrBitCast, [:pointer, :pointer, :pointer, :string], :pointer

.byte_order(td) ⇒ Symbol from _enum_byte_ordering_

(Not documented)

Parameters:

Returns:



169
# File 'lib/llvm/target_ffi.rb', line 169

attach_function :byte_order, :LLVMByteOrder, [OpaqueTargetData], :byte_ordering

.call_frame_alignment_of_type(td, ty) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


267
# File 'lib/llvm/target_ffi.rb', line 267

attach_function :call_frame_alignment_of_type, :LLVMCallFrameAlignmentOfType, [OpaqueTargetData, :pointer], :uint

.clear_insertion_position(builder) ⇒ nil

(Not documented)

Parameters:

  • builder (FFI::Pointer(BuilderRef))

Returns:

  • (nil)


4444
# File 'lib/llvm/core_ffi.rb', line 4444

attach_function :clear_insertion_position, :LLVMClearInsertionPosition, [:pointer], :void

.clone_module(m) ⇒ FFI::Pointer(ModuleRef)

Return an exact copy of the specified module.

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (FFI::Pointer(ModuleRef))


1006
# File 'lib/llvm/core_ffi.rb', line 1006

attach_function :clone_module, :LLVMCloneModule, [:pointer], :pointer

.const_add(lhs_constant, rhs_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • lhs_constant (FFI::Pointer(ValueRef))
  • rhs_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2974
# File 'lib/llvm/core_ffi.rb', line 2974

attach_function :const_add, :LLVMConstAdd, [:pointer, :pointer], :pointer

.const_addr_space_cast(constant_val, to_type) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))
  • to_type (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))


3149
# File 'lib/llvm/core_ffi.rb', line 3149

attach_function :const_addr_space_cast, :LLVMConstAddrSpaceCast, [:pointer, :pointer], :pointer

.const_all_ones(ty) ⇒ FFI::Pointer(ValueRef)

Obtain a constant value referring to the instance of a type consisting of all ones.

This is only valid for integer types.

Parameters:

  • ty (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::Constantllvm::Constant::getAllOnesValue()


2619
# File 'lib/llvm/core_ffi.rb', line 2619

attach_function :const_all_ones, :LLVMConstAllOnes, [:pointer], :pointer

.const_array(element_ty, constant_vals, length) ⇒ FFI::Pointer(ValueRef)

Create a ConstantArray from values.

Parameters:

  • element_ty (FFI::Pointer(TypeRef))
  • constant_vals (FFI::Pointer(*ValueRef))
  • length (Integer)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::ConstantArrayllvm::ConstantArray::get()


2861
# File 'lib/llvm/core_ffi.rb', line 2861

attach_function :const_array, :LLVMConstArray, [:pointer, :pointer, :uint], :pointer

.const_bit_cast(constant_val, to_type) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))
  • to_type (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))


3140
# File 'lib/llvm/core_ffi.rb', line 3140

attach_function :const_bit_cast, :LLVMConstBitCast, [:pointer, :pointer], :pointer

.const_extract_element(vector_constant, index_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • vector_constant (FFI::Pointer(ValueRef))
  • index_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3186
# File 'lib/llvm/core_ffi.rb', line 3186

attach_function :const_extract_element, :LLVMConstExtractElement, [:pointer, :pointer], :pointer

.const_f_cmp(predicate, lhs_constant, rhs_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • predicate (Symbol from _enum_real_predicate_)
  • lhs_constant (FFI::Pointer(ValueRef))
  • rhs_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3075
# File 'lib/llvm/core_ffi.rb', line 3075

attach_function :const_f_cmp, :LLVMConstFCmp, [:real_predicate, :pointer, :pointer], :pointer

.const_f_neg(constant_val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2957
# File 'lib/llvm/core_ffi.rb', line 2957

attach_function :const_f_neg, :LLVMConstFNeg, [:pointer], :pointer

.const_gep(constant_val, constant_indices, num_indices) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))
  • constant_indices (FFI::Pointer(*ValueRef))
  • num_indices (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


3094
# File 'lib/llvm/core_ffi.rb', line 3094

attach_function :const_gep, :LLVMConstGEP, [:pointer, :pointer, :uint], :pointer

.const_i_cmp(predicate, lhs_constant, rhs_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • predicate (Symbol from _enum_int_predicate_)
  • lhs_constant (FFI::Pointer(ValueRef))
  • rhs_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3065
# File 'lib/llvm/core_ffi.rb', line 3065

attach_function :const_i_cmp, :LLVMConstICmp, [:int_predicate, :pointer, :pointer], :pointer

.const_in_bounds_gep(constant_val, constant_indices, num_indices) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))
  • constant_indices (FFI::Pointer(*ValueRef))
  • num_indices (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


3104
# File 'lib/llvm/core_ffi.rb', line 3104

attach_function :const_in_bounds_gep, :LLVMConstInBoundsGEP, [:pointer, :pointer, :uint], :pointer

.const_inline_asm(ty, asm_string, constraints, has_side_effects, is_align_stack) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • ty (FFI::Pointer(TypeRef))
  • asm_string (String)
  • constraints (String)
  • has_side_effects (Integer)
  • is_align_stack (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


3218
# File 'lib/llvm/core_ffi.rb', line 3218

attach_function :const_inline_asm, :LLVMConstInlineAsm, [:pointer, :string, :string, :int, :int], :pointer

.const_insert_element(vector_constant, element_value_constant, index_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • vector_constant (FFI::Pointer(ValueRef))
  • element_value_constant (FFI::Pointer(ValueRef))
  • index_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3196
# File 'lib/llvm/core_ffi.rb', line 3196

attach_function :const_insert_element, :LLVMConstInsertElement, [:pointer, :pointer, :pointer], :pointer

.const_int(int_ty, n, sign_extend) ⇒ FFI::Pointer(ValueRef)

Obtain a constant value for an integer type.

The returned value corresponds to a llvm::ConstantInt.

Parameters:

  • IntTy

    Integer type to obtain value of.

  • N

    The value the returned instance should refer to.

  • SignExtend

    Whether to sign extend the produced value.

  • int_ty (FFI::Pointer(TypeRef))
  • n (Integer)
  • sign_extend (Integer)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::ConstantIntllvm::ConstantInt::get()


2666
# File 'lib/llvm/core_ffi.rb', line 2666

attach_function :const_int, :LLVMConstInt, [:pointer, :ulong_long, :int], :pointer

.const_int_get_s_ext_value(constant_val) ⇒ Integer

Obtain the sign extended value for an integer constant value.

Parameters:

  • constant_val (FFI::Pointer(ValueRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::ConstantIntllvm::ConstantInt::getSExtValue()


2759
# File 'lib/llvm/core_ffi.rb', line 2759

attach_function :const_int_get_s_ext_value, :LLVMConstIntGetSExtValue, [:pointer], :long_long

.const_int_get_z_ext_value(constant_val) ⇒ Integer

Obtain the zero extended value for an integer constant value.

Parameters:

  • constant_val (FFI::Pointer(ValueRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::ConstantIntllvm::ConstantInt::getZExtValue()


2749
# File 'lib/llvm/core_ffi.rb', line 2749

attach_function :const_int_get_z_ext_value, :LLVMConstIntGetZExtValue, [:pointer], :ulong_long

.const_int_of_arbitrary_precision(int_ty, num_words, words) ⇒ FFI::Pointer(ValueRef)

Obtain a constant value for an integer of arbitrary precision.

Parameters:

  • int_ty (FFI::Pointer(TypeRef))
  • num_words (Integer)
  • words (FFI::Pointer(*U_long))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::ConstantIntllvm::ConstantInt::get()


2678
# File 'lib/llvm/core_ffi.rb', line 2678

attach_function :const_int_of_arbitrary_precision, :LLVMConstIntOfArbitraryPrecision, [:pointer, :uint, :pointer], :pointer

.const_int_of_string(int_ty, text, radix) ⇒ FFI::Pointer(ValueRef)

Obtain a constant value for an integer parsed from a string.

A similar API, LLVMConstIntOfStringAndSize is also available. If the string’s length is available, it is preferred to call that function instead.

Parameters:

  • int_ty (FFI::Pointer(TypeRef))
  • text (String)
  • radix (Integer)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::ConstantIntllvm::ConstantInt::get()


2694
# File 'lib/llvm/core_ffi.rb', line 2694

attach_function :const_int_of_string, :LLVMConstIntOfString, [:pointer, :string, :uchar], :pointer

.const_int_of_string_and_size(int_ty, text, s_len, radix) ⇒ FFI::Pointer(ValueRef)

Obtain a constant value for an integer parsed from a string with specified length.

Parameters:

  • int_ty (FFI::Pointer(TypeRef))
  • text (String)
  • s_len (Integer)
  • radix (Integer)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::ConstantIntllvm::ConstantInt::get()


2708
# File 'lib/llvm/core_ffi.rb', line 2708

attach_function :const_int_of_string_and_size, :LLVMConstIntOfStringAndSize, [:pointer, :string, :uint, :uchar], :pointer

.const_int_to_ptr(constant_val, to_type) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))
  • to_type (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))


3131
# File 'lib/llvm/core_ffi.rb', line 3131

attach_function :const_int_to_ptr, :LLVMConstIntToPtr, [:pointer, :pointer], :pointer

.const_mul(lhs_constant, rhs_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • lhs_constant (FFI::Pointer(ValueRef))
  • rhs_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3028
# File 'lib/llvm/core_ffi.rb', line 3028

attach_function :const_mul, :LLVMConstMul, [:pointer, :pointer], :pointer

.const_named_struct(struct_ty, constant_vals, count) ⇒ FFI::Pointer(ValueRef)

Create a non-anonymous ConstantStruct from values.

Parameters:

  • struct_ty (FFI::Pointer(TypeRef))
  • constant_vals (FFI::Pointer(*ValueRef))
  • count (Integer)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::ConstantStructllvm::ConstantStruct::get()


2873
# File 'lib/llvm/core_ffi.rb', line 2873

attach_function :const_named_struct, :LLVMConstNamedStruct, [:pointer, :pointer, :uint], :pointer

.const_neg(constant_val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2933
# File 'lib/llvm/core_ffi.rb', line 2933

attach_function :const_neg, :LLVMConstNeg, [:pointer], :pointer

.const_not(constant_val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2965
# File 'lib/llvm/core_ffi.rb', line 2965

attach_function :const_not, :LLVMConstNot, [:pointer], :pointer

.const_nsw_add(lhs_constant, rhs_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • lhs_constant (FFI::Pointer(ValueRef))
  • rhs_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2983
# File 'lib/llvm/core_ffi.rb', line 2983

attach_function :const_nsw_add, :LLVMConstNSWAdd, [:pointer, :pointer], :pointer

.const_nsw_mul(lhs_constant, rhs_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • lhs_constant (FFI::Pointer(ValueRef))
  • rhs_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3037
# File 'lib/llvm/core_ffi.rb', line 3037

attach_function :const_nsw_mul, :LLVMConstNSWMul, [:pointer, :pointer], :pointer

.const_nsw_neg(constant_val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2941
# File 'lib/llvm/core_ffi.rb', line 2941

attach_function :const_nsw_neg, :LLVMConstNSWNeg, [:pointer], :pointer

.const_nsw_sub(lhs_constant, rhs_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • lhs_constant (FFI::Pointer(ValueRef))
  • rhs_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3010
# File 'lib/llvm/core_ffi.rb', line 3010

attach_function :const_nsw_sub, :LLVMConstNSWSub, [:pointer, :pointer], :pointer

.const_null(ty) ⇒ FFI::Pointer(ValueRef)

Obtain a constant value referring to the null instance of a type.

Parameters:

  • ty (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::Constantllvm::Constant::getNullValue()


2606
# File 'lib/llvm/core_ffi.rb', line 2606

attach_function :const_null, :LLVMConstNull, [:pointer], :pointer

.const_nuw_add(lhs_constant, rhs_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • lhs_constant (FFI::Pointer(ValueRef))
  • rhs_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2992
# File 'lib/llvm/core_ffi.rb', line 2992

attach_function :const_nuw_add, :LLVMConstNUWAdd, [:pointer, :pointer], :pointer

.const_nuw_mul(lhs_constant, rhs_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • lhs_constant (FFI::Pointer(ValueRef))
  • rhs_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3046
# File 'lib/llvm/core_ffi.rb', line 3046

attach_function :const_nuw_mul, :LLVMConstNUWMul, [:pointer, :pointer], :pointer

.const_nuw_neg(constant_val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2949
# File 'lib/llvm/core_ffi.rb', line 2949

attach_function :const_nuw_neg, :LLVMConstNUWNeg, [:pointer], :pointer

.const_nuw_sub(lhs_constant, rhs_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • lhs_constant (FFI::Pointer(ValueRef))
  • rhs_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3019
# File 'lib/llvm/core_ffi.rb', line 3019

attach_function :const_nuw_sub, :LLVMConstNUWSub, [:pointer, :pointer], :pointer

.const_pointer_cast(constant_val, to_type) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))
  • to_type (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))


3167
# File 'lib/llvm/core_ffi.rb', line 3167

attach_function :const_pointer_cast, :LLVMConstPointerCast, [:pointer, :pointer], :pointer

.const_pointer_null(ty) ⇒ FFI::Pointer(ValueRef)

Obtain a constant that is a constant pointer pointing to NULL for a specified type.

Parameters:

  • ty (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))


2648
# File 'lib/llvm/core_ffi.rb', line 2648

attach_function :const_pointer_null, :LLVMConstPointerNull, [:pointer], :pointer

.const_ptr_to_int(constant_val, to_type) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))
  • to_type (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))


3122
# File 'lib/llvm/core_ffi.rb', line 3122

attach_function :const_ptr_to_int, :LLVMConstPtrToInt, [:pointer, :pointer], :pointer

.const_real(real_ty, n) ⇒ FFI::Pointer(ValueRef)

Obtain a constant value referring to a double floating point value.

Parameters:

  • real_ty (FFI::Pointer(TypeRef))
  • n (Float)

Returns:

  • (FFI::Pointer(ValueRef))


2717
# File 'lib/llvm/core_ffi.rb', line 2717

attach_function :const_real, :LLVMConstReal, [:pointer, :double], :pointer

.const_real_get_double(constant_val, loses_info) ⇒ Float

Obtain the double value for an floating point constant value. losesInfo indicates if some precision was lost in the conversion.

Parameters:

  • constant_val (FFI::Pointer(ValueRef))
  • loses_info (FFI::Pointer(*Bool))

Returns:

See Also:

  • llvmllvm::ConstantFPllvm::ConstantFP::getDoubleValue


2771
# File 'lib/llvm/core_ffi.rb', line 2771

attach_function :const_real_get_double, :LLVMConstRealGetDouble, [:pointer, :pointer], :double

.const_real_of_string(real_ty, text) ⇒ FFI::Pointer(ValueRef)

Obtain a constant for a floating point value parsed from a string.

A similar API, LLVMConstRealOfStringAndSize is also available. It should be used if the input string’s length is known.

Parameters:

  • real_ty (FFI::Pointer(TypeRef))
  • text (String)

Returns:

  • (FFI::Pointer(ValueRef))


2729
# File 'lib/llvm/core_ffi.rb', line 2729

attach_function :const_real_of_string, :LLVMConstRealOfString, [:pointer, :string], :pointer

.const_real_of_string_and_size(real_ty, text, s_len) ⇒ FFI::Pointer(ValueRef)

Obtain a constant for a floating point value parsed from a string.

Parameters:

  • real_ty (FFI::Pointer(TypeRef))
  • text (String)
  • s_len (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


2739
# File 'lib/llvm/core_ffi.rb', line 2739

attach_function :const_real_of_string_and_size, :LLVMConstRealOfStringAndSize, [:pointer, :string, :uint], :pointer

.const_select(constant_condition, constant_if_true, constant_if_false) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_condition (FFI::Pointer(ValueRef))
  • constant_if_true (FFI::Pointer(ValueRef))
  • constant_if_false (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3177
# File 'lib/llvm/core_ffi.rb', line 3177

attach_function :const_select, :LLVMConstSelect, [:pointer, :pointer, :pointer], :pointer

.const_shl(lhs_constant, rhs_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • lhs_constant (FFI::Pointer(ValueRef))
  • rhs_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3084
# File 'lib/llvm/core_ffi.rb', line 3084

attach_function :const_shl, :LLVMConstShl, [:pointer, :pointer], :pointer

.const_shuffle_vector(vector_a_constant, vector_b_constant, mask_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • vector_a_constant (FFI::Pointer(ValueRef))
  • vector_b_constant (FFI::Pointer(ValueRef))
  • mask_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3206
# File 'lib/llvm/core_ffi.rb', line 3206

attach_function :const_shuffle_vector, :LLVMConstShuffleVector, [:pointer, :pointer, :pointer], :pointer

.const_string(str, length, dont_null_terminate) ⇒ FFI::Pointer(ValueRef)

Create a ConstantDataSequential with string content in the global context.

This is the same as LLVMConstStringInContext except it operates on the global context.

Parameters:

  • str (String)
  • length (Integer)
  • dont_null_terminate (Integer)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • LLVMConstStringInContext()
  • llvmllvm::ConstantDataArrayllvm::ConstantDataArray::getString()


2800
# File 'lib/llvm/core_ffi.rb', line 2800

attach_function :const_string, :LLVMConstString, [:string, :uint, :int], :pointer

.const_string_in_context(c, str, length, dont_null_terminate) ⇒ FFI::Pointer(ValueRef)

Create a ConstantDataSequential and initialize it with a string.

Parameters:

  • c (FFI::Pointer(ContextRef))
  • str (String)
  • length (Integer)
  • dont_null_terminate (Integer)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::ConstantDataArrayllvm::ConstantDataArray::getString()


2784
# File 'lib/llvm/core_ffi.rb', line 2784

attach_function :const_string_in_context, :LLVMConstStringInContext, [:pointer, :string, :uint, :int], :pointer

.const_struct(constant_vals, count, packed) ⇒ FFI::Pointer(ValueRef)

Create a ConstantStruct in the global Context.

This is the same as LLVMConstStructInContext except it operates on the global Context.

Parameters:

  • constant_vals (FFI::Pointer(*ValueRef))
  • count (Integer)
  • packed (Integer)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • LLVMConstStructInContext()


2849
# File 'lib/llvm/core_ffi.rb', line 2849

attach_function :const_struct, :LLVMConstStruct, [:pointer, :uint, :int], :pointer

.const_struct_in_context(c, constant_vals, count, packed) ⇒ FFI::Pointer(ValueRef)

Create an anonymous ConstantStruct with the specified values.

Parameters:

  • c (FFI::Pointer(ContextRef))
  • constant_vals (FFI::Pointer(*ValueRef))
  • count (Integer)
  • packed (Integer)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::ConstantStructllvm::ConstantStruct::getAnon()


2834
# File 'lib/llvm/core_ffi.rb', line 2834

attach_function :const_struct_in_context, :LLVMConstStructInContext, [:pointer, :pointer, :uint, :int], :pointer

.const_sub(lhs_constant, rhs_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • lhs_constant (FFI::Pointer(ValueRef))
  • rhs_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3001
# File 'lib/llvm/core_ffi.rb', line 3001

attach_function :const_sub, :LLVMConstSub, [:pointer, :pointer], :pointer

.const_trunc(constant_val, to_type) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))
  • to_type (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))


3113
# File 'lib/llvm/core_ffi.rb', line 3113

attach_function :const_trunc, :LLVMConstTrunc, [:pointer, :pointer], :pointer

.const_trunc_or_bit_cast(constant_val, to_type) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • constant_val (FFI::Pointer(ValueRef))
  • to_type (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))


3158
# File 'lib/llvm/core_ffi.rb', line 3158

attach_function :const_trunc_or_bit_cast, :LLVMConstTruncOrBitCast, [:pointer, :pointer], :pointer

.const_vector(scalar_constant_vals, size) ⇒ FFI::Pointer(ValueRef)

Create a ConstantVector from values.

Parameters:

  • scalar_constant_vals (FFI::Pointer(*ValueRef))
  • size (Integer)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::ConstantVectorllvm::ConstantVector::get()


2895
# File 'lib/llvm/core_ffi.rb', line 2895

attach_function :const_vector, :LLVMConstVector, [:pointer, :uint], :pointer

.const_xor(lhs_constant, rhs_constant) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • lhs_constant (FFI::Pointer(ValueRef))
  • rhs_constant (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3055
# File 'lib/llvm/core_ffi.rb', line 3055

attach_function :const_xor, :LLVMConstXor, [:pointer, :pointer], :pointer

.context_createFFI::Pointer(ContextRef)

Create a new context.

Every call to this function should be paired with a call to LLVMContextDispose() or the context will leak memory.

Returns:

  • (FFI::Pointer(ContextRef))


892
# File 'lib/llvm/core_ffi.rb', line 892

attach_function :context_create, :LLVMContextCreate, [], :pointer

.context_dispose(c) ⇒ nil

Destroy a context instance.

This should be called for every call to LLVMContextCreate() or memory will be leaked.

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (nil)


932
# File 'lib/llvm/core_ffi.rb', line 932

attach_function :context_dispose, :LLVMContextDispose, [:pointer], :void

.context_set_diagnostic_handler(c, handler, diagnostic_context) ⇒ nil

Set the diagnostic handler for this context.

Parameters:

Returns:

  • (nil)


909
# File 'lib/llvm/core_ffi.rb', line 909

attach_function :context_set_diagnostic_handler, :LLVMContextSetDiagnosticHandler, [:pointer, :diagnostic_handler, :pointer], :void

.context_set_yield_callback(c, callback, opaque_handle) ⇒ nil

Set the yield callback function for this context.

Parameters:

Returns:

  • (nil)

See Also:

  • LLVMContext::setYieldCallback()


921
# File 'lib/llvm/core_ffi.rb', line 921

attach_function :context_set_yield_callback, :LLVMContextSetYieldCallback, [:pointer, :yield_callback, :pointer], :void

.copy_string_rep_of_target_data(td) ⇒ String

(Not documented)

Parameters:

Returns:

  • (String)


161
# File 'lib/llvm/target_ffi.rb', line 161

attach_function :copy_string_rep_of_target_data, :LLVMCopyStringRepOfTargetData, [OpaqueTargetData], :string

.count_basic_blocks(fn) ⇒ Integer

Obtain the number of basic blocks in a function.

Parameters:

  • Fn

    Function value to operate on.

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (Integer)


3892
# File 'lib/llvm/core_ffi.rb', line 3892

attach_function :count_basic_blocks, :LLVMCountBasicBlocks, [:pointer], :uint

.count_incoming(phi_node) ⇒ Integer

Obtain the number of incoming basic blocks to a PHI node.

Parameters:

  • phi_node (FFI::Pointer(ValueRef))

Returns:

  • (Integer)


4362
# File 'lib/llvm/core_ffi.rb', line 4362

attach_function :count_incoming, :LLVMCountIncoming, [:pointer], :uint

.count_param_types(function_ty) ⇒ Integer

Obtain the number of parameters this function accepts.

Parameters:

  • function_ty (FFI::Pointer(TypeRef))

Returns:

  • (Integer)


1532
# File 'lib/llvm/core_ffi.rb', line 1532

attach_function :count_param_types, :LLVMCountParamTypes, [:pointer], :uint

.count_params(fn) ⇒ Integer

Obtain the number of parameters in a function.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::Functionllvm::Function::arg_size()


3648
# File 'lib/llvm/core_ffi.rb', line 3648

attach_function :count_params, :LLVMCountParams, [:pointer], :uint

.count_struct_element_types(struct_ty) ⇒ Integer

Get the number of elements defined inside the structure.

Parameters:

  • struct_ty (FFI::Pointer(TypeRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::StructTypellvm::StructType::getNumElements()


1621
# File 'lib/llvm/core_ffi.rb', line 1621

attach_function :count_struct_element_types, :LLVMCountStructElementTypes, [:pointer], :uint

.create_builderFFI::Pointer(BuilderRef)

(Not documented)

Returns:

  • (FFI::Pointer(BuilderRef))


4400
# File 'lib/llvm/core_ffi.rb', line 4400

attach_function :create_builder, :LLVMCreateBuilder, [], :pointer

.create_builder_in_context(c) ⇒ FFI::Pointer(BuilderRef)

An instruction builder represents a point within a basic block and is the exclusive means of building instructions using the C interface.

@{

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(BuilderRef))


4393
# File 'lib/llvm/core_ffi.rb', line 4393

attach_function :create_builder_in_context, :LLVMCreateBuilderInContext, [:pointer], :pointer

.create_execution_engine_for_module(out_ee, m, out_error) ⇒ Integer

– Operations on execution engines ———————————–===

Parameters:

  • out_ee (FFI::Pointer(*ExecutionEngineRef))
  • m (FFI::Pointer(ModuleRef))
  • out_error (FFI::Pointer(**CharS))

Returns:

  • (Integer)


145
# File 'lib/llvm/execution_engine_ffi.rb', line 145

attach_function :create_execution_engine_for_module, :LLVMCreateExecutionEngineForModule, [:pointer, :pointer, :pointer], :int

.create_function_pass_manager(mp) ⇒ FFI::Pointer(PassManagerRef)

Deprecated: Use LLVMCreateFunctionPassManagerForModule instead.

Parameters:

  • mp (FFI::Pointer(ModuleProviderRef))

Returns:

  • (FFI::Pointer(PassManagerRef))


5593
# File 'lib/llvm/core_ffi.rb', line 5593

attach_function :create_function_pass_manager, :LLVMCreateFunctionPassManager, [:pointer], :pointer

.create_function_pass_manager_for_module(m) ⇒ FFI::Pointer(PassManagerRef)

Constructs a new function-by-function pass pipeline over the module

provider. It does not take ownership of the module provider. This type of
pipeline is suitable for code generation and JIT compilation tasks.
@see llvm::FunctionPassManager::FunctionPassManager

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (FFI::Pointer(PassManagerRef))


5585
# File 'lib/llvm/core_ffi.rb', line 5585

attach_function :create_function_pass_manager_for_module, :LLVMCreateFunctionPassManagerForModule, [:pointer], :pointer

.create_generic_value_of_float(ty, n) ⇒ OpaqueGenericValue

(Not documented)

Parameters:

  • ty (FFI::Pointer(TypeRef))
  • n (Float)

Returns:



93
# File 'lib/llvm/execution_engine_ffi.rb', line 93

attach_function :create_generic_value_of_float, :LLVMCreateGenericValueOfFloat, [:pointer, :double], OpaqueGenericValue

.create_generic_value_of_int(ty, n, is_signed) ⇒ OpaqueGenericValue

– Operations on generic values ————————————–===

Parameters:

  • ty (FFI::Pointer(TypeRef))
  • n (Integer)
  • is_signed (Integer)

Returns:



76
# File 'lib/llvm/execution_engine_ffi.rb', line 76

attach_function :create_generic_value_of_int, :LLVMCreateGenericValueOfInt, [:pointer, :ulong_long, :int], OpaqueGenericValue

.create_generic_value_of_pointer(p) ⇒ OpaqueGenericValue

(Not documented)

Parameters:

  • p (FFI::Pointer(*Void))

Returns:



84
# File 'lib/llvm/execution_engine_ffi.rb', line 84

attach_function :create_generic_value_of_pointer, :LLVMCreateGenericValueOfPointer, [:pointer], OpaqueGenericValue

.create_interpreter_for_module(out_interp, m, out_error) ⇒ Integer

(Not documented)

Parameters:

  • out_interp (FFI::Pointer(*ExecutionEngineRef))
  • m (FFI::Pointer(ModuleRef))
  • out_error (FFI::Pointer(**CharS))

Returns:

  • (Integer)


155
# File 'lib/llvm/execution_engine_ffi.rb', line 155

attach_function :create_interpreter_for_module, :LLVMCreateInterpreterForModule, [:pointer, :pointer, :pointer], :int

.create_jit_compiler_for_module(out_jit, m, opt_level, out_error) ⇒ Integer

(Not documented)

Parameters:

  • out_jit (FFI::Pointer(*ExecutionEngineRef))
  • m (FFI::Pointer(ModuleRef))
  • opt_level (Integer)
  • out_error (FFI::Pointer(**CharS))

Returns:

  • (Integer)


166
# File 'lib/llvm/execution_engine_ffi.rb', line 166

attach_function :create_jit_compiler_for_module, :LLVMCreateJITCompilerForModule, [:pointer, :pointer, :uint, :pointer], :int

.create_mcjit_compiler_for_module(out_jit, m, options, size_of_options, out_error) ⇒ Integer

Create an MCJIT execution engine for a module, with the given options. It is the responsibility of the caller to ensure that all fields in Options up to the given SizeOfOptions are initialized. It is correct to pass a smaller value of SizeOfOptions that omits some fields. The canonical way of using this is:

LLVMMCJITCompilerOptions options; LLVMInitializeMCJITCompilerOptions(&options, sizeof(options)); … fill in those options you care about LLVMCreateMCJITCompilerForModule(&jit, mod, &options, sizeof(options),

&error);

Note that this is also correct, though possibly suboptimal:

LLVMCreateMCJITCompilerForModule(&jit, mod, 0, 0, &error);

Parameters:

  • out_jit (FFI::Pointer(*ExecutionEngineRef))
  • m (FFI::Pointer(ModuleRef))
  • options (MCJITCompilerOptions)
  • size_of_options (Integer)
  • out_error (FFI::Pointer(**CharS))

Returns:

  • (Integer)


201
# File 'lib/llvm/execution_engine_ffi.rb', line 201

attach_function :create_mcjit_compiler_for_module, :LLVMCreateMCJITCompilerForModule, [:pointer, :pointer, MCJITCompilerOptions, :ulong, :pointer], :int

.create_memory_buffer_with_contents_of_file(path, out_mem_buf, out_message) ⇒ Integer

@{

Parameters:

  • path (String)
  • out_mem_buf (FFI::Pointer(*MemoryBufferRef))
  • out_message (FFI::Pointer(**CharS))

Returns:

  • (Integer)


5503
# File 'lib/llvm/core_ffi.rb', line 5503

attach_function :create_memory_buffer_with_contents_of_file, :LLVMCreateMemoryBufferWithContentsOfFile, [:string, :pointer, :pointer], :int

.create_memory_buffer_with_memory_range(input_data, input_data_length, buffer_name, requires_null_terminator) ⇒ FFI::Pointer(MemoryBufferRef)

(Not documented)

Parameters:

  • input_data (String)
  • input_data_length (Integer)
  • buffer_name (String)
  • requires_null_terminator (Integer)

Returns:

  • (FFI::Pointer(MemoryBufferRef))


5523
# File 'lib/llvm/core_ffi.rb', line 5523

attach_function :create_memory_buffer_with_memory_range, :LLVMCreateMemoryBufferWithMemoryRange, [:string, :ulong, :string, :int], :pointer

.create_memory_buffer_with_memory_range_copy(input_data, input_data_length, buffer_name) ⇒ FFI::Pointer(MemoryBufferRef)

(Not documented)

Parameters:

  • input_data (String)
  • input_data_length (Integer)
  • buffer_name (String)

Returns:

  • (FFI::Pointer(MemoryBufferRef))


5533
# File 'lib/llvm/core_ffi.rb', line 5533

attach_function :create_memory_buffer_with_memory_range_copy, :LLVMCreateMemoryBufferWithMemoryRangeCopy, [:string, :ulong, :string], :pointer

.create_memory_buffer_with_stdin(out_mem_buf, out_message) ⇒ Integer

(Not documented)

Parameters:

  • out_mem_buf (FFI::Pointer(*MemoryBufferRef))
  • out_message (FFI::Pointer(**CharS))

Returns:

  • (Integer)


5512
# File 'lib/llvm/core_ffi.rb', line 5512

attach_function :create_memory_buffer_with_stdin, :LLVMCreateMemoryBufferWithSTDIN, [:pointer, :pointer], :int

.create_message(message) ⇒ String

– Error handling —————————————————-===

Parameters:

  • message (String)

Returns:

  • (String)


844
# File 'lib/llvm/core_ffi.rb', line 844

attach_function :create_message, :LLVMCreateMessage, [:string], :string

.create_module_provider_for_existing_module(m) ⇒ FFI::Pointer(ModuleProviderRef)

Changes the type of M so it can be passed to FunctionPassManagers and the JIT. They take ModuleProviders for historical reasons.

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (FFI::Pointer(ModuleProviderRef))


5483
# File 'lib/llvm/core_ffi.rb', line 5483

attach_function :create_module_provider_for_existing_module, :LLVMCreateModuleProviderForExistingModule, [:pointer], :pointer

.create_pass_managerFFI::Pointer(PassManagerRef)

Constructs a new whole-module pass pipeline. This type of pipeline is

suitable for link-time optimization and whole-module transformations.
@see llvm::PassManager::PassManager

Returns:

  • (FFI::Pointer(PassManagerRef))


5574
# File 'lib/llvm/core_ffi.rb', line 5574

attach_function :create_pass_manager, :LLVMCreatePassManager, [], :pointer

.create_simple_mcjit_memory_manager(opaque, allocate_code_section, allocate_data_section, finalize_memory, destroy) ⇒ OpaqueMCJITMemoryManager

Create a simple custom MCJIT memory manager. This memory manager can intercept allocations in a module-oblivious way. This will return NULL if any of the passed functions are NULL.

Parameters:

Returns:



412
# File 'lib/llvm/execution_engine_ffi.rb', line 412

attach_function :create_simple_mcjit_memory_manager, :LLVMCreateSimpleMCJITMemoryManager, [:pointer, :memory_manager_allocate_code_section_callback, :memory_manager_allocate_data_section_callback, :memory_manager_finalize_memory_callback, :pointer], OpaqueMCJITMemoryManager

.create_target_data(string_rep) ⇒ OpaqueTargetData

(Not documented)

Parameters:

  • string_rep (String)

Returns:



136
# File 'lib/llvm/target_ffi.rb', line 136

attach_function :create_target_data, :LLVMCreateTargetData, [:string], OpaqueTargetData

.create_target_data_layout(t) ⇒ OpaqueTargetData

Create a DataLayout based on the targetMachine.

Parameters:

Returns:



574
# File 'lib/llvm/target_ffi.rb', line 574

attach_function :create_target_data_layout, :LLVMCreateTargetDataLayout, [OpaqueTargetMachine], OpaqueTargetData

.create_target_machine(t, triple, cpu, features, level, reloc, code_model) ⇒ OpaqueTargetMachine

Creates a new llvm::TargetMachine. See llvm::Target::createTargetMachine

Parameters:

Returns:



519
# File 'lib/llvm/target_ffi.rb', line 519

attach_function :create_target_machine, :LLVMCreateTargetMachine, [Target, :string, :string, :string, :code_gen_opt_level, :reloc_mode, :code_model], OpaqueTargetMachine

.delete_basic_block(bb) ⇒ nil

Remove a basic block from a function and delete it.

This deletes the basic block from its containing function and deletes the basic block itself.

Parameters:

  • bb (FFI::Pointer(BasicBlockRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::BasicBlockllvm::BasicBlock::eraseFromParent()


4019
# File 'lib/llvm/core_ffi.rb', line 4019

attach_function :delete_basic_block, :LLVMDeleteBasicBlock, [:pointer], :void

.delete_function(fn) ⇒ nil

Remove a function from its containing module and deletes it.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::Functionllvm::Function::eraseFromParent()


3548
# File 'lib/llvm/core_ffi.rb', line 3548

attach_function :delete_function, :LLVMDeleteFunction, [:pointer], :void

.delete_global(global_var) ⇒ nil

(Not documented)

Parameters:

  • global_var (FFI::Pointer(ValueRef))

Returns:

  • (nil)


3436
# File 'lib/llvm/core_ffi.rb', line 3436

attach_function :delete_global, :LLVMDeleteGlobal, [:pointer], :void

.dispose_builder(builder) ⇒ nil

(Not documented)

Parameters:

  • builder (FFI::Pointer(BuilderRef))

Returns:

  • (nil)


4471
# File 'lib/llvm/core_ffi.rb', line 4471

attach_function :dispose_builder, :LLVMDisposeBuilder, [:pointer], :void

.dispose_execution_engine(ee) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


209
# File 'lib/llvm/execution_engine_ffi.rb', line 209

attach_function :dispose_execution_engine, :LLVMDisposeExecutionEngine, [OpaqueExecutionEngine], :void

.dispose_generic_value(gen_val) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


135
# File 'lib/llvm/execution_engine_ffi.rb', line 135

attach_function :dispose_generic_value, :LLVMDisposeGenericValue, [OpaqueGenericValue], :void

.dispose_mcjit_memory_manager(mm) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


420
# File 'lib/llvm/execution_engine_ffi.rb', line 420

attach_function :dispose_mcjit_memory_manager, :LLVMDisposeMCJITMemoryManager, [OpaqueMCJITMemoryManager], :void

.dispose_memory_buffer(mem_buf) ⇒ nil

(Not documented)

Parameters:

  • mem_buf (FFI::Pointer(MemoryBufferRef))

Returns:

  • (nil)


5557
# File 'lib/llvm/core_ffi.rb', line 5557

attach_function :dispose_memory_buffer, :LLVMDisposeMemoryBuffer, [:pointer], :void

.dispose_message(message) ⇒ nil

(Not documented)

Parameters:

  • message (String)

Returns:

  • (nil)


852
# File 'lib/llvm/core_ffi.rb', line 852

attach_function :dispose_message, :LLVMDisposeMessage, [:string], :void

.dispose_module(m) ⇒ nil

Destroy a module instance.

This must be called for every created module or memory will be leaked.

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (nil)


1017
# File 'lib/llvm/core_ffi.rb', line 1017

attach_function :dispose_module, :LLVMDisposeModule, [:pointer], :void

.dispose_module_provider(m) ⇒ nil

Destroys the module M.

Parameters:

  • m (FFI::Pointer(ModuleProviderRef))

Returns:

  • (nil)


5491
# File 'lib/llvm/core_ffi.rb', line 5491

attach_function :dispose_module_provider, :LLVMDisposeModuleProvider, [:pointer], :void

.dispose_pass_manager(pm) ⇒ nil

Frees the memory of a pass pipeline. For function pipelines, does not free

the module provider.
@see llvm::PassManagerBase::~PassManagerBase.

Parameters:

  • pm (FFI::Pointer(PassManagerRef))

Returns:

  • (nil)


5647
# File 'lib/llvm/core_ffi.rb', line 5647

attach_function :dispose_pass_manager, :LLVMDisposePassManager, [:pointer], :void

.dispose_target_data(td) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


144
# File 'lib/llvm/target_ffi.rb', line 144

attach_function :dispose_target_data, :LLVMDisposeTargetData, [OpaqueTargetData], :void

.dispose_target_machine(t) ⇒ nil

Dispose the LLVMTargetMachineRef instance generated by

LLVMCreateTargetMachine.

Parameters:

Returns:

  • (nil)


528
# File 'lib/llvm/target_ffi.rb', line 528

attach_function :dispose_target_machine, :LLVMDisposeTargetMachine, [OpaqueTargetMachine], :void

.double_typeFFI::Pointer(TypeRef)

(Not documented)

Returns:

  • (FFI::Pointer(TypeRef))


1473
# File 'lib/llvm/core_ffi.rb', line 1473

attach_function :double_type, :LLVMDoubleType, [], :pointer

.double_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

Obtain a 64-bit floating point type from a context.

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1425
# File 'lib/llvm/core_ffi.rb', line 1425

attach_function :double_type_in_context, :LLVMDoubleTypeInContext, [:pointer], :pointer

.dump_module(m) ⇒ nil

Dump a representation of a module to stderr.

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (nil)

See Also:

  • Module::dump()


1069
# File 'lib/llvm/core_ffi.rb', line 1069

attach_function :dump_module, :LLVMDumpModule, [:pointer], :void

.dump_type(val) ⇒ nil

Dump a representation of a type to stderr.

Parameters:

  • val (FFI::Pointer(TypeRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::Typellvm::Type::dump()


1274
# File 'lib/llvm/core_ffi.rb', line 1274

attach_function :dump_type, :LLVMDumpType, [:pointer], :void

.dump_value(val) ⇒ nil

Dump a representation of a value to stderr.

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::Valuellvm::Value::dump()


1826
# File 'lib/llvm/core_ffi.rb', line 1826

attach_function :dump_value, :LLVMDumpValue, [:pointer], :void

.element_at_offset(td, struct_ty, offset) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


295
# File 'lib/llvm/target_ffi.rb', line 295

attach_function :element_at_offset, :LLVMElementAtOffset, [OpaqueTargetData, :pointer, :ulong_long], :uint

.finalize_function_pass_manager(fpm) ⇒ Integer

Finalizes all of the function passes scheduled in in the function pass

manager. Returns 1 if any of the passes modified the module, 0 otherwise.
@see llvm::FunctionPassManager::doFinalization

Parameters:

  • fpm (FFI::Pointer(PassManagerRef))

Returns:

  • (Integer)


5637
# File 'lib/llvm/core_ffi.rb', line 5637

attach_function :finalize_function_pass_manager, :LLVMFinalizeFunctionPassManager, [:pointer], :int

.find_function(ee, name, out_fn) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


287
# File 'lib/llvm/execution_engine_ffi.rb', line 287

attach_function :find_function, :LLVMFindFunction, [OpaqueExecutionEngine, :string, :pointer], :int

.float_typeFFI::Pointer(TypeRef)

(Not documented)

Returns:

  • (FFI::Pointer(TypeRef))


1466
# File 'lib/llvm/core_ffi.rb', line 1466

attach_function :float_type, :LLVMFloatType, [], :pointer

.float_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

Obtain a 32-bit floating point type from a context.

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1417
# File 'lib/llvm/core_ffi.rb', line 1417

attach_function :float_type_in_context, :LLVMFloatTypeInContext, [:pointer], :pointer

.fp128_typeFFI::Pointer(TypeRef)

(Not documented)

Returns:

  • (FFI::Pointer(TypeRef))


1487
# File 'lib/llvm/core_ffi.rb', line 1487

attach_function :fp128_type, :LLVMFP128Type, [], :pointer

.fp128_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

Obtain a 128-bit floating point type (112-bit mantissa) from a context.

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1442
# File 'lib/llvm/core_ffi.rb', line 1442

attach_function :fp128_type_in_context, :LLVMFP128TypeInContext, [:pointer], :pointer

.free_machine_code_for_function(ee, f) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


257
# File 'lib/llvm/execution_engine_ffi.rb', line 257

attach_function :free_machine_code_for_function, :LLVMFreeMachineCodeForFunction, [OpaqueExecutionEngine, :pointer], :void

.function_type(return_type, param_types, param_count, is_var_arg) ⇒ FFI::Pointer(TypeRef)

Obtain a function type consisting of a specified signature.

The function is defined as a tuple of a return Type, a list of parameter types, and whether the function is variadic.

Parameters:

  • return_type (FFI::Pointer(TypeRef))
  • param_types (FFI::Pointer(*TypeRef))
  • param_count (Integer)
  • is_var_arg (Integer)

Returns:

  • (FFI::Pointer(TypeRef))


1508
# File 'lib/llvm/core_ffi.rb', line 1508

attach_function :function_type, :LLVMFunctionType, [:pointer, :pointer, :uint, :int], :pointer

.generic_value_int_width(gen_val_ref) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


101
# File 'lib/llvm/execution_engine_ffi.rb', line 101

attach_function :generic_value_int_width, :LLVMGenericValueIntWidth, [OpaqueGenericValue], :uint

.generic_value_to_float(ty_ref, gen_val) ⇒ Float

(Not documented)

Parameters:

Returns:



127
# File 'lib/llvm/execution_engine_ffi.rb', line 127

attach_function :generic_value_to_float, :LLVMGenericValueToFloat, [:pointer, OpaqueGenericValue], :double

.generic_value_to_int(gen_val, is_signed) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


110
# File 'lib/llvm/execution_engine_ffi.rb', line 110

attach_function :generic_value_to_int, :LLVMGenericValueToInt, [OpaqueGenericValue, :int], :ulong_long

.generic_value_to_pointer(gen_val) ⇒ FFI::Pointer(*Void)

(Not documented)

Parameters:

Returns:

  • (FFI::Pointer(*Void))


118
# File 'lib/llvm/execution_engine_ffi.rb', line 118

attach_function :generic_value_to_pointer, :LLVMGenericValueToPointer, [OpaqueGenericValue], :pointer

.get_alignment(v) ⇒ Integer

Obtain the preferred alignment of the value.

Parameters:

  • v (FFI::Pointer(ValueRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::AllocaInstllvm::AllocaInst::getAlignment()
  • llvmllvm::LoadInstllvm::LoadInst::getAlignment()
  • llvmllvm::StoreInstllvm::StoreInst::getAlignment()
  • llvmllvm::GlobalValuellvm::GlobalValue::getAlignment()


3347
# File 'lib/llvm/core_ffi.rb', line 3347

attach_function :get_alignment, :LLVMGetAlignment, [:pointer], :uint

.get_array_length(array_ty) ⇒ Integer

Obtain the length of an array type.

This only works on types that represent arrays.

Parameters:

  • array_ty (FFI::Pointer(TypeRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::ArrayTypellvm::ArrayType::getNumElements()


1686
# File 'lib/llvm/core_ffi.rb', line 1686

attach_function :get_array_length, :LLVMGetArrayLength, [:pointer], :uint

.get_as_string(c, out) ⇒ String

Get the given constant data sequential as a string.

Parameters:

  • c (FFI::Pointer(ValueRef))
  • out (FFI::Pointer(*SizeT))

Returns:

  • (String)

See Also:

  • ConstantDataSequential::getAsString()


2821
# File 'lib/llvm/core_ffi.rb', line 2821

attach_function :get_as_string, :LLVMGetAsString, [:pointer, :pointer], :string

.get_basic_block_parent(bb) ⇒ FFI::Pointer(ValueRef)

Obtain the function to which a basic block belongs.

Parameters:

  • bb (FFI::Pointer(BasicBlockRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::BasicBlockllvm::BasicBlock::getParent()


3867
# File 'lib/llvm/core_ffi.rb', line 3867

attach_function :get_basic_block_parent, :LLVMGetBasicBlockParent, [:pointer], :pointer

.get_basic_block_terminator(bb) ⇒ FFI::Pointer(ValueRef)

Obtain the terminator instruction for a basic block.

If the basic block does not have a terminator (it is not well-formed if it doesn’t), then NULL is returned.

The returned LLVMValueRef corresponds to a llvm::TerminatorInst.

Parameters:

  • bb (FFI::Pointer(BasicBlockRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::BasicBlockllvm::BasicBlock::getTerminator()


3882
# File 'lib/llvm/core_ffi.rb', line 3882

attach_function :get_basic_block_terminator, :LLVMGetBasicBlockTerminator, [:pointer], :pointer

.get_basic_blocks(fn, basic_blocks) ⇒ nil

Obtain all of the basic blocks in a function.

This operates on a function value. The BasicBlocks parameter is a pointer to a pre-allocated array of LLVMBasicBlockRef of at least LLVMCountBasicBlocks() in length. This array is populated with LLVMBasicBlockRef instances.

Parameters:

  • fn (FFI::Pointer(ValueRef))
  • basic_blocks (FFI::Pointer(*BasicBlockRef))

Returns:

  • (nil)


3906
# File 'lib/llvm/core_ffi.rb', line 3906

attach_function :get_basic_blocks, :LLVMGetBasicBlocks, [:pointer, :pointer], :void

.get_bitcode_module(mem_buf, out_m, out_message) ⇒ Integer

(Not documented)

Parameters:

  • mem_buf (FFI::Pointer(MemoryBufferRef))
  • out_m (FFI::Pointer(*ModuleRef))
  • out_message (FFI::Pointer(**CharS))

Returns:

  • (Integer)


84
# File 'lib/llvm/core/bitcode_ffi.rb', line 84

attach_function :get_bitcode_module, :LLVMGetBitcodeModule, [:pointer, :pointer, :pointer], :int

.get_bitcode_module2(mem_buf, out_m) ⇒ Integer

(Not documented)

Parameters:

  • mem_buf (FFI::Pointer(MemoryBufferRef))
  • out_m (FFI::Pointer(*ModuleRef))

Returns:

  • (Integer)


93
# File 'lib/llvm/core/bitcode_ffi.rb', line 93

attach_function :get_bitcode_module2, :LLVMGetBitcodeModule2, [:pointer, :pointer], :int

.get_bitcode_module_in_context(context_ref, mem_buf, out_m, out_message) ⇒ Integer

(Not documented)

Parameters:

  • context_ref (FFI::Pointer(ContextRef))
  • mem_buf (FFI::Pointer(MemoryBufferRef))
  • out_m (FFI::Pointer(*ModuleRef))
  • out_message (FFI::Pointer(**CharS))

Returns:

  • (Integer)


64
# File 'lib/llvm/core/bitcode_ffi.rb', line 64

attach_function :get_bitcode_module_in_context, :LLVMGetBitcodeModuleInContext, [:pointer, :pointer, :pointer, :pointer], :int

.get_bitcode_module_in_context2(context_ref, mem_buf, out_m) ⇒ Integer

(Not documented)

Parameters:

  • context_ref (FFI::Pointer(ContextRef))
  • mem_buf (FFI::Pointer(MemoryBufferRef))
  • out_m (FFI::Pointer(*ModuleRef))

Returns:

  • (Integer)


74
# File 'lib/llvm/core/bitcode_ffi.rb', line 74

attach_function :get_bitcode_module_in_context2, :LLVMGetBitcodeModuleInContext2, [:pointer, :pointer, :pointer], :int

.get_buffer_size(mem_buf) ⇒ Integer

(Not documented)

Parameters:

  • mem_buf (FFI::Pointer(MemoryBufferRef))

Returns:

  • (Integer)


5549
# File 'lib/llvm/core_ffi.rb', line 5549

attach_function :get_buffer_size, :LLVMGetBufferSize, [:pointer], :ulong

.get_buffer_start(mem_buf) ⇒ String

(Not documented)

Parameters:

  • mem_buf (FFI::Pointer(MemoryBufferRef))

Returns:

  • (String)


5541
# File 'lib/llvm/core_ffi.rb', line 5541

attach_function :get_buffer_start, :LLVMGetBufferStart, [:pointer], :string

.get_condition(branch) ⇒ FFI::Pointer(ValueRef)

Return the condition of a branch instruction.

This only works on llvm::BranchInst instructions.

Parameters:

  • branch (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::BranchInstllvm::BranchInst::getCondition


4318
# File 'lib/llvm/core_ffi.rb', line 4318

attach_function :get_condition, :LLVMGetCondition, [:pointer], :pointer

.get_const_opcode(constant_val) ⇒ Symbol from _enum_opcode_

Functions in this group correspond to APIs on llvm::ConstantExpr.

@{

Parameters:

  • constant_val (FFI::Pointer(ValueRef))

Returns:

See Also:

  • llvm::ConstantExpr.


2909
# File 'lib/llvm/core_ffi.rb', line 2909

attach_function :get_const_opcode, :LLVMGetConstOpcode, [:pointer], :opcode

.get_current_debug_location(builder) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • builder (FFI::Pointer(BuilderRef))

Returns:

  • (FFI::Pointer(ValueRef))


4488
# File 'lib/llvm/core_ffi.rb', line 4488

attach_function :get_current_debug_location, :LLVMGetCurrentDebugLocation, [:pointer], :pointer

.get_data_layout(m) ⇒ String

Obtain the data layout for a module.

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (String)

See Also:

  • Module::getDataLayout()


1027
# File 'lib/llvm/core_ffi.rb', line 1027

attach_function :get_data_layout, :LLVMGetDataLayout, [:pointer], :string

.get_default_target_tripleString

Get a triple for the host machine as a string. The result needs to be

disposed with LLVMDisposeMessage.

Returns:

  • (String)


617
# File 'lib/llvm/target_ffi.rb', line 617

attach_function :get_default_target_triple, :LLVMGetDefaultTargetTriple, [], :string

.get_diag_info_description(di) ⇒ String

Return a string representation of the DiagnosticInfo. Use LLVMDisposeMessage to free the string.

Parameters:

  • di (FFI::Pointer(DiagnosticInfoRef))

Returns:

  • (String)

See Also:

  • DiagnosticInfo::print()


943
# File 'lib/llvm/core_ffi.rb', line 943

attach_function :get_diag_info_description, :LLVMGetDiagInfoDescription, [:pointer], :string

.get_diag_info_severity(di) ⇒ Symbol from _enum_diagnostic_severity_

Return an enum LLVMDiagnosticSeverity.

Parameters:

  • di (FFI::Pointer(DiagnosticInfoRef))

Returns:

See Also:

  • DiagnosticInfo::getSeverity()


953
# File 'lib/llvm/core_ffi.rb', line 953

attach_function :get_diag_info_severity, :LLVMGetDiagInfoSeverity, [:pointer], :diagnostic_severity

.get_dll_storage_class(global) ⇒ Symbol from _enum_dll_storage_class_

(Not documented)

Parameters:

  • global (FFI::Pointer(ValueRef))

Returns:



3309
# File 'lib/llvm/core_ffi.rb', line 3309

attach_function :get_dll_storage_class, :LLVMGetDLLStorageClass, [:pointer], :dll_storage_class

.get_element_as_constant(c, idx) ⇒ FFI::Pointer(ValueRef)

Get an element at specified index as a constant.

Parameters:

  • c (FFI::Pointer(ValueRef))
  • idx (Integer)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • ConstantDataSequential::getElementAsConstant()


2884
# File 'lib/llvm/core_ffi.rb', line 2884

attach_function :get_element_as_constant, :LLVMGetElementAsConstant, [:pointer, :uint], :pointer

.get_element_type(ty) ⇒ FFI::Pointer(TypeRef)

Obtain the type of elements within a sequential type.

This works on array, vector, and pointer types.

Parameters:

  • ty (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(TypeRef))

See Also:

  • llvmllvm::SequentialTypellvm::SequentialType::getElementType()


1660
# File 'lib/llvm/core_ffi.rb', line 1660

attach_function :get_element_type, :LLVMGetElementType, [:pointer], :pointer

.get_entry_basic_block(fn) ⇒ FFI::Pointer(BasicBlockRef)

Obtain the basic block that corresponds to the entry point of a function.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(BasicBlockRef))

See Also:

  • llvmllvm::Functionllvm::Function::getEntryBlock()


3956
# File 'lib/llvm/core_ffi.rb', line 3956

attach_function :get_entry_basic_block, :LLVMGetEntryBasicBlock, [:pointer], :pointer

.get_execution_engine_target_data(ee) ⇒ FFI::Pointer(TargetDataRef)

(Not documented)

Parameters:

Returns:

  • (FFI::Pointer(TargetDataRef))


304
# File 'lib/llvm/execution_engine_ffi.rb', line 304

attach_function :get_execution_engine_target_data, :LLVMGetExecutionEngineTargetData, [OpaqueExecutionEngine], :pointer

.get_execution_engine_target_machine(ee) ⇒ FFI::Pointer(TargetMachineRef)

(Not documented)

Parameters:

Returns:

  • (FFI::Pointer(TargetMachineRef))


312
# File 'lib/llvm/execution_engine_ffi.rb', line 312

attach_function :get_execution_engine_target_machine, :LLVMGetExecutionEngineTargetMachine, [OpaqueExecutionEngine], :pointer

.get_f_cmp_predicate(inst) ⇒ Symbol from _enum_real_predicate_

Obtain the float predicate of an instruction.

This is only valid for instructions that correspond to llvm::FCmpInst or llvm::ConstantExpr whose opcode is llvm::Instruction::FCmp.

Parameters:

  • inst (FFI::Pointer(ValueRef))

Returns:

See Also:

  • llvmllvm::FCmpInstllvm::FCmpInst::getPredicate()


4185
# File 'lib/llvm/core_ffi.rb', line 4185

attach_function :get_f_cmp_predicate, :LLVMGetFCmpPredicate, [:pointer], :real_predicate

.get_first_basic_block(fn) ⇒ FFI::Pointer(BasicBlockRef)

Obtain the first basic block in a function.

The returned basic block can be used as an iterator. You will likely eventually call into LLVMGetNextBasicBlock() with it.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(BasicBlockRef))

See Also:

  • llvmllvm::Functionllvm::Function::begin()


3919
# File 'lib/llvm/core_ffi.rb', line 3919

attach_function :get_first_basic_block, :LLVMGetFirstBasicBlock, [:pointer], :pointer

.get_first_function(m) ⇒ FFI::Pointer(ValueRef)

Obtain an iterator to the first Function in a Module.

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::Modulellvm::Module::begin()


1200
# File 'lib/llvm/core_ffi.rb', line 1200

attach_function :get_first_function, :LLVMGetFirstFunction, [:pointer], :pointer

.get_first_global(m) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (FFI::Pointer(ValueRef))


3404
# File 'lib/llvm/core_ffi.rb', line 3404

attach_function :get_first_global, :LLVMGetFirstGlobal, [:pointer], :pointer

.get_first_instruction(bb) ⇒ FFI::Pointer(ValueRef)

Obtain the first instruction in a basic block.

The returned LLVMValueRef corresponds to a llvm::Instruction instance.

Parameters:

  • bb (FFI::Pointer(BasicBlockRef))

Returns:

  • (FFI::Pointer(ValueRef))


4065
# File 'lib/llvm/core_ffi.rb', line 4065

attach_function :get_first_instruction, :LLVMGetFirstInstruction, [:pointer], :pointer

.get_first_param(fn) ⇒ FFI::Pointer(ValueRef)

Obtain the first parameter to a function.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::Functionllvm::Function::arg_begin()


3702
# File 'lib/llvm/core_ffi.rb', line 3702

attach_function :get_first_param, :LLVMGetFirstParam, [:pointer], :pointer

.get_first_targetTarget

Returns the first llvm::Target in the registered targets list.

Returns:



436
# File 'lib/llvm/target_ffi.rb', line 436

attach_function :get_first_target, :LLVMGetFirstTarget, [], Target

.get_first_use(val) ⇒ FFI::Pointer(UseRef)

Obtain the first use of a value.

Uses are obtained in an iterator fashion. First, call this function to obtain a reference to the first use. Then, call LLVMGetNextUse() on that instance and all subsequently obtained instances until LLVMGetNextUse() returns NULL.

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(UseRef))

See Also:

  • llvmllvm::Valuellvm::Value::use_begin()


2519
# File 'lib/llvm/core_ffi.rb', line 2519

attach_function :get_first_use, :LLVMGetFirstUse, [:pointer], :pointer

.get_function_address(ee, name) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


349
# File 'lib/llvm/execution_engine_ffi.rb', line 349

attach_function :get_function_address, :LLVMGetFunctionAddress, [OpaqueExecutionEngine, :string], :ulong

.get_function_call_conv(fn) ⇒ Integer

Obtain the calling function of a function.

The returned value corresponds to the LLVMCallConv enumeration.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::Functionllvm::Function::getCallingConv()


3591
# File 'lib/llvm/core_ffi.rb', line 3591

attach_function :get_function_call_conv, :LLVMGetFunctionCallConv, [:pointer], :uint

.get_gc(fn) ⇒ String

Obtain the name of the garbage collector to use during code generation.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (String)

See Also:

  • llvmllvm::Functionllvm::Function::getGC()


3616
# File 'lib/llvm/core_ffi.rb', line 3616

attach_function :get_gc, :LLVMGetGC, [:pointer], :string

.get_global_contextFFI::Pointer(ContextRef)

Obtain the global context instance.

Returns:

  • (FFI::Pointer(ContextRef))


899
# File 'lib/llvm/core_ffi.rb', line 899

attach_function :get_global_context, :LLVMGetGlobalContext, [], :pointer

.get_global_parent(global) ⇒ FFI::Pointer(ModuleRef)

This group contains functions that operate on global values. Functions in this group relate to functions in the llvm::GlobalValue class tree.

@{

Parameters:

  • global (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ModuleRef))

See Also:

  • llvmllvm::GlobalValue


3242
# File 'lib/llvm/core_ffi.rb', line 3242

attach_function :get_global_parent, :LLVMGetGlobalParent, [:pointer], :pointer

.get_global_pass_registryFFI::Pointer(PassRegistryRef)

Return the global pass registry, for use with initialization functions.

@see llvm::PassRegistry::getPassRegistry

Returns:

  • (FFI::Pointer(PassRegistryRef))


5565
# File 'lib/llvm/core_ffi.rb', line 5565

attach_function :get_global_pass_registry, :LLVMGetGlobalPassRegistry, [], :pointer

.get_global_value_address(ee, name) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


340
# File 'lib/llvm/execution_engine_ffi.rb', line 340

attach_function :get_global_value_address, :LLVMGetGlobalValueAddress, [OpaqueExecutionEngine, :string], :ulong

.get_i_cmp_predicate(inst) ⇒ Symbol from _enum_int_predicate_

Obtain the predicate of an instruction.

This is only valid for instructions that correspond to llvm::ICmpInst or llvm::ConstantExpr whose opcode is llvm::Instruction::ICmp.

Parameters:

  • inst (FFI::Pointer(ValueRef))

Returns:

See Also:

  • llvmllvm::ICmpInstllvm::ICmpInst::getPredicate()


4172
# File 'lib/llvm/core_ffi.rb', line 4172

attach_function :get_i_cmp_predicate, :LLVMGetICmpPredicate, [:pointer], :int_predicate

.get_incoming_block(phi_node, index) ⇒ FFI::Pointer(BasicBlockRef)

Obtain an incoming value to a PHI node as an LLVMBasicBlockRef.

Parameters:

  • phi_node (FFI::Pointer(ValueRef))
  • index (Integer)

Returns:

  • (FFI::Pointer(BasicBlockRef))


4380
# File 'lib/llvm/core_ffi.rb', line 4380

attach_function :get_incoming_block, :LLVMGetIncomingBlock, [:pointer, :uint], :pointer

.get_incoming_value(phi_node, index) ⇒ FFI::Pointer(ValueRef)

Obtain an incoming value to a PHI node as an LLVMValueRef.

Parameters:

  • phi_node (FFI::Pointer(ValueRef))
  • index (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


4371
# File 'lib/llvm/core_ffi.rb', line 4371

attach_function :get_incoming_value, :LLVMGetIncomingValue, [:pointer, :uint], :pointer

.get_initializer(global_var) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • global_var (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3444
# File 'lib/llvm/core_ffi.rb', line 3444

attach_function :get_initializer, :LLVMGetInitializer, [:pointer], :pointer

.get_insert_block(builder) ⇒ FFI::Pointer(BasicBlockRef)

(Not documented)

Parameters:

  • builder (FFI::Pointer(BuilderRef))

Returns:

  • (FFI::Pointer(BasicBlockRef))


4436
# File 'lib/llvm/core_ffi.rb', line 4436

attach_function :get_insert_block, :LLVMGetInsertBlock, [:pointer], :pointer

.get_instruction_call_conv(instr) ⇒ Integer

Obtain the calling convention for a call instruction.

This is the opposite of LLVMSetInstructionCallConv(). Reads its usage.

Parameters:

  • instr (FFI::Pointer(ValueRef))

Returns:

  • (Integer)

See Also:

  • LLVMSetInstructionCallConv()


4226
# File 'lib/llvm/core_ffi.rb', line 4226

attach_function :get_instruction_call_conv, :LLVMGetInstructionCallConv, [:pointer], :uint

.get_instruction_opcode(inst) ⇒ Symbol from _enum_opcode_

Obtain the code opcode for an individual instruction.

Parameters:

  • inst (FFI::Pointer(ValueRef))

Returns:

See Also:

  • llvmllvm::Instructionllvm::Instruction::getOpCode()


4159
# File 'lib/llvm/core_ffi.rb', line 4159

attach_function :get_instruction_opcode, :LLVMGetInstructionOpcode, [:pointer], :opcode

.get_instruction_parent(inst) ⇒ FFI::Pointer(BasicBlockRef)

Obtain the basic block to which an instruction belongs.

Parameters:

  • inst (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(BasicBlockRef))

See Also:

  • llvmllvm::Instructionllvm::Instruction::getParent()


4112
# File 'lib/llvm/core_ffi.rb', line 4112

attach_function :get_instruction_parent, :LLVMGetInstructionParent, [:pointer], :pointer

.get_int_type_width(integer_ty) ⇒ Integer

(Not documented)

Parameters:

  • integer_ty (FFI::Pointer(TypeRef))

Returns:

  • (Integer)


1401
# File 'lib/llvm/core_ffi.rb', line 1401

attach_function :get_int_type_width, :LLVMGetIntTypeWidth, [:pointer], :uint

.get_intrinsic_id(fn) ⇒ Integer

Obtain the ID number from a function instance.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::Functionllvm::Function::getIntrinsicID()


3579
# File 'lib/llvm/core_ffi.rb', line 3579

attach_function :get_intrinsic_id, :LLVMGetIntrinsicID, [:pointer], :uint

.get_last_basic_block(fn) ⇒ FFI::Pointer(BasicBlockRef)

Obtain the last basic block in a function.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(BasicBlockRef))

See Also:

  • llvmllvm::Functionllvm::Function::end()


3929
# File 'lib/llvm/core_ffi.rb', line 3929

attach_function :get_last_basic_block, :LLVMGetLastBasicBlock, [:pointer], :pointer

.get_last_function(m) ⇒ FFI::Pointer(ValueRef)

Obtain an iterator to the last Function in a Module.

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::Modulellvm::Module::end()


1210
# File 'lib/llvm/core_ffi.rb', line 1210

attach_function :get_last_function, :LLVMGetLastFunction, [:pointer], :pointer

.get_last_global(m) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (FFI::Pointer(ValueRef))


3412
# File 'lib/llvm/core_ffi.rb', line 3412

attach_function :get_last_global, :LLVMGetLastGlobal, [:pointer], :pointer

.get_last_instruction(bb) ⇒ FFI::Pointer(ValueRef)

Obtain the last instruction in a basic block.

The returned LLVMValueRef corresponds to an LLVM:Instruction.

Parameters:

  • bb (FFI::Pointer(BasicBlockRef))

Returns:

  • (FFI::Pointer(ValueRef))


4075
# File 'lib/llvm/core_ffi.rb', line 4075

attach_function :get_last_instruction, :LLVMGetLastInstruction, [:pointer], :pointer

.get_last_param(fn) ⇒ FFI::Pointer(ValueRef)

Obtain the last parameter to a function.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::Functionllvm::Function::arg_end()


3712
# File 'lib/llvm/core_ffi.rb', line 3712

attach_function :get_last_param, :LLVMGetLastParam, [:pointer], :pointer

.get_linkage(global) ⇒ Symbol from _enum_linkage_

(Not documented)

Parameters:

  • global (FFI::Pointer(ValueRef))

Returns:



3258
# File 'lib/llvm/core_ffi.rb', line 3258

attach_function :get_linkage, :LLVMGetLinkage, [:pointer], :linkage

.get_md_kind_id(name, s_len) ⇒ Integer

(Not documented)

Parameters:

  • name (String)
  • s_len (Integer)

Returns:

  • (Integer)


972
# File 'lib/llvm/core_ffi.rb', line 972

attach_function :get_md_kind_id, :LLVMGetMDKindID, [:string, :uint], :uint

.get_md_kind_id_in_context(c, name, s_len) ⇒ Integer

(Not documented)

Parameters:

  • c (FFI::Pointer(ContextRef))
  • name (String)
  • s_len (Integer)

Returns:

  • (Integer)


963
# File 'lib/llvm/core_ffi.rb', line 963

attach_function :get_md_kind_id_in_context, :LLVMGetMDKindIDInContext, [:pointer, :string, :uint], :uint

.get_md_node_num_operands(v) ⇒ Object

Obtain the number of operands from an MDNode value.

Parameters:

  • V

    MDNode to get number of operands from.

  • v (FFI::Pointer(ValueRef))

Returns:

  • Number of operands of the MDNode.

  • (Integer)


3816
# File 'lib/llvm/core_ffi.rb', line 3816

attach_function :get_md_node_num_operands, :LLVMGetMDNodeNumOperands, [:pointer], :uint

.get_md_node_operands(v, dest) ⇒ nil

Obtain the given MDNode’s operands.

The passed LLVMValueRef pointer should point to enough memory to hold all of the operands of the given MDNode (see LLVMGetMDNodeNumOperands) as LLVMValueRefs. This memory will be populated with the LLVMValueRefs of the MDNode’s operands.

Parameters:

  • V

    MDNode to get the operands from.

  • Dest

    Destination array for operands.

  • v (FFI::Pointer(ValueRef))
  • dest (FFI::Pointer(*ValueRef))

Returns:

  • (nil)


3833
# File 'lib/llvm/core_ffi.rb', line 3833

attach_function :get_md_node_operands, :LLVMGetMDNodeOperands, [:pointer, :pointer], :void

.get_md_string(v, len) ⇒ Object

Obtain the underlying string from a MDString value.

Parameters:

  • V

    Instance to obtain string from.

  • Len

    Memory address which will hold length of returned string.

  • v (FFI::Pointer(ValueRef))
  • len (FFI::Pointer(*UInt))

Returns:

  • String data in MDString.

  • (String)


3805
# File 'lib/llvm/core_ffi.rb', line 3805

attach_function :get_md_string, :LLVMGetMDString, [:pointer, :pointer], :string

.get_metadata(val, kind_id) ⇒ FFI::Pointer(ValueRef)

Return metadata associated with an instruction value.

Parameters:

  • val (FFI::Pointer(ValueRef))
  • kind_id (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


4092
# File 'lib/llvm/core_ffi.rb', line 4092

attach_function :get_metadata, :LLVMGetMetadata, [:pointer, :uint], :pointer

.get_module_context(m) ⇒ FFI::Pointer(ContextRef)

Obtain the context to which this module is associated.

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (FFI::Pointer(ContextRef))

See Also:

  • Module::getContext()


1114
# File 'lib/llvm/core_ffi.rb', line 1114

attach_function :get_module_context, :LLVMGetModuleContext, [:pointer], :pointer

.get_module_data_layout(m) ⇒ OpaqueTargetData

(Not documented)

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:



119
# File 'lib/llvm/target_ffi.rb', line 119

attach_function :get_module_data_layout, :LLVMGetModuleDataLayout, [:pointer], OpaqueTargetData

.get_named_function(m, name) ⇒ FFI::Pointer(ValueRef)

Obtain a Function value from a Module by its name.

The returned value corresponds to a llvm::Function value.

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::Modulellvm::Module::getFunction()


1190
# File 'lib/llvm/core_ffi.rb', line 1190

attach_function :get_named_function, :LLVMGetNamedFunction, [:pointer, :string], :pointer

.get_named_global(m, name) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • name (String)

Returns:

  • (FFI::Pointer(ValueRef))


3396
# File 'lib/llvm/core_ffi.rb', line 3396

attach_function :get_named_global, :LLVMGetNamedGlobal, [:pointer, :string], :pointer

.get_named_metadata_num_operands(m, name) ⇒ Integer

Obtain the number of operands for named metadata in a module.

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • name (String)

Returns:

  • (Integer)

See Also:

  • llvmllvm::Modulellvm::Module::getNamedMetadata()


1134
# File 'lib/llvm/core_ffi.rb', line 1134

attach_function :get_named_metadata_num_operands, :LLVMGetNamedMetadataNumOperands, [:pointer, :string], :uint

.get_named_metadata_operands(m, name, dest) ⇒ nil

Obtain the named metadata operands for a module.

The passed LLVMValueRef pointer should refer to an array of LLVMValueRef at least LLVMGetNamedMetadataNumOperands long. This array will be populated with the LLVMValueRef instances. Each instance corresponds to a llvm::MDNode.

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • name (String)
  • dest (FFI::Pointer(*ValueRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::Modulellvm::Module::getNamedMetadata()
  • llvmllvm::MDNodellvm::MDNode::getOperand()


1152
# File 'lib/llvm/core_ffi.rb', line 1152

attach_function :get_named_metadata_operands, :LLVMGetNamedMetadataOperands, [:pointer, :string, :pointer], :void

.get_next_basic_block(bb) ⇒ FFI::Pointer(BasicBlockRef)

Advance a basic block iterator.

Parameters:

  • bb (FFI::Pointer(BasicBlockRef))

Returns:

  • (FFI::Pointer(BasicBlockRef))


3937
# File 'lib/llvm/core_ffi.rb', line 3937

attach_function :get_next_basic_block, :LLVMGetNextBasicBlock, [:pointer], :pointer

.get_next_function(fn) ⇒ FFI::Pointer(ValueRef)

Advance a Function iterator to the next Function.

Returns NULL if the iterator was already at the end and there are no more functions.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1221
# File 'lib/llvm/core_ffi.rb', line 1221

attach_function :get_next_function, :LLVMGetNextFunction, [:pointer], :pointer

.get_next_global(global_var) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • global_var (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3420
# File 'lib/llvm/core_ffi.rb', line 3420

attach_function :get_next_global, :LLVMGetNextGlobal, [:pointer], :pointer

.get_next_instruction(inst) ⇒ FFI::Pointer(ValueRef)

Obtain the instruction that occurs after the one specified.

The next instruction will be from the same basic block.

If this is the last instruction in a basic block, NULL will be returned.

Parameters:

  • inst (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


4125
# File 'lib/llvm/core_ffi.rb', line 4125

attach_function :get_next_instruction, :LLVMGetNextInstruction, [:pointer], :pointer

.get_next_param(arg) ⇒ FFI::Pointer(ValueRef)

Obtain the next parameter to a function.

This takes an LLVMValueRef obtained from LLVMGetFirstParam() (which is actually a wrapped iterator) and obtains the next parameter from the underlying iterator.

Parameters:

  • arg (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3724
# File 'lib/llvm/core_ffi.rb', line 3724

attach_function :get_next_param, :LLVMGetNextParam, [:pointer], :pointer

.get_next_target(t) ⇒ Target

Returns the next llvm::Target given a previous one (or null if there’s none)

Parameters:

Returns:



444
# File 'lib/llvm/target_ffi.rb', line 444

attach_function :get_next_target, :LLVMGetNextTarget, [Target], Target

.get_next_use(u) ⇒ FFI::Pointer(UseRef)

Obtain the next use of a value.

This effectively advances the iterator. It returns NULL if you are on the final use and no more are available.

Parameters:

  • u (FFI::Pointer(UseRef))

Returns:

  • (FFI::Pointer(UseRef))


2530
# File 'lib/llvm/core_ffi.rb', line 2530

attach_function :get_next_use, :LLVMGetNextUse, [:pointer], :pointer

.get_num_operands(val) ⇒ Integer

Obtain the number of operands in a llvm::User value.

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::Userllvm::User::getNumOperands()


2596
# File 'lib/llvm/core_ffi.rb', line 2596

attach_function :get_num_operands, :LLVMGetNumOperands, [:pointer], :int

.get_num_successors(term) ⇒ Integer

Return the number of successors that this terminator has.

Parameters:

  • term (FFI::Pointer(ValueRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::TerminatorInstllvm::TerminatorInst::getNumSuccessors


4271
# File 'lib/llvm/core_ffi.rb', line 4271

attach_function :get_num_successors, :LLVMGetNumSuccessors, [:pointer], :uint

.get_operand(val, index) ⇒ FFI::Pointer(ValueRef)

Obtain an operand at a specific index in a llvm::User value.

Parameters:

  • val (FFI::Pointer(ValueRef))
  • index (Integer)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::Userllvm::User::getOperand()


2563
# File 'lib/llvm/core_ffi.rb', line 2563

attach_function :get_operand, :LLVMGetOperand, [:pointer, :uint], :pointer

.get_operand_use(val, index) ⇒ FFI::Pointer(UseRef)

Obtain the use of an operand at a specific index in a llvm::User value.

Parameters:

  • val (FFI::Pointer(ValueRef))
  • index (Integer)

Returns:

  • (FFI::Pointer(UseRef))

See Also:

  • llvmllvm::Userllvm::User::getOperandUse()


2574
# File 'lib/llvm/core_ffi.rb', line 2574

attach_function :get_operand_use, :LLVMGetOperandUse, [:pointer, :uint], :pointer

.get_ordering(memory_access_inst) ⇒ Symbol from _enum_atomic_ordering_

(Not documented)

Parameters:

  • memory_access_inst (FFI::Pointer(ValueRef))

Returns:



5074
# File 'lib/llvm/core_ffi.rb', line 5074

attach_function :get_ordering, :LLVMGetOrdering, [:pointer], :atomic_ordering

.get_param(fn, index) ⇒ FFI::Pointer(ValueRef)

Obtain the parameter at the specified index.

Parameters are indexed from 0.

Parameters:

  • fn (FFI::Pointer(ValueRef))
  • index (Integer)

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::Functionllvm::Function::arg_begin()


3678
# File 'lib/llvm/core_ffi.rb', line 3678

attach_function :get_param, :LLVMGetParam, [:pointer, :uint], :pointer

.get_param_parent(inst) ⇒ FFI::Pointer(ValueRef)

Obtain the function to which this argument belongs.

Unlike other functions in this group, this one takes an LLVMValueRef that corresponds to a llvm::Attribute.

The returned LLVMValueRef is the llvm::Function to which this argument belongs.

Parameters:

  • inst (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3692
# File 'lib/llvm/core_ffi.rb', line 3692

attach_function :get_param_parent, :LLVMGetParamParent, [:pointer], :pointer

.get_param_types(function_ty, dest) ⇒ nil

Obtain the types of a function’s parameters.

The Dest parameter should point to a pre-allocated array of LLVMTypeRef at least LLVMCountParamTypes() large. On return, the first LLVMCountParamTypes() entries in the array will be populated with LLVMTypeRef instances.

Parameters:

  • FunctionTy

    The function type to operate on.

  • Dest

    Memory address of an array to be filled with result.

  • function_ty (FFI::Pointer(TypeRef))
  • dest (FFI::Pointer(*TypeRef))

Returns:

  • (nil)


1549
# File 'lib/llvm/core_ffi.rb', line 1549

attach_function :get_param_types, :LLVMGetParamTypes, [:pointer, :pointer], :void

.get_params(fn, params) ⇒ nil

Obtain the parameters in a function.

The takes a pointer to a pre-allocated array of LLVMValueRef that is at least LLVMCountParams() long. This array will be filled with LLVMValueRef instances which correspond to the parameters the function receives. Each LLVMValueRef corresponds to a llvm::Argument instance.

Parameters:

  • fn (FFI::Pointer(ValueRef))
  • params (FFI::Pointer(*ValueRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::Functionllvm::Function::arg_begin()


3665
# File 'lib/llvm/core_ffi.rb', line 3665

attach_function :get_params, :LLVMGetParams, [:pointer, :pointer], :void

.get_personality_fn(fn) ⇒ FFI::Pointer(ValueRef)

Obtain the personality function attached to the function.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::Functionllvm::Function::getPersonalityFn()


3558
# File 'lib/llvm/core_ffi.rb', line 3558

attach_function :get_personality_fn, :LLVMGetPersonalityFn, [:pointer], :pointer

.get_pointer_address_space(pointer_ty) ⇒ Integer

Obtain the address space of a pointer type.

This only works on types that represent pointers.

Parameters:

  • pointer_ty (FFI::Pointer(TypeRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::PointerTypellvm::PointerType::getAddressSpace()


1712
# File 'lib/llvm/core_ffi.rb', line 1712

attach_function :get_pointer_address_space, :LLVMGetPointerAddressSpace, [:pointer], :uint

.get_pointer_to_global(ee, global) ⇒ FFI::Pointer(*Void)

(Not documented)

Parameters:

Returns:

  • (FFI::Pointer(*Void))


331
# File 'lib/llvm/execution_engine_ffi.rb', line 331

attach_function :get_pointer_to_global, :LLVMGetPointerToGlobal, [OpaqueExecutionEngine, :pointer], :pointer

.get_previous_basic_block(bb) ⇒ FFI::Pointer(BasicBlockRef)

Go backwards in a basic block iterator.

Parameters:

  • bb (FFI::Pointer(BasicBlockRef))

Returns:

  • (FFI::Pointer(BasicBlockRef))


3945
# File 'lib/llvm/core_ffi.rb', line 3945

attach_function :get_previous_basic_block, :LLVMGetPreviousBasicBlock, [:pointer], :pointer

.get_previous_function(fn) ⇒ FFI::Pointer(ValueRef)

Decrement a Function iterator to the previous Function.

Returns NULL if the iterator was already at the beginning and there are no previous functions.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1232
# File 'lib/llvm/core_ffi.rb', line 1232

attach_function :get_previous_function, :LLVMGetPreviousFunction, [:pointer], :pointer

.get_previous_global(global_var) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • global_var (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3428
# File 'lib/llvm/core_ffi.rb', line 3428

attach_function :get_previous_global, :LLVMGetPreviousGlobal, [:pointer], :pointer

.get_previous_instruction(inst) ⇒ FFI::Pointer(ValueRef)

Obtain the instruction that occurred before this one.

If the instruction is the first instruction in a basic block, NULL will be returned.

Parameters:

  • inst (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


4136
# File 'lib/llvm/core_ffi.rb', line 4136

attach_function :get_previous_instruction, :LLVMGetPreviousInstruction, [:pointer], :pointer

.get_previous_param(arg) ⇒ FFI::Pointer(ValueRef)

Obtain the previous parameter to a function.

This is the opposite of LLVMGetNextParam().

Parameters:

  • arg (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


3734
# File 'lib/llvm/core_ffi.rb', line 3734

attach_function :get_previous_param, :LLVMGetPreviousParam, [:pointer], :pointer

.get_return_type(function_ty) ⇒ FFI::Pointer(TypeRef)

Obtain the Type this function Type returns.

Parameters:

  • function_ty (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(TypeRef))


1524
# File 'lib/llvm/core_ffi.rb', line 1524

attach_function :get_return_type, :LLVMGetReturnType, [:pointer], :pointer

.get_section(global) ⇒ String

(Not documented)

Parameters:

  • global (FFI::Pointer(ValueRef))

Returns:

  • (String)


3275
# File 'lib/llvm/core_ffi.rb', line 3275

attach_function :get_section, :LLVMGetSection, [:pointer], :string

.get_struct_element_types(struct_ty, dest) ⇒ nil

Get the elements within a structure.

The function is passed the address of a pre-allocated array of LLVMTypeRef at least LLVMCountStructElementTypes() long. After invocation, this array will be populated with the structure’s elements. The objects in the destination array will have a lifetime of the structure type itself, which is the lifetime of the context it is contained in.

Parameters:

  • struct_ty (FFI::Pointer(TypeRef))
  • dest (FFI::Pointer(*TypeRef))

Returns:

  • (nil)


1637
# File 'lib/llvm/core_ffi.rb', line 1637

attach_function :get_struct_element_types, :LLVMGetStructElementTypes, [:pointer, :pointer], :void

.get_struct_name(ty) ⇒ String

Obtain the name of a structure.

Parameters:

  • ty (FFI::Pointer(TypeRef))

Returns:

  • (String)

See Also:

  • llvmllvm::StructTypellvm::StructType::getName()


1598
# File 'lib/llvm/core_ffi.rb', line 1598

attach_function :get_struct_name, :LLVMGetStructName, [:pointer], :string

.get_successor(term, i) ⇒ FFI::Pointer(BasicBlockRef)

Return the specified successor.

Parameters:

  • term (FFI::Pointer(ValueRef))
  • i (Integer)

Returns:

  • (FFI::Pointer(BasicBlockRef))

See Also:

  • llvmllvm::TerminatorInstllvm::TerminatorInst::getSuccessor


4282
# File 'lib/llvm/core_ffi.rb', line 4282

attach_function :get_successor, :LLVMGetSuccessor, [:pointer, :uint], :pointer

.get_switch_default_dest(switch_instr) ⇒ FFI::Pointer(BasicBlockRef)

Obtain the default destination basic block of a switch instruction.

This only works on llvm::SwitchInst instructions.

Parameters:

  • switch_instr (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(BasicBlockRef))

See Also:

  • llvmllvm::SwitchInstllvm::SwitchInst::getDefaultDest()


4343
# File 'lib/llvm/core_ffi.rb', line 4343

attach_function :get_switch_default_dest, :LLVMGetSwitchDefaultDest, [:pointer], :pointer

.get_target(m) ⇒ String

Obtain the target triple for a module.

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (String)

See Also:

  • Module::getTargetTriple()


1048
# File 'lib/llvm/core_ffi.rb', line 1048

attach_function :get_target, :LLVMGetTarget, [:pointer], :string

.get_target_description(t) ⇒ String

Returns the description of a target. See llvm::Target::getDescription

Parameters:

Returns:

  • (String)


481
# File 'lib/llvm/target_ffi.rb', line 481

attach_function :get_target_description, :LLVMGetTargetDescription, [Target], :string

.get_target_from_name(name) ⇒ Target

Finds the target corresponding to the given name and stores it in p T.

Returns 0 on success.

Parameters:

  • name (String)

Returns:



453
# File 'lib/llvm/target_ffi.rb', line 453

attach_function :get_target_from_name, :LLVMGetTargetFromName, [:string], Target

.get_target_from_triple(triple, t, error_message) ⇒ Integer

Finds the target corresponding to the given triple and stores it in p T.

Returns 0 on success. Optionally returns any error in ErrorMessage.
Use LLVMDisposeMessage to dispose the message.

Parameters:

  • triple (String)
  • t (FFI::Pointer(*TargetRef))
  • error_message (FFI::Pointer(**CharS))

Returns:

  • (Integer)


465
# File 'lib/llvm/target_ffi.rb', line 465

attach_function :get_target_from_triple, :LLVMGetTargetFromTriple, [:string, :pointer, :pointer], :int

.get_target_machine_cpu(t) ⇒ String

Returns the cpu used creating this target machine. See

llvm::TargetMachine::getCPU. The result needs to be disposed with
LLVMDisposeMessage.

Parameters:

Returns:

  • (String)


556
# File 'lib/llvm/target_ffi.rb', line 556

attach_function :get_target_machine_cpu, :LLVMGetTargetMachineCPU, [OpaqueTargetMachine], :string

.get_target_machine_feature_string(t) ⇒ String

Returns the feature string used creating this target machine. See

llvm::TargetMachine::getFeatureString. The result needs to be disposed with
LLVMDisposeMessage.

Parameters:

Returns:

  • (String)


566
# File 'lib/llvm/target_ffi.rb', line 566

attach_function :get_target_machine_feature_string, :LLVMGetTargetMachineFeatureString, [OpaqueTargetMachine], :string

.get_target_machine_target(t) ⇒ Target

Returns the Target used in a TargetMachine

Parameters:

Returns:



536
# File 'lib/llvm/target_ffi.rb', line 536

attach_function :get_target_machine_target, :LLVMGetTargetMachineTarget, [OpaqueTargetMachine], Target

.get_target_machine_triple(t) ⇒ String

Returns the triple used creating this target machine. See

llvm::TargetMachine::getTriple. The result needs to be disposed with
LLVMDisposeMessage.

Parameters:

Returns:

  • (String)


546
# File 'lib/llvm/target_ffi.rb', line 546

attach_function :get_target_machine_triple, :LLVMGetTargetMachineTriple, [OpaqueTargetMachine], :string

.get_target_name(t) ⇒ String

Returns the name of a target. See llvm::Target::getName

Parameters:

Returns:

  • (String)


473
# File 'lib/llvm/target_ffi.rb', line 473

attach_function :get_target_name, :LLVMGetTargetName, [Target], :string

.get_thread_local_mode(global_var) ⇒ Symbol from _enum_thread_local_mode_

(Not documented)

Parameters:

  • global_var (FFI::Pointer(ValueRef))

Returns:



3495
# File 'lib/llvm/core_ffi.rb', line 3495

attach_function :get_thread_local_mode, :LLVMGetThreadLocalMode, [:pointer], :thread_local_mode

.get_type_by_name(m, name) ⇒ FFI::Pointer(TypeRef)

Obtain a Type from a module by its registered name.

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • name (String)

Returns:

  • (FFI::Pointer(TypeRef))


1123
# File 'lib/llvm/core_ffi.rb', line 1123

attach_function :get_type_by_name, :LLVMGetTypeByName, [:pointer, :string], :pointer

.get_type_context(ty) ⇒ FFI::Pointer(ContextRef)

Obtain the context to which this type instance is associated.

Parameters:

  • ty (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ContextRef))

See Also:

  • llvmllvm::Typellvm::Type::getContext()


1264
# File 'lib/llvm/core_ffi.rb', line 1264

attach_function :get_type_context, :LLVMGetTypeContext, [:pointer], :pointer

.get_type_kind(ty) ⇒ Symbol from _enum_type_kind_

Obtain the enumerated type of a Type instance.

Parameters:

  • ty (FFI::Pointer(TypeRef))

Returns:

See Also:

  • llvm::Type:getTypeID()


1242
# File 'lib/llvm/core_ffi.rb', line 1242

attach_function :get_type_kind, :LLVMGetTypeKind, [:pointer], :type_kind

.get_undef(ty) ⇒ FFI::Pointer(ValueRef)

Obtain a constant value referring to an undefined value of a type.

Parameters:

  • ty (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::UndefValuellvm::UndefValue::get()


2629
# File 'lib/llvm/core_ffi.rb', line 2629

attach_function :get_undef, :LLVMGetUndef, [:pointer], :pointer

.get_used_value(u) ⇒ FFI::Pointer(ValueRef)

Obtain the value this use corresponds to.

Parameters:

  • u (FFI::Pointer(UseRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvm::Use::get().


2552
# File 'lib/llvm/core_ffi.rb', line 2552

attach_function :get_used_value, :LLVMGetUsedValue, [:pointer], :pointer

.get_user(u) ⇒ FFI::Pointer(ValueRef)

Obtain the user value for a user.

The returned value corresponds to a llvm::User type.

Parameters:

  • u (FFI::Pointer(UseRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::Usellvm::Use::getUser()


2542
# File 'lib/llvm/core_ffi.rb', line 2542

attach_function :get_user, :LLVMGetUser, [:pointer], :pointer

.get_value_name(val) ⇒ String

Obtain the string name of a value.

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (String)

See Also:

  • llvmllvm::Valuellvm::Value::getName()


1805
# File 'lib/llvm/core_ffi.rb', line 1805

attach_function :get_value_name, :LLVMGetValueName, [:pointer], :string

.get_vector_size(vector_ty) ⇒ Integer

Obtain the number of elements in a vector type.

This only works on types that represent vectors.

Parameters:

  • vector_ty (FFI::Pointer(TypeRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::VectorTypellvm::VectorType::getNumElements()


1739
# File 'lib/llvm/core_ffi.rb', line 1739

attach_function :get_vector_size, :LLVMGetVectorSize, [:pointer], :uint

.get_visibility(global) ⇒ Symbol from _enum_visibility_

(Not documented)

Parameters:

  • global (FFI::Pointer(ValueRef))

Returns:



3292
# File 'lib/llvm/core_ffi.rb', line 3292

attach_function :get_visibility, :LLVMGetVisibility, [:pointer], :visibility

.get_volatile(memory_access_inst) ⇒ Integer

(Not documented)

Parameters:

  • memory_access_inst (FFI::Pointer(ValueRef))

Returns:

  • (Integer)


5057
# File 'lib/llvm/core_ffi.rb', line 5057

attach_function :get_volatile, :LLVMGetVolatile, [:pointer], :int

.half_typeFFI::Pointer(TypeRef)

Obtain a floating point type from the global context.

These map to the functions in this group of the same name.

Returns:

  • (FFI::Pointer(TypeRef))


1459
# File 'lib/llvm/core_ffi.rb', line 1459

attach_function :half_type, :LLVMHalfType, [], :pointer

.half_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

Obtain a 16-bit floating point type from a context.

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1409
# File 'lib/llvm/core_ffi.rb', line 1409

attach_function :half_type_in_context, :LLVMHalfTypeInContext, [:pointer], :pointer

.has_metadata(val) ⇒ Integer

Determine whether an instruction has any metadata attached.

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (Integer)


4083
# File 'lib/llvm/core_ffi.rb', line 4083

attach_function :has_metadata, :LLVMHasMetadata, [:pointer], :int

.has_unnamed_addr(global) ⇒ Integer

(Not documented)

Parameters:

  • global (FFI::Pointer(ValueRef))

Returns:

  • (Integer)


3326
# File 'lib/llvm/core_ffi.rb', line 3326

attach_function :has_unnamed_addr, :LLVMHasUnnamedAddr, [:pointer], :int

.initialize_all_asm_parsersnil

(Not documented)

Returns:

  • (nil)


76
# File 'lib/llvm/target_ffi.rb', line 76

attach_function :initialize_all_asm_parsers, :LLVMInitializeAllAsmParsers, [], :void

.initialize_all_asm_printersnil

(Not documented)

Returns:

  • (nil)


69
# File 'lib/llvm/target_ffi.rb', line 69

attach_function :initialize_all_asm_printers, :LLVMInitializeAllAsmPrinters, [], :void

.initialize_all_disassemblersnil

(Not documented)

Returns:

  • (nil)


83
# File 'lib/llvm/target_ffi.rb', line 83

attach_function :initialize_all_disassemblers, :LLVMInitializeAllDisassemblers, [], :void

.initialize_all_target_infosnil

(Not documented)

Returns:

  • (nil)


48
# File 'lib/llvm/target_ffi.rb', line 48

attach_function :initialize_all_target_infos, :LLVMInitializeAllTargetInfos, [], :void

.initialize_all_target_m_csnil

(Not documented)

Returns:

  • (nil)


62
# File 'lib/llvm/target_ffi.rb', line 62

attach_function :initialize_all_target_m_cs, :LLVMInitializeAllTargetMCs, [], :void

.initialize_all_targetsnil

(Not documented)

Returns:

  • (nil)


55
# File 'lib/llvm/target_ffi.rb', line 55

attach_function :initialize_all_targets, :LLVMInitializeAllTargets, [], :void

.initialize_core(r) ⇒ nil

@}

Parameters:

  • r (FFI::Pointer(PassRegistryRef))

Returns:

  • (nil)


827
# File 'lib/llvm/core_ffi.rb', line 827

attach_function :initialize_core, :LLVMInitializeCore, [:pointer], :void

.initialize_function_pass_manager(fpm) ⇒ Integer

Initializes all of the function passes scheduled in the function pass

manager. Returns 1 if any of the passes modified the module, 0 otherwise.
@see llvm::FunctionPassManager::doInitialization

Parameters:

  • fpm (FFI::Pointer(PassManagerRef))

Returns:

  • (Integer)


5615
# File 'lib/llvm/core_ffi.rb', line 5615

attach_function :initialize_function_pass_manager, :LLVMInitializeFunctionPassManager, [:pointer], :int

.initialize_mcjit_compiler_options(options, size_of_options) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


175
# File 'lib/llvm/execution_engine_ffi.rb', line 175

attach_function :initialize_mcjit_compiler_options, :LLVMInitializeMCJITCompilerOptions, [MCJITCompilerOptions, :ulong], :void

.initialize_native_asm_parserInteger

(Not documented)

Returns:

  • (Integer)


97
# File 'lib/llvm/target_ffi.rb', line 97

attach_function :initialize_native_asm_parser, :LLVMInitializeNativeAsmParser, [], :int

.initialize_native_asm_printerInteger

(Not documented)

Returns:

  • (Integer)


104
# File 'lib/llvm/target_ffi.rb', line 104

attach_function :initialize_native_asm_printer, :LLVMInitializeNativeAsmPrinter, [], :int

.initialize_native_disassemblerInteger

(Not documented)

Returns:

  • (Integer)


111
# File 'lib/llvm/target_ffi.rb', line 111

attach_function :initialize_native_disassembler, :LLVMInitializeNativeDisassembler, [], :int

.initialize_native_targetInteger

(Not documented)

Returns:

  • (Integer)


90
# File 'lib/llvm/target_ffi.rb', line 90

attach_function :initialize_native_target, :LLVMInitializeNativeTarget, [], :int

.insert_basic_block(insert_before_bb, name) ⇒ FFI::Pointer(BasicBlockRef)

Insert a basic block in a function using the global context.

Parameters:

  • insert_before_bb (FFI::Pointer(BasicBlockRef))
  • name (String)

Returns:

  • (FFI::Pointer(BasicBlockRef))

See Also:

  • llvmllvm::BasicBlockllvm::BasicBlock::Create()


4006
# File 'lib/llvm/core_ffi.rb', line 4006

attach_function :insert_basic_block, :LLVMInsertBasicBlock, [:pointer, :string], :pointer

.insert_basic_block_in_context(c, bb, name) ⇒ FFI::Pointer(BasicBlockRef)

Insert a basic block in a function before another basic block.

The function to add to is determined by the function of the passed basic block.

Parameters:

  • c (FFI::Pointer(ContextRef))
  • bb (FFI::Pointer(BasicBlockRef))
  • name (String)

Returns:

  • (FFI::Pointer(BasicBlockRef))

See Also:

  • llvmllvm::BasicBlockllvm::BasicBlock::Create()


3995
# File 'lib/llvm/core_ffi.rb', line 3995

attach_function :insert_basic_block_in_context, :LLVMInsertBasicBlockInContext, [:pointer, :pointer, :string], :pointer

.insert_into_builder(builder, instr) ⇒ nil

(Not documented)

Parameters:

  • builder (FFI::Pointer(BuilderRef))
  • instr (FFI::Pointer(ValueRef))

Returns:

  • (nil)


4453
# File 'lib/llvm/core_ffi.rb', line 4453

attach_function :insert_into_builder, :LLVMInsertIntoBuilder, [:pointer, :pointer], :void

.insert_into_builder_with_name(builder, instr, name) ⇒ nil

(Not documented)

Parameters:

  • builder (FFI::Pointer(BuilderRef))
  • instr (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (nil)


4463
# File 'lib/llvm/core_ffi.rb', line 4463

attach_function :insert_into_builder_with_name, :LLVMInsertIntoBuilderWithName, [:pointer, :pointer, :string], :void

.instruction_clone(inst) ⇒ FFI::Pointer(ValueRef)

Create a copy of ‘this’ instruction that is identical in all ways except the following:

* The instruction has no parent
* The instruction has no name

Parameters:

  • inst (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))

See Also:

  • llvmllvm::Instructionllvm::Instruction::clone()


4198
# File 'lib/llvm/core_ffi.rb', line 4198

attach_function :instruction_clone, :LLVMInstructionClone, [:pointer], :pointer

.instruction_erase_from_parent(inst) ⇒ nil

Remove and delete an instruction.

The instruction specified is removed from its containing building block and then deleted.

Parameters:

  • inst (FFI::Pointer(ValueRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::Instructionllvm::Instruction::eraseFromParent()


4149
# File 'lib/llvm/core_ffi.rb', line 4149

attach_function :instruction_erase_from_parent, :LLVMInstructionEraseFromParent, [:pointer], :void

.int128_typeFFI::Pointer(TypeRef)

(Not documented)

Returns:

  • (FFI::Pointer(TypeRef))


1385
# File 'lib/llvm/core_ffi.rb', line 1385

attach_function :int128_type, :LLVMInt128Type, [], :pointer

.int128_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

(Not documented)

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1333
# File 'lib/llvm/core_ffi.rb', line 1333

attach_function :int128_type_in_context, :LLVMInt128TypeInContext, [:pointer], :pointer

.int16_typeFFI::Pointer(TypeRef)

(Not documented)

Returns:

  • (FFI::Pointer(TypeRef))


1364
# File 'lib/llvm/core_ffi.rb', line 1364

attach_function :int16_type, :LLVMInt16Type, [], :pointer

.int16_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

(Not documented)

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1309
# File 'lib/llvm/core_ffi.rb', line 1309

attach_function :int16_type_in_context, :LLVMInt16TypeInContext, [:pointer], :pointer

.int1_typeFFI::Pointer(TypeRef)

Obtain an integer type from the global context with a specified bit width.

Returns:

  • (FFI::Pointer(TypeRef))


1350
# File 'lib/llvm/core_ffi.rb', line 1350

attach_function :int1_type, :LLVMInt1Type, [], :pointer

.int1_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

Obtain an integer type from a context with specified bit width.

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1293
# File 'lib/llvm/core_ffi.rb', line 1293

attach_function :int1_type_in_context, :LLVMInt1TypeInContext, [:pointer], :pointer

.int32_typeFFI::Pointer(TypeRef)

(Not documented)

Returns:

  • (FFI::Pointer(TypeRef))


1371
# File 'lib/llvm/core_ffi.rb', line 1371

attach_function :int32_type, :LLVMInt32Type, [], :pointer

.int32_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

(Not documented)

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1317
# File 'lib/llvm/core_ffi.rb', line 1317

attach_function :int32_type_in_context, :LLVMInt32TypeInContext, [:pointer], :pointer

.int64_typeFFI::Pointer(TypeRef)

(Not documented)

Returns:

  • (FFI::Pointer(TypeRef))


1378
# File 'lib/llvm/core_ffi.rb', line 1378

attach_function :int64_type, :LLVMInt64Type, [], :pointer

.int64_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

(Not documented)

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1325
# File 'lib/llvm/core_ffi.rb', line 1325

attach_function :int64_type_in_context, :LLVMInt64TypeInContext, [:pointer], :pointer

.int8_typeFFI::Pointer(TypeRef)

(Not documented)

Returns:

  • (FFI::Pointer(TypeRef))


1357
# File 'lib/llvm/core_ffi.rb', line 1357

attach_function :int8_type, :LLVMInt8Type, [], :pointer

.int8_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

(Not documented)

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1301
# File 'lib/llvm/core_ffi.rb', line 1301

attach_function :int8_type_in_context, :LLVMInt8TypeInContext, [:pointer], :pointer

.int_ptr_type(td) ⇒ FFI::Pointer(TypeRef)

(Not documented)

Parameters:

Returns:

  • (FFI::Pointer(TypeRef))


194
# File 'lib/llvm/target_ffi.rb', line 194

attach_function :int_ptr_type, :LLVMIntPtrType, [OpaqueTargetData], :pointer

.int_ptr_type_for_as(td, as) ⇒ FFI::Pointer(TypeRef)

(Not documented)

Parameters:

Returns:

  • (FFI::Pointer(TypeRef))


203
# File 'lib/llvm/target_ffi.rb', line 203

attach_function :int_ptr_type_for_as, :LLVMIntPtrTypeForAS, [OpaqueTargetData, :uint], :pointer

.int_ptr_type_for_as_in_context(c, td, as) ⇒ FFI::Pointer(TypeRef)

(Not documented)

Parameters:

Returns:

  • (FFI::Pointer(TypeRef))


222
# File 'lib/llvm/target_ffi.rb', line 222

attach_function :int_ptr_type_for_as_in_context, :LLVMIntPtrTypeForASInContext, [:pointer, OpaqueTargetData, :uint], :pointer

.int_ptr_type_in_context(c, td) ⇒ FFI::Pointer(TypeRef)

(Not documented)

Parameters:

Returns:

  • (FFI::Pointer(TypeRef))


212
# File 'lib/llvm/target_ffi.rb', line 212

attach_function :int_ptr_type_in_context, :LLVMIntPtrTypeInContext, [:pointer, OpaqueTargetData], :pointer

.int_type(num_bits) ⇒ FFI::Pointer(TypeRef)

(Not documented)

Parameters:

  • num_bits (Integer)

Returns:

  • (FFI::Pointer(TypeRef))


1393
# File 'lib/llvm/core_ffi.rb', line 1393

attach_function :int_type, :LLVMIntType, [:uint], :pointer

.int_type_in_context(c, num_bits) ⇒ FFI::Pointer(TypeRef)

(Not documented)

Parameters:

  • c (FFI::Pointer(ContextRef))
  • num_bits (Integer)

Returns:

  • (FFI::Pointer(TypeRef))


1342
# File 'lib/llvm/core_ffi.rb', line 1342

attach_function :int_type_in_context, :LLVMIntTypeInContext, [:pointer, :uint], :pointer

.is_a_addr_space_cast_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2368
# File 'lib/llvm/core_ffi.rb', line 2368

attach_function :is_a_addr_space_cast_inst, :LLVMIsAAddrSpaceCastInst, [:pointer], :pointer

.is_a_alloca_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2352
# File 'lib/llvm/core_ffi.rb', line 2352

attach_function :is_a_alloca_inst, :LLVMIsAAllocaInst, [:pointer], :pointer

.is_a_argument(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1872
# File 'lib/llvm/core_ffi.rb', line 1872

attach_function :is_a_argument, :LLVMIsAArgument, [:pointer], :pointer

.is_a_basic_block(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1880
# File 'lib/llvm/core_ffi.rb', line 1880

attach_function :is_a_basic_block, :LLVMIsABasicBlock, [:pointer], :pointer

.is_a_binary_operator(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2072
# File 'lib/llvm/core_ffi.rb', line 2072

attach_function :is_a_binary_operator, :LLVMIsABinaryOperator, [:pointer], :pointer

.is_a_bit_cast_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2376
# File 'lib/llvm/core_ffi.rb', line 2376

attach_function :is_a_bit_cast_inst, :LLVMIsABitCastInst, [:pointer], :pointer

.is_a_block_address(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1912
# File 'lib/llvm/core_ffi.rb', line 1912

attach_function :is_a_block_address, :LLVMIsABlockAddress, [:pointer], :pointer

.is_a_branch_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2248
# File 'lib/llvm/core_ffi.rb', line 2248

attach_function :is_a_branch_inst, :LLVMIsABranchInst, [:pointer], :pointer

.is_a_call_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2080
# File 'lib/llvm/core_ffi.rb', line 2080

attach_function :is_a_call_inst, :LLVMIsACallInst, [:pointer], :pointer

.is_a_cast_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2360
# File 'lib/llvm/core_ffi.rb', line 2360

attach_function :is_a_cast_inst, :LLVMIsACastInst, [:pointer], :pointer

.is_a_catch_pad_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2328
# File 'lib/llvm/core_ffi.rb', line 2328

attach_function :is_a_catch_pad_inst, :LLVMIsACatchPadInst, [:pointer], :pointer

.is_a_catch_return_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2312
# File 'lib/llvm/core_ffi.rb', line 2312

attach_function :is_a_catch_return_inst, :LLVMIsACatchReturnInst, [:pointer], :pointer

.is_a_cleanup_pad_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2336
# File 'lib/llvm/core_ffi.rb', line 2336

attach_function :is_a_cleanup_pad_inst, :LLVMIsACleanupPadInst, [:pointer], :pointer

.is_a_cleanup_return_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2304
# File 'lib/llvm/core_ffi.rb', line 2304

attach_function :is_a_cleanup_return_inst, :LLVMIsACleanupReturnInst, [:pointer], :pointer

.is_a_cmp_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2144
# File 'lib/llvm/core_ffi.rb', line 2144

attach_function :is_a_cmp_inst, :LLVMIsACmpInst, [:pointer], :pointer

.is_a_constant(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1904
# File 'lib/llvm/core_ffi.rb', line 1904

attach_function :is_a_constant, :LLVMIsAConstant, [:pointer], :pointer

.is_a_constant_aggregate_zero(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1920
# File 'lib/llvm/core_ffi.rb', line 1920

attach_function :is_a_constant_aggregate_zero, :LLVMIsAConstantAggregateZero, [:pointer], :pointer

.is_a_constant_array(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1928
# File 'lib/llvm/core_ffi.rb', line 1928

attach_function :is_a_constant_array, :LLVMIsAConstantArray, [:pointer], :pointer

.is_a_constant_data_array(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1944
# File 'lib/llvm/core_ffi.rb', line 1944

attach_function :is_a_constant_data_array, :LLVMIsAConstantDataArray, [:pointer], :pointer

.is_a_constant_data_sequential(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1936
# File 'lib/llvm/core_ffi.rb', line 1936

attach_function :is_a_constant_data_sequential, :LLVMIsAConstantDataSequential, [:pointer], :pointer

.is_a_constant_data_vector(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1952
# File 'lib/llvm/core_ffi.rb', line 1952

attach_function :is_a_constant_data_vector, :LLVMIsAConstantDataVector, [:pointer], :pointer

.is_a_constant_expr(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1960
# File 'lib/llvm/core_ffi.rb', line 1960

attach_function :is_a_constant_expr, :LLVMIsAConstantExpr, [:pointer], :pointer

.is_a_constant_fp(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1968
# File 'lib/llvm/core_ffi.rb', line 1968

attach_function :is_a_constant_fp, :LLVMIsAConstantFP, [:pointer], :pointer

.is_a_constant_int(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1976
# File 'lib/llvm/core_ffi.rb', line 1976

attach_function :is_a_constant_int, :LLVMIsAConstantInt, [:pointer], :pointer

.is_a_constant_pointer_null(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1984
# File 'lib/llvm/core_ffi.rb', line 1984

attach_function :is_a_constant_pointer_null, :LLVMIsAConstantPointerNull, [:pointer], :pointer

.is_a_constant_struct(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1992
# File 'lib/llvm/core_ffi.rb', line 1992

attach_function :is_a_constant_struct, :LLVMIsAConstantStruct, [:pointer], :pointer

.is_a_constant_token_none(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2000
# File 'lib/llvm/core_ffi.rb', line 2000

attach_function :is_a_constant_token_none, :LLVMIsAConstantTokenNone, [:pointer], :pointer

.is_a_constant_vector(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2008
# File 'lib/llvm/core_ffi.rb', line 2008

attach_function :is_a_constant_vector, :LLVMIsAConstantVector, [:pointer], :pointer

.is_a_dbg_declare_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2104
# File 'lib/llvm/core_ffi.rb', line 2104

attach_function :is_a_dbg_declare_inst, :LLVMIsADbgDeclareInst, [:pointer], :pointer

.is_a_dbg_info_intrinsic(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2096
# File 'lib/llvm/core_ffi.rb', line 2096

attach_function :is_a_dbg_info_intrinsic, :LLVMIsADbgInfoIntrinsic, [:pointer], :pointer

.is_a_extract_element_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2168
# File 'lib/llvm/core_ffi.rb', line 2168

attach_function :is_a_extract_element_inst, :LLVMIsAExtractElementInst, [:pointer], :pointer

.is_a_extract_value_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2472
# File 'lib/llvm/core_ffi.rb', line 2472

attach_function :is_a_extract_value_inst, :LLVMIsAExtractValueInst, [:pointer], :pointer

.is_a_funclet_pad_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2320
# File 'lib/llvm/core_ffi.rb', line 2320

attach_function :is_a_funclet_pad_inst, :LLVMIsAFuncletPadInst, [:pointer], :pointer

.is_a_function(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2040
# File 'lib/llvm/core_ffi.rb', line 2040

attach_function :is_a_function, :LLVMIsAFunction, [:pointer], :pointer

.is_a_get_element_ptr_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2176
# File 'lib/llvm/core_ffi.rb', line 2176

attach_function :is_a_get_element_ptr_inst, :LLVMIsAGetElementPtrInst, [:pointer], :pointer

.is_a_global_alias(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2024
# File 'lib/llvm/core_ffi.rb', line 2024

attach_function :is_a_global_alias, :LLVMIsAGlobalAlias, [:pointer], :pointer

.is_a_global_object(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2032
# File 'lib/llvm/core_ffi.rb', line 2032

attach_function :is_a_global_object, :LLVMIsAGlobalObject, [:pointer], :pointer

.is_a_global_value(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2016
# File 'lib/llvm/core_ffi.rb', line 2016

attach_function :is_a_global_value, :LLVMIsAGlobalValue, [:pointer], :pointer

.is_a_global_variable(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2048
# File 'lib/llvm/core_ffi.rb', line 2048

attach_function :is_a_global_variable, :LLVMIsAGlobalVariable, [:pointer], :pointer

.is_a_indirect_br_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2256
# File 'lib/llvm/core_ffi.rb', line 2256

attach_function :is_a_indirect_br_inst, :LLVMIsAIndirectBrInst, [:pointer], :pointer

.is_a_inline_asm(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1888
# File 'lib/llvm/core_ffi.rb', line 1888

attach_function :is_a_inline_asm, :LLVMIsAInlineAsm, [:pointer], :pointer

.is_a_insert_element_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2184
# File 'lib/llvm/core_ffi.rb', line 2184

attach_function :is_a_insert_element_inst, :LLVMIsAInsertElementInst, [:pointer], :pointer

.is_a_insert_value_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2192
# File 'lib/llvm/core_ffi.rb', line 2192

attach_function :is_a_insert_value_inst, :LLVMIsAInsertValueInst, [:pointer], :pointer

.is_a_instruction(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2064
# File 'lib/llvm/core_ffi.rb', line 2064

attach_function :is_a_instruction, :LLVMIsAInstruction, [:pointer], :pointer

.is_a_int_to_ptr_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2416
# File 'lib/llvm/core_ffi.rb', line 2416

attach_function :is_a_int_to_ptr_inst, :LLVMIsAIntToPtrInst, [:pointer], :pointer

.is_a_intrinsic_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2088
# File 'lib/llvm/core_ffi.rb', line 2088

attach_function :is_a_intrinsic_inst, :LLVMIsAIntrinsicInst, [:pointer], :pointer

.is_a_invoke_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2264
# File 'lib/llvm/core_ffi.rb', line 2264

attach_function :is_a_invoke_inst, :LLVMIsAInvokeInst, [:pointer], :pointer

.is_a_landing_pad_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2200
# File 'lib/llvm/core_ffi.rb', line 2200

attach_function :is_a_landing_pad_inst, :LLVMIsALandingPadInst, [:pointer], :pointer

.is_a_load_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2480
# File 'lib/llvm/core_ffi.rb', line 2480

attach_function :is_a_load_inst, :LLVMIsALoadInst, [:pointer], :pointer

.is_a_mem_cpy_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2120
# File 'lib/llvm/core_ffi.rb', line 2120

attach_function :is_a_mem_cpy_inst, :LLVMIsAMemCpyInst, [:pointer], :pointer

.is_a_mem_intrinsic(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2112
# File 'lib/llvm/core_ffi.rb', line 2112

attach_function :is_a_mem_intrinsic, :LLVMIsAMemIntrinsic, [:pointer], :pointer

.is_a_mem_move_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2128
# File 'lib/llvm/core_ffi.rb', line 2128

attach_function :is_a_mem_move_inst, :LLVMIsAMemMoveInst, [:pointer], :pointer

.is_a_mem_set_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2136
# File 'lib/llvm/core_ffi.rb', line 2136

attach_function :is_a_mem_set_inst, :LLVMIsAMemSetInst, [:pointer], :pointer

.is_a_ptr_to_int_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2424
# File 'lib/llvm/core_ffi.rb', line 2424

attach_function :is_a_ptr_to_int_inst, :LLVMIsAPtrToIntInst, [:pointer], :pointer

.is_a_resume_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2296
# File 'lib/llvm/core_ffi.rb', line 2296

attach_function :is_a_resume_inst, :LLVMIsAResumeInst, [:pointer], :pointer

.is_a_return_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2272
# File 'lib/llvm/core_ffi.rb', line 2272

attach_function :is_a_return_inst, :LLVMIsAReturnInst, [:pointer], :pointer

.is_a_select_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2216
# File 'lib/llvm/core_ffi.rb', line 2216

attach_function :is_a_select_inst, :LLVMIsASelectInst, [:pointer], :pointer

.is_a_shuffle_vector_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2224
# File 'lib/llvm/core_ffi.rb', line 2224

attach_function :is_a_shuffle_vector_inst, :LLVMIsAShuffleVectorInst, [:pointer], :pointer

.is_a_store_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2232
# File 'lib/llvm/core_ffi.rb', line 2232

attach_function :is_a_store_inst, :LLVMIsAStoreInst, [:pointer], :pointer

.is_a_switch_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2280
# File 'lib/llvm/core_ffi.rb', line 2280

attach_function :is_a_switch_inst, :LLVMIsASwitchInst, [:pointer], :pointer

.is_a_terminator_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2240
# File 'lib/llvm/core_ffi.rb', line 2240

attach_function :is_a_terminator_inst, :LLVMIsATerminatorInst, [:pointer], :pointer

.is_a_trunc_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2448
# File 'lib/llvm/core_ffi.rb', line 2448

attach_function :is_a_trunc_inst, :LLVMIsATruncInst, [:pointer], :pointer

.is_a_unary_instruction(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2344
# File 'lib/llvm/core_ffi.rb', line 2344

attach_function :is_a_unary_instruction, :LLVMIsAUnaryInstruction, [:pointer], :pointer

.is_a_undef_value(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2056
# File 'lib/llvm/core_ffi.rb', line 2056

attach_function :is_a_undef_value, :LLVMIsAUndefValue, [:pointer], :pointer

.is_a_unreachable_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2288
# File 'lib/llvm/core_ffi.rb', line 2288

attach_function :is_a_unreachable_inst, :LLVMIsAUnreachableInst, [:pointer], :pointer

.is_a_user(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


1896
# File 'lib/llvm/core_ffi.rb', line 1896

attach_function :is_a_user, :LLVMIsAUser, [:pointer], :pointer

.is_af_cmp_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2152
# File 'lib/llvm/core_ffi.rb', line 2152

attach_function :is_af_cmp_inst, :LLVMIsAFCmpInst, [:pointer], :pointer

.is_afp_ext_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2384
# File 'lib/llvm/core_ffi.rb', line 2384

attach_function :is_afp_ext_inst, :LLVMIsAFPExtInst, [:pointer], :pointer

.is_afp_to_si_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2392
# File 'lib/llvm/core_ffi.rb', line 2392

attach_function :is_afp_to_si_inst, :LLVMIsAFPToSIInst, [:pointer], :pointer

.is_afp_to_ui_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2400
# File 'lib/llvm/core_ffi.rb', line 2400

attach_function :is_afp_to_ui_inst, :LLVMIsAFPToUIInst, [:pointer], :pointer

.is_afp_trunc_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2408
# File 'lib/llvm/core_ffi.rb', line 2408

attach_function :is_afp_trunc_inst, :LLVMIsAFPTruncInst, [:pointer], :pointer

.is_ai_cmp_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2160
# File 'lib/llvm/core_ffi.rb', line 2160

attach_function :is_ai_cmp_inst, :LLVMIsAICmpInst, [:pointer], :pointer

.is_amd_node(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2496
# File 'lib/llvm/core_ffi.rb', line 2496

attach_function :is_amd_node, :LLVMIsAMDNode, [:pointer], :pointer

.is_amd_string(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2504
# File 'lib/llvm/core_ffi.rb', line 2504

attach_function :is_amd_string, :LLVMIsAMDString, [:pointer], :pointer

.is_aphi_node(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2208
# File 'lib/llvm/core_ffi.rb', line 2208

attach_function :is_aphi_node, :LLVMIsAPHINode, [:pointer], :pointer

.is_as_ext_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2432
# File 'lib/llvm/core_ffi.rb', line 2432

attach_function :is_as_ext_inst, :LLVMIsASExtInst, [:pointer], :pointer

.is_asi_to_fp_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2440
# File 'lib/llvm/core_ffi.rb', line 2440

attach_function :is_asi_to_fp_inst, :LLVMIsASIToFPInst, [:pointer], :pointer

.is_aui_to_fp_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2456
# File 'lib/llvm/core_ffi.rb', line 2456

attach_function :is_aui_to_fp_inst, :LLVMIsAUIToFPInst, [:pointer], :pointer

.is_ava_arg_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2488
# File 'lib/llvm/core_ffi.rb', line 2488

attach_function :is_ava_arg_inst, :LLVMIsAVAArgInst, [:pointer], :pointer

.is_az_ext_inst(val) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(ValueRef))


2464
# File 'lib/llvm/core_ffi.rb', line 2464

attach_function :is_az_ext_inst, :LLVMIsAZExtInst, [:pointer], :pointer

.is_conditional(branch) ⇒ Integer

Return if a branch is conditional.

This only works on llvm::BranchInst instructions.

Parameters:

  • branch (FFI::Pointer(ValueRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::BranchInstllvm::BranchInst::isConditional


4306
# File 'lib/llvm/core_ffi.rb', line 4306

attach_function :is_conditional, :LLVMIsConditional, [:pointer], :int

.is_constant(val) ⇒ Integer

Determine whether the specified constant instance is constant.

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (Integer)


1856
# File 'lib/llvm/core_ffi.rb', line 1856

attach_function :is_constant, :LLVMIsConstant, [:pointer], :int

.is_constant_string(c) ⇒ Integer

Returns true if the specified constant is an array of i8.

Parameters:

  • c (FFI::Pointer(ValueRef))

Returns:

  • (Integer)

See Also:

  • ConstantDataSequential::getAsString()


2810
# File 'lib/llvm/core_ffi.rb', line 2810

attach_function :is_constant_string, :LLVMIsConstantString, [:pointer], :int

.is_declaration(global) ⇒ Integer

(Not documented)

Parameters:

  • global (FFI::Pointer(ValueRef))

Returns:

  • (Integer)


3250
# File 'lib/llvm/core_ffi.rb', line 3250

attach_function :is_declaration, :LLVMIsDeclaration, [:pointer], :int

.is_externally_initialized(global_var) ⇒ Integer

(Not documented)

Parameters:

  • global_var (FFI::Pointer(ValueRef))

Returns:

  • (Integer)


3512
# File 'lib/llvm/core_ffi.rb', line 3512

attach_function :is_externally_initialized, :LLVMIsExternallyInitialized, [:pointer], :int

.is_function_var_arg(function_ty) ⇒ Integer

Returns whether a function type is variadic.

Parameters:

  • function_ty (FFI::Pointer(TypeRef))

Returns:

  • (Integer)


1516
# File 'lib/llvm/core_ffi.rb', line 1516

attach_function :is_function_var_arg, :LLVMIsFunctionVarArg, [:pointer], :int

.is_global_constant(global_var) ⇒ Integer

(Not documented)

Parameters:

  • global_var (FFI::Pointer(ValueRef))

Returns:

  • (Integer)


3478
# File 'lib/llvm/core_ffi.rb', line 3478

attach_function :is_global_constant, :LLVMIsGlobalConstant, [:pointer], :int

.is_literal_struct(struct_ty) ⇒ Bool

Determine whether a structure is literal.

Parameters:

  • struct_ty (FFI::Pointer(TypeRef))

Returns:

  • (Bool)

See Also:

  • llvmllvm::StructTypellvm::StructType::isLiteral()


147
# File 'lib/llvm/core.rb', line 147

attach_function :is_literal_struct, :LLVMIsLiteralStruct, [:pointer], :bool

.is_multithreadedInteger

Check whether LLVM is executing in thread-safe mode or not.

@see llvm::llvm_is_multithreaded

Returns:

  • (Integer)


5672
# File 'lib/llvm/core_ffi.rb', line 5672

attach_function :is_multithreaded, :LLVMIsMultithreaded, [], :int

.is_null(val) ⇒ Integer

Determine whether a value instance is null.

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::Constantllvm::Constant::isNullValue()


2639
# File 'lib/llvm/core_ffi.rb', line 2639

attach_function :is_null, :LLVMIsNull, [:pointer], :int

.is_opaque_struct(struct_ty) ⇒ Bool

Determine whether a structure is opaque.

Parameters:

  • struct_ty (FFI::Pointer(TypeRef))

Returns:

  • (Bool)

See Also:

  • llvmllvm::StructTypellvm::StructType::isOpaque()


137
# File 'lib/llvm/core.rb', line 137

attach_function :is_opaque_struct, :LLVMIsOpaqueStruct, [:pointer], :bool

.is_packed_struct(struct_ty) ⇒ Bool

Determine whether a structure is packed.

Parameters:

  • struct_ty (FFI::Pointer(TypeRef))

Returns:

  • (Bool)

See Also:

  • llvmllvm::StructTypellvm::StructType::isPacked()


127
# File 'lib/llvm/core.rb', line 127

attach_function :is_packed_struct, :LLVMIsPackedStruct, [:pointer], :bool

.is_tail_call(call_inst) ⇒ Integer

Obtain whether a call instruction is a tail call.

This only works on llvm::CallInst instructions.

Parameters:

  • call_inst (FFI::Pointer(ValueRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::CallInstllvm::CallInst::isTailCall()


4248
# File 'lib/llvm/core_ffi.rb', line 4248

attach_function :is_tail_call, :LLVMIsTailCall, [:pointer], :int

.is_thread_local(global_var) ⇒ Integer

(Not documented)

Parameters:

  • global_var (FFI::Pointer(ValueRef))

Returns:

  • (Integer)


3461
# File 'lib/llvm/core_ffi.rb', line 3461

attach_function :is_thread_local, :LLVMIsThreadLocal, [:pointer], :int

.is_undef(val) ⇒ Integer

Determine whether a value instance is undefined.

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (Integer)


1864
# File 'lib/llvm/core_ffi.rb', line 1864

attach_function :is_undef, :LLVMIsUndef, [:pointer], :int

.label_typeFFI::Pointer(TypeRef)

(Not documented)

Returns:

  • (FFI::Pointer(TypeRef))


1778
# File 'lib/llvm/core_ffi.rb', line 1778

attach_function :label_type, :LLVMLabelType, [], :pointer

.label_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

Create a label type in a context.

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1755
# File 'lib/llvm/core_ffi.rb', line 1755

attach_function :label_type_in_context, :LLVMLabelTypeInContext, [:pointer], :pointer

(Not documented)

Returns:

  • (nil)


30
# File 'lib/llvm/execution_engine_ffi.rb', line 30

attach_function :link_in_interpreter, :LLVMLinkInInterpreter, [], :void

@{

Returns:

  • (nil)


23
# File 'lib/llvm/execution_engine_ffi.rb', line 23

attach_function :link_in_mcjit, :LLVMLinkInMCJIT, [], :void

Links the source module into the destination module. The source module is destroyed. The return value is true if an error occurred, false otherwise. Use the diagnostic handler to get any diagnostic message.

Parameters:

  • dest (FFI::Pointer(ModuleRef))
  • src (FFI::Pointer(ModuleRef))

Returns:

  • (Integer)


43
# File 'lib/llvm/linker_ffi.rb', line 43

attach_function :link_modules2, :LLVMLinkModules2, [:pointer, :pointer], :int

.load_library_permanently(filename) ⇒ Integer

(Not documented)

Parameters:

  • filename (String)

Returns:

  • (Integer)


21
# File 'lib/llvm/core_ffi.rb', line 21

attach_function :load_library_permanently, :LLVMLoadLibraryPermanently, [:string], :int

.md_node(vals, count) ⇒ FFI::Pointer(ValueRef)

Obtain a MDNode value from the global context.

Parameters:

  • vals (FFI::Pointer(*ValueRef))
  • count (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


3792
# File 'lib/llvm/core_ffi.rb', line 3792

attach_function :md_node, :LLVMMDNode, [:pointer, :uint], :pointer

.md_node_in_context(c, vals, count) ⇒ FFI::Pointer(ValueRef)

Obtain a MDNode value from a context.

The returned value corresponds to the llvm::MDNode class.

Parameters:

  • c (FFI::Pointer(ContextRef))
  • vals (FFI::Pointer(*ValueRef))
  • count (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


3783
# File 'lib/llvm/core_ffi.rb', line 3783

attach_function :md_node_in_context, :LLVMMDNodeInContext, [:pointer, :pointer, :uint], :pointer

.md_string(str, s_len) ⇒ FFI::Pointer(ValueRef)

Obtain a MDString value from the global context.

Parameters:

  • str (String)
  • s_len (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


3771
# File 'lib/llvm/core_ffi.rb', line 3771

attach_function :md_string, :LLVMMDString, [:string, :uint], :pointer

.md_string_in_context(c, str, s_len) ⇒ FFI::Pointer(ValueRef)

Obtain a MDString value from a context.

The returned instance corresponds to the llvm::MDString class.

The instance is specified by string data of a specified length. The string content is copied, so the backing memory can be freed after this function returns.

Parameters:

  • c (FFI::Pointer(ContextRef))
  • str (String)
  • s_len (Integer)

Returns:

  • (FFI::Pointer(ValueRef))


3762
# File 'lib/llvm/core_ffi.rb', line 3762

attach_function :md_string_in_context, :LLVMMDStringInContext, [:pointer, :string, :uint], :pointer

.module_create_with_name(module_id) ⇒ FFI::Pointer(ModuleRef)

Create a new, empty module in the global context.

This is equivalent to calling LLVMModuleCreateWithNameInContext with LLVMGetGlobalContext() as the context parameter.

Every invocation should be paired with LLVMDisposeModule() or memory will be leaked.

Parameters:

  • module_id (String)

Returns:

  • (FFI::Pointer(ModuleRef))


986
# File 'lib/llvm/core_ffi.rb', line 986

attach_function :module_create_with_name, :LLVMModuleCreateWithName, [:string], :pointer

.module_create_with_name_in_context(module_id, c) ⇒ FFI::Pointer(ModuleRef)

Create a new, empty module in a specific context.

Every invocation should be paired with LLVMDisposeModule() or memory will be leaked.

Parameters:

  • module_id (String)
  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(ModuleRef))


998
# File 'lib/llvm/core_ffi.rb', line 998

attach_function :module_create_with_name_in_context, :LLVMModuleCreateWithNameInContext, [:string, :pointer], :pointer

.move_basic_block_after(bb, move_pos) ⇒ nil

Move a basic block to after another one.

Parameters:

  • bb (FFI::Pointer(BasicBlockRef))
  • move_pos (FFI::Pointer(BasicBlockRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::BasicBlockllvm::BasicBlock::moveAfter()


4054
# File 'lib/llvm/core_ffi.rb', line 4054

attach_function :move_basic_block_after, :LLVMMoveBasicBlockAfter, [:pointer, :pointer], :void

.move_basic_block_before(bb, move_pos) ⇒ nil

Move a basic block to before another one.

Parameters:

  • bb (FFI::Pointer(BasicBlockRef))
  • move_pos (FFI::Pointer(BasicBlockRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::BasicBlockllvm::BasicBlock::moveBefore()


4043
# File 'lib/llvm/core_ffi.rb', line 4043

attach_function :move_basic_block_before, :LLVMMoveBasicBlockBefore, [:pointer, :pointer], :void

.offset_of_element(td, struct_ty, element) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


305
# File 'lib/llvm/target_ffi.rb', line 305

attach_function :offset_of_element, :LLVMOffsetOfElement, [OpaqueTargetData, :pointer, :uint], :ulong_long

.parse_bitcode(mem_buf, out_module, out_message) ⇒ Integer

(Not documented)

Parameters:

  • mem_buf (FFI::Pointer(MemoryBufferRef))
  • out_module (FFI::Pointer(*ModuleRef))
  • out_message (FFI::Pointer(**CharS))

Returns:

  • (Integer)


23
# File 'lib/llvm/core/bitcode_ffi.rb', line 23

attach_function :parse_bitcode, :LLVMParseBitcode, [:pointer, :pointer, :pointer], :int

.parse_bitcode2(mem_buf, out_module) ⇒ Integer

(Not documented)

Parameters:

  • mem_buf (FFI::Pointer(MemoryBufferRef))
  • out_module (FFI::Pointer(*ModuleRef))

Returns:

  • (Integer)


32
# File 'lib/llvm/core/bitcode_ffi.rb', line 32

attach_function :parse_bitcode2, :LLVMParseBitcode2, [:pointer, :pointer], :int

.parse_bitcode_in_context(context_ref, mem_buf, out_module, out_message) ⇒ Integer

(Not documented)

Parameters:

  • context_ref (FFI::Pointer(ContextRef))
  • mem_buf (FFI::Pointer(MemoryBufferRef))
  • out_module (FFI::Pointer(*ModuleRef))
  • out_message (FFI::Pointer(**CharS))

Returns:

  • (Integer)


43
# File 'lib/llvm/core/bitcode_ffi.rb', line 43

attach_function :parse_bitcode_in_context, :LLVMParseBitcodeInContext, [:pointer, :pointer, :pointer, :pointer], :int

.parse_bitcode_in_context2(context_ref, mem_buf, out_module) ⇒ Integer

(Not documented)

Parameters:

  • context_ref (FFI::Pointer(ContextRef))
  • mem_buf (FFI::Pointer(MemoryBufferRef))
  • out_module (FFI::Pointer(*ModuleRef))

Returns:

  • (Integer)


53
# File 'lib/llvm/core/bitcode_ffi.rb', line 53

attach_function :parse_bitcode_in_context2, :LLVMParseBitcodeInContext2, [:pointer, :pointer, :pointer], :int

.parse_command_line_options(argc, argv, overview) ⇒ nil

This function parses the given arguments using the LLVM command line parser. Note that the only stable thing about this function is its signature; you cannot rely on any particular set of command line arguments being interpreted the same way across LLVM versions.

Parameters:

  • argc (Integer)
  • argv (FFI::Pointer(**CharS))
  • overview (String)

Returns:

  • (nil)

See Also:

  • llvmllvm::clllvm::cl::ParseCommandLineOptions()


36
# File 'lib/llvm/core_ffi.rb', line 36

attach_function :parse_command_line_options, :LLVMParseCommandLineOptions, [:int, :pointer, :string], :void

.pointer_size(td) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


177
# File 'lib/llvm/target_ffi.rb', line 177

attach_function :pointer_size, :LLVMPointerSize, [OpaqueTargetData], :uint

.pointer_size_for_as(td, as) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


186
# File 'lib/llvm/target_ffi.rb', line 186

attach_function :pointer_size_for_as, :LLVMPointerSizeForAS, [OpaqueTargetData, :uint], :uint

.pointer_type(element_type, address_space) ⇒ FFI::Pointer(TypeRef)

Create a pointer type that points to a defined type.

The created type will exist in the context that its pointee type exists in.

Parameters:

  • element_type (FFI::Pointer(TypeRef))
  • address_space (Integer)

Returns:

  • (FFI::Pointer(TypeRef))

See Also:

  • llvmllvm::PointerTypellvm::PointerType::get()


1700
# File 'lib/llvm/core_ffi.rb', line 1700

attach_function :pointer_type, :LLVMPointerType, [:pointer, :uint], :pointer

.position_builder(builder, block, instr) ⇒ nil

(Not documented)

Parameters:

  • builder (FFI::Pointer(BuilderRef))
  • block (FFI::Pointer(BasicBlockRef))
  • instr (FFI::Pointer(ValueRef))

Returns:

  • (nil)


4410
# File 'lib/llvm/core_ffi.rb', line 4410

attach_function :position_builder, :LLVMPositionBuilder, [:pointer, :pointer, :pointer], :void

.position_builder_at_end(builder, block) ⇒ nil

(Not documented)

Parameters:

  • builder (FFI::Pointer(BuilderRef))
  • block (FFI::Pointer(BasicBlockRef))

Returns:

  • (nil)


4428
# File 'lib/llvm/core_ffi.rb', line 4428

attach_function :position_builder_at_end, :LLVMPositionBuilderAtEnd, [:pointer, :pointer], :void

.position_builder_before(builder, instr) ⇒ nil

(Not documented)

Parameters:

  • builder (FFI::Pointer(BuilderRef))
  • instr (FFI::Pointer(ValueRef))

Returns:

  • (nil)


4419
# File 'lib/llvm/core_ffi.rb', line 4419

attach_function :position_builder_before, :LLVMPositionBuilderBefore, [:pointer, :pointer], :void

.ppcfp128_typeFFI::Pointer(TypeRef)

(Not documented)

Returns:

  • (FFI::Pointer(TypeRef))


1494
# File 'lib/llvm/core_ffi.rb', line 1494

attach_function :ppcfp128_type, :LLVMPPCFP128Type, [], :pointer

.ppcfp128_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

Obtain a 128-bit floating point type (two 64-bits) from a context.

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1450
# File 'lib/llvm/core_ffi.rb', line 1450

attach_function :ppcfp128_type_in_context, :LLVMPPCFP128TypeInContext, [:pointer], :pointer

.preferred_alignment_of_global(td, global_var) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


285
# File 'lib/llvm/target_ffi.rb', line 285

attach_function :preferred_alignment_of_global, :LLVMPreferredAlignmentOfGlobal, [OpaqueTargetData, :pointer], :uint

.preferred_alignment_of_type(td, ty) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


276
# File 'lib/llvm/target_ffi.rb', line 276

attach_function :preferred_alignment_of_type, :LLVMPreferredAlignmentOfType, [OpaqueTargetData, :pointer], :uint

Print a representation of a module to a file. The ErrorMessage needs to be disposed with LLVMDisposeMessage. Returns 0 on success, 1 otherwise.

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • filename (String)
  • error_message (FFI::Pointer(**CharS))

Returns:

  • (Integer)

See Also:

  • Module::print()


1082
# File 'lib/llvm/core_ffi.rb', line 1082

attach_function :print_module_to_file, :LLVMPrintModuleToFile, [:pointer, :string, :pointer], :int

Return a string representation of the module. Use LLVMDisposeMessage to free the string.

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (String)

See Also:

  • Module::print()


1093
# File 'lib/llvm/core_ffi.rb', line 1093

attach_function :print_module_to_string, :LLVMPrintModuleToString, [:pointer], :string

Return a string representation of the type. Use LLVMDisposeMessage to free the string.

Parameters:

  • val (FFI::Pointer(TypeRef))

Returns:

  • (String)

See Also:

  • llvmllvm::Typellvm::Type::print()


1285
# File 'lib/llvm/core_ffi.rb', line 1285

attach_function :print_type_to_string, :LLVMPrintTypeToString, [:pointer], :string

Return a string representation of the value. Use LLVMDisposeMessage to free the string.

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (String)

See Also:

  • llvmllvm::Valuellvm::Value::print()


1837
# File 'lib/llvm/core_ffi.rb', line 1837

attach_function :print_value_to_string, :LLVMPrintValueToString, [:pointer], :string

(Not documented)

Parameters:

Returns:

  • (FFI::Pointer(*Void))


296
# File 'lib/llvm/execution_engine_ffi.rb', line 296

attach_function :recompile_and_relink_function, :LLVMRecompileAndRelinkFunction, [OpaqueExecutionEngine, :pointer], :pointer

.remove_basic_block_from_parent(bb) ⇒ nil

Remove a basic block from a function.

This deletes the basic block from its containing function but keep the basic block alive.

Parameters:

  • bb (FFI::Pointer(BasicBlockRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::BasicBlockllvm::BasicBlock::removeFromParent()


4032
# File 'lib/llvm/core_ffi.rb', line 4032

attach_function :remove_basic_block_from_parent, :LLVMRemoveBasicBlockFromParent, [:pointer], :void

.remove_module(ee, m, out_mod, out_error) ⇒ Integer

(Not documented)

Parameters:

  • ee (OpaqueExecutionEngine)
  • m (FFI::Pointer(ModuleRef))
  • out_mod (FFI::Pointer(*ModuleRef))
  • out_error (FFI::Pointer(**CharS))

Returns:

  • (Integer)


277
# File 'lib/llvm/execution_engine_ffi.rb', line 277

attach_function :remove_module, :LLVMRemoveModule, [OpaqueExecutionEngine, :pointer, :pointer, :pointer], :int

.replace_all_uses_with(old_val, new_val) ⇒ nil

Replace all uses of a value with another one.

Parameters:

  • old_val (FFI::Pointer(ValueRef))
  • new_val (FFI::Pointer(ValueRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::Valuellvm::Value::replaceAllUsesWith()


1848
# File 'lib/llvm/core_ffi.rb', line 1848

attach_function :replace_all_uses_with, :LLVMReplaceAllUsesWith, [:pointer, :pointer], :void

.run_function(ee, f, num_args, args) ⇒ OpaqueGenericValue

(Not documented)

Parameters:

  • ee (OpaqueExecutionEngine)
  • f (FFI::Pointer(ValueRef))
  • num_args (Integer)
  • args (FFI::Pointer(*GenericValueRef))

Returns:



248
# File 'lib/llvm/execution_engine_ffi.rb', line 248

attach_function :run_function, :LLVMRunFunction, [OpaqueExecutionEngine, :pointer, :uint, :pointer], OpaqueGenericValue

.run_function_as_main(ee, f, arg_c, arg_v, env_p) ⇒ Integer

(Not documented)

Parameters:

  • ee (OpaqueExecutionEngine)
  • f (FFI::Pointer(ValueRef))
  • arg_c (Integer)
  • arg_v (FFI::Pointer(**CharS))
  • env_p (FFI::Pointer(**CharS))

Returns:

  • (Integer)


237
# File 'lib/llvm/execution_engine_ffi.rb', line 237

attach_function :run_function_as_main, :LLVMRunFunctionAsMain, [OpaqueExecutionEngine, :pointer, :uint, :pointer, :pointer], :int

.run_function_pass_manager(fpm, f) ⇒ Integer

Executes all of the function passes scheduled in the function pass manager

on the provided function. Returns 1 if any of the passes modified the
function, false otherwise.
@see llvm::FunctionPassManager::run(Function&)

Parameters:

  • fpm (FFI::Pointer(PassManagerRef))
  • f (FFI::Pointer(ValueRef))

Returns:

  • (Integer)


5627
# File 'lib/llvm/core_ffi.rb', line 5627

attach_function :run_function_pass_manager, :LLVMRunFunctionPassManager, [:pointer, :pointer], :int

.run_pass_manager(pm, m) ⇒ Integer

Initializes, executes on the provided module, and finalizes all of the

passes scheduled in the pass manager. Returns 1 if any of the passes
modified the module, 0 otherwise.
@see llvm::PassManager::run(Module&)

Parameters:

  • pm (FFI::Pointer(PassManagerRef))
  • m (FFI::Pointer(ModuleRef))

Returns:

  • (Integer)


5605
# File 'lib/llvm/core_ffi.rb', line 5605

attach_function :run_pass_manager, :LLVMRunPassManager, [:pointer, :pointer], :int

.run_passes(pmb, opt_level) ⇒ nil

/**

* Construct and run a set of passes over a module
*
* This function takes a string with the passes that should be used. The format
* of this string is the same as opt's -passes argument for the new pass
* manager. Individual passes may be specified, separated by commas. Full
* pipelines may also be invoked using `default<O3>` and friends. See opt for
* full reference of the Passes format.
*/

LLVMErrorRef LLVMRunPasses(LLVMModuleRef M, const char *Passes,

LLVMTargetMachineRef TM,
LLVMPassBuilderOptionsRef Options);

Parameters:

  • pmb (OpaquePassManagerBuilder)
  • opt_level (Integer)

Returns:

  • (nil)


711
# File 'lib/llvm/transforms/pass_builder.rb', line 711

attach_function :run_passes, :LLVMRunPasses, [:pointer, :string, :pointer, :pointer], :pointer

.run_static_constructors(ee) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


217
# File 'lib/llvm/execution_engine_ffi.rb', line 217

attach_function :run_static_constructors, :LLVMRunStaticConstructors, [OpaqueExecutionEngine], :void

.run_static_destructors(ee) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


225
# File 'lib/llvm/execution_engine_ffi.rb', line 225

attach_function :run_static_destructors, :LLVMRunStaticDestructors, [OpaqueExecutionEngine], :void

.search_for_address_of_symbol(symbol_name) ⇒ FFI::Pointer(*Void)

(Not documented)

Parameters:

  • symbol_name (String)

Returns:

  • (FFI::Pointer(*Void))


44
# File 'lib/llvm/core_ffi.rb', line 44

attach_function :search_for_address_of_symbol, :LLVMSearchForAddressOfSymbol, [:string], :pointer

.set_alignment(v, bytes) ⇒ nil

Set the preferred alignment of the value.

Parameters:

  • v (FFI::Pointer(ValueRef))
  • bytes (Integer)

Returns:

  • (nil)

See Also:

  • llvmllvm::AllocaInstllvm::AllocaInst::setAlignment()
  • llvmllvm::LoadInstllvm::LoadInst::setAlignment()
  • llvmllvm::StoreInstllvm::StoreInst::setAlignment()
  • llvmllvm::GlobalValuellvm::GlobalValue::setAlignment()


3360
# File 'lib/llvm/core_ffi.rb', line 3360

attach_function :set_alignment, :LLVMSetAlignment, [:pointer, :uint], :void

.set_cleanup(landing_pad, val) ⇒ nil

Set the ‘cleanup’ flag in the landingpad instruction

Parameters:

  • landing_pad (FFI::Pointer(ValueRef))
  • val (Integer)

Returns:

  • (nil)


4631
# File 'lib/llvm/core_ffi.rb', line 4631

attach_function :set_cleanup, :LLVMSetCleanup, [:pointer, :int], :void

.set_condition(branch, cond) ⇒ nil

Set the condition of a branch instruction.

This only works on llvm::BranchInst instructions.

Parameters:

  • branch (FFI::Pointer(ValueRef))
  • cond (FFI::Pointer(ValueRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::BranchInstllvm::BranchInst::setCondition


4331
# File 'lib/llvm/core_ffi.rb', line 4331

attach_function :set_condition, :LLVMSetCondition, [:pointer, :pointer], :void

.set_current_debug_location(builder, l) ⇒ nil

Metadata

Parameters:

  • builder (FFI::Pointer(BuilderRef))
  • l (FFI::Pointer(ValueRef))

Returns:

  • (nil)


4480
# File 'lib/llvm/core_ffi.rb', line 4480

attach_function :set_current_debug_location, :LLVMSetCurrentDebugLocation, [:pointer, :pointer], :void

.set_data_layout(m, triple) ⇒ nil

Set the data layout for a module.

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • triple (String)

Returns:

  • (nil)

See Also:

  • Module::setDataLayout()


1038
# File 'lib/llvm/core_ffi.rb', line 1038

attach_function :set_data_layout, :LLVMSetDataLayout, [:pointer, :string], :void

.set_dll_storage_class(global, class_) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


3318
# File 'lib/llvm/core_ffi.rb', line 3318

attach_function :set_dll_storage_class, :LLVMSetDLLStorageClass, [:pointer, :dll_storage_class], :void

.set_externally_initialized(global_var, is_ext_init) ⇒ nil

(Not documented)

Parameters:

  • global_var (FFI::Pointer(ValueRef))
  • is_ext_init (Integer)

Returns:

  • (nil)


3521
# File 'lib/llvm/core_ffi.rb', line 3521

attach_function :set_externally_initialized, :LLVMSetExternallyInitialized, [:pointer, :int], :void

.set_function_call_conv(fn, cc) ⇒ nil

Set the calling convention of a function.

Parameters:

  • Fn

    Function to operate on

  • CC

    LLVMCallConv to set calling convention to

  • fn (FFI::Pointer(ValueRef))
  • cc (Integer)

Returns:

  • (nil)

See Also:

  • llvmllvm::Functionllvm::Function::setCallingConv()


3605
# File 'lib/llvm/core_ffi.rb', line 3605

attach_function :set_function_call_conv, :LLVMSetFunctionCallConv, [:pointer, :uint], :void

.set_gc(fn, name) ⇒ nil

Define the garbage collector to use during code generation.

Parameters:

  • fn (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (nil)

See Also:

  • llvmllvm::Functionllvm::Function::setGC()


3627
# File 'lib/llvm/core_ffi.rb', line 3627

attach_function :set_gc, :LLVMSetGC, [:pointer, :string], :void

.set_global_constant(global_var, is_constant) ⇒ nil

(Not documented)

Parameters:

  • global_var (FFI::Pointer(ValueRef))
  • is_constant (Integer)

Returns:

  • (nil)


3487
# File 'lib/llvm/core_ffi.rb', line 3487

attach_function :set_global_constant, :LLVMSetGlobalConstant, [:pointer, :int], :void

.set_initializer(global_var, constant_val) ⇒ nil

(Not documented)

Parameters:

  • global_var (FFI::Pointer(ValueRef))
  • constant_val (FFI::Pointer(ValueRef))

Returns:

  • (nil)


3453
# File 'lib/llvm/core_ffi.rb', line 3453

attach_function :set_initializer, :LLVMSetInitializer, [:pointer, :pointer], :void

.set_inst_debug_location(builder, inst) ⇒ nil

(Not documented)

Parameters:

  • builder (FFI::Pointer(BuilderRef))
  • inst (FFI::Pointer(ValueRef))

Returns:

  • (nil)


4497
# File 'lib/llvm/core_ffi.rb', line 4497

attach_function :set_inst_debug_location, :LLVMSetInstDebugLocation, [:pointer, :pointer], :void

.set_instr_param_alignment(instr, index, align) ⇒ nil

(Not documented)

Parameters:

  • instr (FFI::Pointer(ValueRef))
  • index (Integer)
  • align (Integer)

Returns:

  • (nil)


4236
# File 'lib/llvm/core_ffi.rb', line 4236

attach_function :set_instr_param_alignment, :LLVMSetInstrParamAlignment, [:pointer, :uint, :uint], :void

.set_instruction_call_conv(instr, cc) ⇒ nil

Set the calling convention for a call instruction.

This expects an LLVMValueRef that corresponds to a llvm::CallInst or llvm::InvokeInst.

Parameters:

  • instr (FFI::Pointer(ValueRef))
  • cc (Integer)

Returns:

  • (nil)

See Also:

  • llvmllvm::CallInstllvm::CallInst::setCallingConv()
  • llvmllvm::InvokeInstllvm::InvokeInst::setCallingConv()


4213
# File 'lib/llvm/core_ffi.rb', line 4213

attach_function :set_instruction_call_conv, :LLVMSetInstructionCallConv, [:pointer, :uint], :void

.set_linkage(global, linkage) ⇒ nil

(Not documented)

Parameters:

  • global (FFI::Pointer(ValueRef))
  • linkage (Symbol from _enum_linkage_)

Returns:

  • (nil)


3267
# File 'lib/llvm/core_ffi.rb', line 3267

attach_function :set_linkage, :LLVMSetLinkage, [:pointer, :linkage], :void

.set_metadata(val, kind_id, node) ⇒ nil

Set metadata associated with an instruction value.

Parameters:

  • val (FFI::Pointer(ValueRef))
  • kind_id (Integer)
  • node (FFI::Pointer(ValueRef))

Returns:

  • (nil)


4102
# File 'lib/llvm/core_ffi.rb', line 4102

attach_function :set_metadata, :LLVMSetMetadata, [:pointer, :uint, :pointer], :void

.set_module_data_layout(m, dl) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


128
# File 'lib/llvm/target_ffi.rb', line 128

attach_function :set_module_data_layout, :LLVMSetModuleDataLayout, [:pointer, OpaqueTargetData], :void

.set_module_inline_asm(m, asm) ⇒ nil

Set inline assembly for a module.

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • asm (String)

Returns:

  • (nil)

See Also:

  • Module::setModuleInlineAsm()


1104
# File 'lib/llvm/core_ffi.rb', line 1104

attach_function :set_module_inline_asm, :LLVMSetModuleInlineAsm, [:pointer, :string], :void

.set_operand(user, index, val) ⇒ nil

Set an operand at a specific index in a llvm::User value.

Parameters:

  • user (FFI::Pointer(ValueRef))
  • index (Integer)
  • val (FFI::Pointer(ValueRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::Userllvm::User::setOperand()


2586
# File 'lib/llvm/core_ffi.rb', line 2586

attach_function :set_operand, :LLVMSetOperand, [:pointer, :uint, :pointer], :void

.set_ordering(memory_access_inst, ordering) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


5083
# File 'lib/llvm/core_ffi.rb', line 5083

attach_function :set_ordering, :LLVMSetOrdering, [:pointer, :atomic_ordering], :void

.set_param_alignment(arg, align) ⇒ nil

Set the alignment for a function parameter.

Parameters:

  • arg (FFI::Pointer(ValueRef))
  • align (Integer)

Returns:

  • (nil)

See Also:

  • llvmllvm::Argumentllvm::Argument::addAttr()
  • llvmllvm::AttrBuilderllvm::AttrBuilder::addAlignmentAttr()


3746
# File 'lib/llvm/core_ffi.rb', line 3746

attach_function :set_param_alignment, :LLVMSetParamAlignment, [:pointer, :uint], :void

.set_personality_fn(fn, personality_fn) ⇒ nil

Set the personality function attached to the function.

Parameters:

  • fn (FFI::Pointer(ValueRef))
  • personality_fn (FFI::Pointer(ValueRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::Functionllvm::Function::setPersonalityFn()


3569
# File 'lib/llvm/core_ffi.rb', line 3569

attach_function :set_personality_fn, :LLVMSetPersonalityFn, [:pointer, :pointer], :void

.set_section(global, section) ⇒ nil

(Not documented)

Parameters:

  • global (FFI::Pointer(ValueRef))
  • section (String)

Returns:

  • (nil)


3284
# File 'lib/llvm/core_ffi.rb', line 3284

attach_function :set_section, :LLVMSetSection, [:pointer, :string], :void

.set_successor(term, i, block) ⇒ nil

Update the specified successor to point at the provided block.

Parameters:

  • term (FFI::Pointer(ValueRef))
  • i (Integer)
  • block (FFI::Pointer(BasicBlockRef))

Returns:

  • (nil)

See Also:

  • llvmllvm::TerminatorInstllvm::TerminatorInst::setSuccessor


4294
# File 'lib/llvm/core_ffi.rb', line 4294

attach_function :set_successor, :LLVMSetSuccessor, [:pointer, :uint, :pointer], :void

.set_tail_call(call_inst, is_tail_call) ⇒ nil

Set whether a call instruction is a tail call.

This only works on llvm::CallInst instructions.

Parameters:

  • call_inst (FFI::Pointer(ValueRef))
  • is_tail_call (Integer)

Returns:

  • (nil)

See Also:

  • llvmllvm::CallInstllvm::CallInst::setTailCall()


4261
# File 'lib/llvm/core_ffi.rb', line 4261

attach_function :set_tail_call, :LLVMSetTailCall, [:pointer, :int], :void

.set_target(m, triple) ⇒ nil

Set the target triple for a module.

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • triple (String)

Returns:

  • (nil)

See Also:

  • Module::setTargetTriple()


1059
# File 'lib/llvm/core_ffi.rb', line 1059

attach_function :set_target, :LLVMSetTarget, [:pointer, :string], :void

.set_target_machine_asm_verbosity(t, verbose_asm) ⇒ nil

Set the target machine’s ASM verbosity.

Parameters:

Returns:

  • (nil)


583
# File 'lib/llvm/target_ffi.rb', line 583

attach_function :set_target_machine_asm_verbosity, :LLVMSetTargetMachineAsmVerbosity, [OpaqueTargetMachine, :int], :void

.set_thread_local(global_var, is_thread_local) ⇒ nil

(Not documented)

Parameters:

  • global_var (FFI::Pointer(ValueRef))
  • is_thread_local (Integer)

Returns:

  • (nil)


3470
# File 'lib/llvm/core_ffi.rb', line 3470

attach_function :set_thread_local, :LLVMSetThreadLocal, [:pointer, :int], :void

.set_thread_local_mode(global_var, mode) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


3504
# File 'lib/llvm/core_ffi.rb', line 3504

attach_function :set_thread_local_mode, :LLVMSetThreadLocalMode, [:pointer, :thread_local_mode], :void

.set_unnamed_addr(global, has_unnamed_addr) ⇒ nil

(Not documented)

Parameters:

  • global (FFI::Pointer(ValueRef))
  • has_unnamed_addr (Integer)

Returns:

  • (nil)


3335
# File 'lib/llvm/core_ffi.rb', line 3335

attach_function :set_unnamed_addr, :LLVMSetUnnamedAddr, [:pointer, :int], :void

.set_value_name(val, name) ⇒ nil

Set the string name of a value.

Parameters:

  • val (FFI::Pointer(ValueRef))
  • name (String)

Returns:

  • (nil)

See Also:

  • llvmllvm::Valuellvm::Value::setName()


1816
# File 'lib/llvm/core_ffi.rb', line 1816

attach_function :set_value_name, :LLVMSetValueName, [:pointer, :string], :void

.set_visibility(global, viz) ⇒ nil

(Not documented)

Parameters:

Returns:

  • (nil)


3301
# File 'lib/llvm/core_ffi.rb', line 3301

attach_function :set_visibility, :LLVMSetVisibility, [:pointer, :visibility], :void

.set_volatile(memory_access_inst, is_volatile) ⇒ nil

(Not documented)

Parameters:

  • memory_access_inst (FFI::Pointer(ValueRef))
  • is_volatile (Integer)

Returns:

  • (nil)


5066
# File 'lib/llvm/core_ffi.rb', line 5066

attach_function :set_volatile, :LLVMSetVolatile, [:pointer, :int], :void

.shutdownnil

Deallocate and destroy all ManagedStatic variables.

@see llvm::llvm_shutdown
@see ManagedStatic

Returns:

  • (nil)


836
# File 'lib/llvm/core_ffi.rb', line 836

attach_function :shutdown, :LLVMShutdown, [], :void

.size_of(ty) ⇒ FFI::Pointer(ValueRef)

(Not documented)

Parameters:

  • ty (FFI::Pointer(TypeRef))

Returns:

  • (FFI::Pointer(ValueRef))


2925
# File 'lib/llvm/core_ffi.rb', line 2925

attach_function :size_of, :LLVMSizeOf, [:pointer], :pointer

.size_of_type_in_bits(td, ty) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


231
# File 'lib/llvm/target_ffi.rb', line 231

attach_function :size_of_type_in_bits, :LLVMSizeOfTypeInBits, [OpaqueTargetData, :pointer], :ulong_long

.start_multithreadedInteger

Deprecated: Multi-threading can only be enabled/disabled with the compile

time define LLVM_ENABLE_THREADS.  This function always returns
LLVMIsMultithreaded().

Returns:

  • (Integer)


5656
# File 'lib/llvm/core_ffi.rb', line 5656

attach_function :start_multithreaded, :LLVMStartMultithreaded, [], :int

.stop_multithreadednil

Deprecated: Multi-threading can only be enabled/disabled with the compile

time define LLVM_ENABLE_THREADS.

Returns:

  • (nil)


5664
# File 'lib/llvm/core_ffi.rb', line 5664

attach_function :stop_multithreaded, :LLVMStopMultithreaded, [], :void

.store_size_of_type(td, ty) ⇒ Integer

(Not documented)

Parameters:

Returns:

  • (Integer)


240
# File 'lib/llvm/target_ffi.rb', line 240

attach_function :store_size_of_type, :LLVMStoreSizeOfType, [OpaqueTargetData, :pointer], :ulong_long

.struct_create_named(c, name) ⇒ FFI::Pointer(TypeRef)

Create an empty structure in a context having a specified name.

Parameters:

  • c (FFI::Pointer(ContextRef))
  • name (String)

Returns:

  • (FFI::Pointer(TypeRef))

See Also:

  • llvmllvm::StructTypellvm::StructType::create()


1588
# File 'lib/llvm/core_ffi.rb', line 1588

attach_function :struct_create_named, :LLVMStructCreateNamed, [:pointer, :string], :pointer

.struct_get_type_at_index(struct_ty, i) ⇒ FFI::Pointer(TypeRef)

Get the type of the element at a given index in the structure.

Parameters:

  • struct_ty (FFI::Pointer(TypeRef))
  • i (Integer)

Returns:

  • (FFI::Pointer(TypeRef))

See Also:

  • llvmllvm::StructTypellvm::StructType::getTypeAtIndex()


1648
# File 'lib/llvm/core_ffi.rb', line 1648

attach_function :struct_get_type_at_index, :LLVMStructGetTypeAtIndex, [:pointer, :uint], :pointer

.struct_set_body(struct_ty, element_types, element_count, packed) ⇒ nil

Set the contents of a structure type.

Parameters:

  • struct_ty (FFI::Pointer(TypeRef))
  • element_types (FFI::Pointer(*TypeRef))
  • element_count (Integer)
  • packed (Integer)

Returns:

  • (nil)

See Also:

  • llvmllvm::StructTypellvm::StructType::setBody()


1611
# File 'lib/llvm/core_ffi.rb', line 1611

attach_function :struct_set_body, :LLVMStructSetBody, [:pointer, :pointer, :uint, :int], :void

.struct_type(element_types, element_count, packed) ⇒ FFI::Pointer(TypeRef)

Create a new structure type in the global context.

Parameters:

  • element_types (FFI::Pointer(*TypeRef))
  • element_count (Integer)
  • packed (Integer)

Returns:

  • (FFI::Pointer(TypeRef))

See Also:

  • llvmllvm::StructTypellvm::StructType::create()


1577
# File 'lib/llvm/core_ffi.rb', line 1577

attach_function :struct_type, :LLVMStructType, [:pointer, :uint, :int], :pointer

.struct_type_in_context(c, element_types, element_count, packed) ⇒ FFI::Pointer(TypeRef)

Create a new structure type in a context.

A structure is specified by a list of inner elements/types and whether these can be packed together.

Parameters:

  • c (FFI::Pointer(ContextRef))
  • element_types (FFI::Pointer(*TypeRef))
  • element_count (Integer)
  • packed (Integer)

Returns:

  • (FFI::Pointer(TypeRef))

See Also:

  • llvmllvm::StructTypellvm::StructType::create()


1565
# File 'lib/llvm/core_ffi.rb', line 1565

attach_function :struct_type_in_context, :LLVMStructTypeInContext, [:pointer, :pointer, :uint, :int], :pointer

.target_has_asm_backend(t) ⇒ Integer

Returns if the target as an ASM backend (required for emitting output)

Parameters:

Returns:

  • (Integer)


505
# File 'lib/llvm/target_ffi.rb', line 505

attach_function :target_has_asm_backend, :LLVMTargetHasAsmBackend, [Target], :int

.target_has_jit(t) ⇒ Integer

Returns if the target has a JIT

Parameters:

Returns:

  • (Integer)


489
# File 'lib/llvm/target_ffi.rb', line 489

attach_function :target_has_jit, :LLVMTargetHasJIT, [Target], :int

.target_has_target_machine(t) ⇒ Integer

Returns if the target has a TargetMachine associated

Parameters:

Returns:

  • (Integer)


497
# File 'lib/llvm/target_ffi.rb', line 497

attach_function :target_has_target_machine, :LLVMTargetHasTargetMachine, [Target], :int

.target_machine_emit_to_file(t, m, filename, codegen, error_message) ⇒ Integer

Emits an asm or object file for the given module to the filename. This

wraps several c++ only classes (among them a file stream). Returns any
error in ErrorMessage. Use LLVMDisposeMessage to dispose the message.

Parameters:

Returns:

  • (Integer)


597
# File 'lib/llvm/target_ffi.rb', line 597

attach_function :target_machine_emit_to_file, :LLVMTargetMachineEmitToFile, [OpaqueTargetMachine, :pointer, :string, :code_gen_file_type, :pointer], :int

.target_machine_emit_to_memory_buffer(t, m, codegen, error_message, out_mem_buf) ⇒ Integer

Compile the LLVM IR stored in p M and store the result in p OutMemBuf.

Parameters:

Returns:

  • (Integer)


609
# File 'lib/llvm/target_ffi.rb', line 609

attach_function :target_machine_emit_to_memory_buffer, :LLVMTargetMachineEmitToMemoryBuffer, [OpaqueTargetMachine, :pointer, :code_gen_file_type, :pointer, :pointer], :int

.type_is_sized(ty) ⇒ Integer

Whether the type has a known size.

Things that don’t have a size are abstract types, labels, and void.a

Parameters:

  • ty (FFI::Pointer(TypeRef))

Returns:

  • (Integer)

See Also:

  • llvmllvm::Typellvm::Type::isSized()


1254
# File 'lib/llvm/core_ffi.rb', line 1254

attach_function :type_is_sized, :LLVMTypeIsSized, [:pointer], :int

.type_of(val) ⇒ FFI::Pointer(TypeRef)

Obtain the type of a value.

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(TypeRef))

See Also:

  • llvmllvm::Valuellvm::Value::getType()


1795
# File 'lib/llvm/core_ffi.rb', line 1795

attach_function :type_of, :LLVMTypeOf, [:pointer], :pointer

.value_as_basic_block(val) ⇒ FFI::Pointer(BasicBlockRef)

Convert an LLVMValueRef to an LLVMBasicBlockRef instance.

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (FFI::Pointer(BasicBlockRef))


3857
# File 'lib/llvm/core_ffi.rb', line 3857

attach_function :value_as_basic_block, :LLVMValueAsBasicBlock, [:pointer], :pointer

.value_is_basic_block(val) ⇒ Integer

Determine whether an LLVMValueRef is itself a basic block.

Parameters:

  • val (FFI::Pointer(ValueRef))

Returns:

  • (Integer)


3849
# File 'lib/llvm/core_ffi.rb', line 3849

attach_function :value_is_basic_block, :LLVMValueIsBasicBlock, [:pointer], :int

.vector_type(element_type, element_count) ⇒ FFI::Pointer(TypeRef)

Create a vector type that contains a defined type and has a specific number of elements.

The created type will exist in the context thats its element type exists in.

Parameters:

  • element_type (FFI::Pointer(TypeRef))
  • element_count (Integer)

Returns:

  • (FFI::Pointer(TypeRef))

See Also:

  • llvmllvm::VectorTypellvm::VectorType::get()


1727
# File 'lib/llvm/core_ffi.rb', line 1727

attach_function :vector_type, :LLVMVectorType, [:pointer, :uint], :pointer

.verify_function(fn, action) ⇒ Integer

Verifies that a single function is valid, taking the specified action. Useful

for debugging.

Parameters:

Returns:

  • (Integer)


59
# File 'lib/llvm/analysis_ffi.rb', line 59

attach_function :verify_function, :LLVMVerifyFunction, [:pointer, :verifier_failure_action], :int

.verify_module(m, action, out_message) ⇒ Integer

Verifies that a module is valid, taking the specified action if not.

Optionally returns a human-readable description of any invalid constructs.
OutMessage must be disposed with LLVMDisposeMessage.

Parameters:

Returns:

  • (Integer)


49
# File 'lib/llvm/analysis_ffi.rb', line 49

attach_function :verify_module, :LLVMVerifyModule, [:pointer, :verifier_failure_action, :pointer], :int

.view_function_cfg(fn) ⇒ nil

Open up a ghostview window that displays the CFG of the current function.

Useful for debugging.

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (nil)


68
# File 'lib/llvm/analysis_ffi.rb', line 68

attach_function :view_function_cfg, :LLVMViewFunctionCFG, [:pointer], :void

.view_function_cfg_only(fn) ⇒ nil

(Not documented)

Parameters:

  • fn (FFI::Pointer(ValueRef))

Returns:

  • (nil)


76
# File 'lib/llvm/analysis_ffi.rb', line 76

attach_function :view_function_cfg_only, :LLVMViewFunctionCFGOnly, [:pointer], :void

.void_typeFFI::Pointer(TypeRef)

These are similar to the above functions except they operate on the global context.

Returns:

  • (FFI::Pointer(TypeRef))


1771
# File 'lib/llvm/core_ffi.rb', line 1771

attach_function :void_type, :LLVMVoidType, [], :pointer

.void_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

Create a void type in a context.

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1747
# File 'lib/llvm/core_ffi.rb', line 1747

attach_function :void_type_in_context, :LLVMVoidTypeInContext, [:pointer], :pointer

.write_bitcode_to_fd(m, fd, should_close, unbuffered) ⇒ Integer

Writes a module to an open file descriptor. Returns 0 on success.

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • fd (Integer)
  • should_close (Integer)
  • unbuffered (Integer)

Returns:

  • (Integer)


113
# File 'lib/llvm/core/bitcode_ffi.rb', line 113

attach_function :write_bitcode_to_fd, :LLVMWriteBitcodeToFD, [:pointer, :int, :int, :int], :int

.write_bitcode_to_file(m, path) ⇒ Integer

Writes a module to the specified path. Returns 0 on success.

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • path (String)

Returns:

  • (Integer)


102
# File 'lib/llvm/core/bitcode_ffi.rb', line 102

attach_function :write_bitcode_to_file, :LLVMWriteBitcodeToFile, [:pointer, :string], :int

.write_bitcode_to_file_handle(m, handle) ⇒ Integer

Deprecated for LLVMWriteBitcodeToFD. Writes a module to an open file

descriptor. Returns 0 on success. Closes the Handle.

Parameters:

  • m (FFI::Pointer(ModuleRef))
  • handle (Integer)

Returns:

  • (Integer)


123
# File 'lib/llvm/core/bitcode_ffi.rb', line 123

attach_function :write_bitcode_to_file_handle, :LLVMWriteBitcodeToFileHandle, [:pointer, :int], :int

.write_bitcode_to_memory_buffer(m) ⇒ FFI::Pointer(MemoryBufferRef)

Writes a module to a new memory buffer and returns it.

Parameters:

  • m (FFI::Pointer(ModuleRef))

Returns:

  • (FFI::Pointer(MemoryBufferRef))


131
# File 'lib/llvm/core/bitcode_ffi.rb', line 131

attach_function :write_bitcode_to_memory_buffer, :LLVMWriteBitcodeToMemoryBuffer, [:pointer], :pointer

.x86amx_typeFFI::Pointer(TypeRef)

(Not documented)

Returns:

  • (FFI::Pointer(TypeRef))


106
# File 'lib/llvm/core.rb', line 106

attach_function :x86amx_type, :LLVMX86AMXType, [], :pointer

.x86fp80_typeFFI::Pointer(TypeRef)

(Not documented)

Returns:

  • (FFI::Pointer(TypeRef))


1480
# File 'lib/llvm/core_ffi.rb', line 1480

attach_function :x86fp80_type, :LLVMX86FP80Type, [], :pointer

.x86fp80_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

Obtain a 80-bit floating point type (X87) from a context.

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1433
# File 'lib/llvm/core_ffi.rb', line 1433

attach_function :x86fp80_type_in_context, :LLVMX86FP80TypeInContext, [:pointer], :pointer

.x86mmx_typeFFI::Pointer(TypeRef)

(Not documented)

Returns:

  • (FFI::Pointer(TypeRef))


1785
# File 'lib/llvm/core_ffi.rb', line 1785

attach_function :x86mmx_type, :LLVMX86MMXType, [], :pointer

.x86mmx_type_in_context(c) ⇒ FFI::Pointer(TypeRef)

Create a X86 MMX type in a context.

Parameters:

  • c (FFI::Pointer(ContextRef))

Returns:

  • (FFI::Pointer(TypeRef))


1763
# File 'lib/llvm/core_ffi.rb', line 1763

attach_function :x86mmx_type_in_context, :LLVMX86MMXTypeInContext, [:pointer], :pointer