• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|*                                                                            *|
3|* Intrinsic Function Source Fragment                                         *|
4|*                                                                            *|
5|* Automatically generated file, do not edit!                                 *|
6|*                                                                            *|
7\*===----------------------------------------------------------------------===*/
8
9#ifdef GET_INTRINSIC_ENUM_VALUES
10// Enum values for intrinsics
11    abs = 1,                                       // llvm.abs
12    addressofreturnaddress,                    // llvm.addressofreturnaddress
13    adjust_trampoline,                         // llvm.adjust.trampoline
14    annotation,                                // llvm.annotation
15    arithmetic_fence,                          // llvm.arithmetic.fence
16    asan_check_memaccess,                      // llvm.asan.check.memaccess
17    assume,                                    // llvm.assume
18    bitreverse,                                // llvm.bitreverse
19    bswap,                                     // llvm.bswap
20    call_preallocated_arg,                     // llvm.call.preallocated.arg
21    call_preallocated_setup,                   // llvm.call.preallocated.setup
22    call_preallocated_teardown,                // llvm.call.preallocated.teardown
23    callbr_landingpad,                         // llvm.callbr.landingpad
24    canonicalize,                              // llvm.canonicalize
25    ceil,                                      // llvm.ceil
26    clear_cache,                               // llvm.clear_cache
27    codeview_annotation,                       // llvm.codeview.annotation
28    convert_from_fp16,                         // llvm.convert.from.fp16
29    convert_to_fp16,                           // llvm.convert.to.fp16
30    copysign,                                  // llvm.copysign
31    coro_align,                                // llvm.coro.align
32    coro_alloc,                                // llvm.coro.alloc
33    coro_alloca_alloc,                         // llvm.coro.alloca.alloc
34    coro_alloca_free,                          // llvm.coro.alloca.free
35    coro_alloca_get,                           // llvm.coro.alloca.get
36    coro_async_context_alloc,                  // llvm.coro.async.context.alloc
37    coro_async_context_dealloc,                // llvm.coro.async.context.dealloc
38    coro_async_resume,                         // llvm.coro.async.resume
39    coro_async_size_replace,                   // llvm.coro.async.size.replace
40    coro_await_suspend_bool,                   // llvm.coro.await.suspend.bool
41    coro_await_suspend_handle,                 // llvm.coro.await.suspend.handle
42    coro_await_suspend_void,                   // llvm.coro.await.suspend.void
43    coro_begin,                                // llvm.coro.begin
44    coro_destroy,                              // llvm.coro.destroy
45    coro_done,                                 // llvm.coro.done
46    coro_end,                                  // llvm.coro.end
47    coro_end_async,                            // llvm.coro.end.async
48    coro_end_results,                          // llvm.coro.end.results
49    coro_frame,                                // llvm.coro.frame
50    coro_free,                                 // llvm.coro.free
51    coro_id,                                   // llvm.coro.id
52    coro_id_async,                             // llvm.coro.id.async
53    coro_id_retcon,                            // llvm.coro.id.retcon
54    coro_id_retcon_once,                       // llvm.coro.id.retcon.once
55    coro_noop,                                 // llvm.coro.noop
56    coro_prepare_async,                        // llvm.coro.prepare.async
57    coro_prepare_retcon,                       // llvm.coro.prepare.retcon
58    coro_promise,                              // llvm.coro.promise
59    coro_resume,                               // llvm.coro.resume
60    coro_save,                                 // llvm.coro.save
61    coro_size,                                 // llvm.coro.size
62    coro_subfn_addr,                           // llvm.coro.subfn.addr
63    coro_suspend,                              // llvm.coro.suspend
64    coro_suspend_async,                        // llvm.coro.suspend.async
65    coro_suspend_retcon,                       // llvm.coro.suspend.retcon
66    cos,                                       // llvm.cos
67    ctlz,                                      // llvm.ctlz
68    ctpop,                                     // llvm.ctpop
69    cttz,                                      // llvm.cttz
70    dbg_assign,                                // llvm.dbg.assign
71    dbg_declare,                               // llvm.dbg.declare
72    dbg_label,                                 // llvm.dbg.label
73    dbg_value,                                 // llvm.dbg.value
74    debugtrap,                                 // llvm.debugtrap
75    donothing,                                 // llvm.donothing
76    eh_dwarf_cfa,                              // llvm.eh.dwarf.cfa
77    eh_exceptioncode,                          // llvm.eh.exceptioncode
78    eh_exceptionpointer,                       // llvm.eh.exceptionpointer
79    eh_recoverfp,                              // llvm.eh.recoverfp
80    eh_return_i32,                             // llvm.eh.return.i32
81    eh_return_i64,                             // llvm.eh.return.i64
82    eh_sjlj_callsite,                          // llvm.eh.sjlj.callsite
83    eh_sjlj_functioncontext,                   // llvm.eh.sjlj.functioncontext
84    eh_sjlj_longjmp,                           // llvm.eh.sjlj.longjmp
85    eh_sjlj_lsda,                              // llvm.eh.sjlj.lsda
86    eh_sjlj_setjmp,                            // llvm.eh.sjlj.setjmp
87    eh_sjlj_setup_dispatch,                    // llvm.eh.sjlj.setup.dispatch
88    eh_typeid_for,                             // llvm.eh.typeid.for
89    eh_unwind_init,                            // llvm.eh.unwind.init
90    exp,                                       // llvm.exp
91    exp10,                                     // llvm.exp10
92    exp2,                                      // llvm.exp2
93    expect,                                    // llvm.expect
94    expect_with_probability,                   // llvm.expect.with.probability
95    experimental_constrained_ceil,             // llvm.experimental.constrained.ceil
96    experimental_constrained_cos,              // llvm.experimental.constrained.cos
97    experimental_constrained_exp,              // llvm.experimental.constrained.exp
98    experimental_constrained_exp2,             // llvm.experimental.constrained.exp2
99    experimental_constrained_fadd,             // llvm.experimental.constrained.fadd
100    experimental_constrained_fcmp,             // llvm.experimental.constrained.fcmp
101    experimental_constrained_fcmps,            // llvm.experimental.constrained.fcmps
102    experimental_constrained_fdiv,             // llvm.experimental.constrained.fdiv
103    experimental_constrained_floor,            // llvm.experimental.constrained.floor
104    experimental_constrained_fma,              // llvm.experimental.constrained.fma
105    experimental_constrained_fmul,             // llvm.experimental.constrained.fmul
106    experimental_constrained_fmuladd,          // llvm.experimental.constrained.fmuladd
107    experimental_constrained_fpext,            // llvm.experimental.constrained.fpext
108    experimental_constrained_fptosi,           // llvm.experimental.constrained.fptosi
109    experimental_constrained_fptoui,           // llvm.experimental.constrained.fptoui
110    experimental_constrained_fptrunc,          // llvm.experimental.constrained.fptrunc
111    experimental_constrained_frem,             // llvm.experimental.constrained.frem
112    experimental_constrained_fsub,             // llvm.experimental.constrained.fsub
113    experimental_constrained_ldexp,            // llvm.experimental.constrained.ldexp
114    experimental_constrained_llrint,           // llvm.experimental.constrained.llrint
115    experimental_constrained_llround,          // llvm.experimental.constrained.llround
116    experimental_constrained_log,              // llvm.experimental.constrained.log
117    experimental_constrained_log10,            // llvm.experimental.constrained.log10
118    experimental_constrained_log2,             // llvm.experimental.constrained.log2
119    experimental_constrained_lrint,            // llvm.experimental.constrained.lrint
120    experimental_constrained_lround,           // llvm.experimental.constrained.lround
121    experimental_constrained_maximum,          // llvm.experimental.constrained.maximum
122    experimental_constrained_maxnum,           // llvm.experimental.constrained.maxnum
123    experimental_constrained_minimum,          // llvm.experimental.constrained.minimum
124    experimental_constrained_minnum,           // llvm.experimental.constrained.minnum
125    experimental_constrained_nearbyint,        // llvm.experimental.constrained.nearbyint
126    experimental_constrained_pow,              // llvm.experimental.constrained.pow
127    experimental_constrained_powi,             // llvm.experimental.constrained.powi
128    experimental_constrained_rint,             // llvm.experimental.constrained.rint
129    experimental_constrained_round,            // llvm.experimental.constrained.round
130    experimental_constrained_roundeven,        // llvm.experimental.constrained.roundeven
131    experimental_constrained_sin,              // llvm.experimental.constrained.sin
132    experimental_constrained_sitofp,           // llvm.experimental.constrained.sitofp
133    experimental_constrained_sqrt,             // llvm.experimental.constrained.sqrt
134    experimental_constrained_trunc,            // llvm.experimental.constrained.trunc
135    experimental_constrained_uitofp,           // llvm.experimental.constrained.uitofp
136    experimental_convergence_anchor,           // llvm.experimental.convergence.anchor
137    experimental_convergence_entry,            // llvm.experimental.convergence.entry
138    experimental_convergence_loop,             // llvm.experimental.convergence.loop
139    experimental_cttz_elts,                    // llvm.experimental.cttz.elts
140    experimental_deoptimize,                   // llvm.experimental.deoptimize
141    experimental_gc_get_pointer_base,          // llvm.experimental.gc.get.pointer.base
142    experimental_gc_get_pointer_offset,        // llvm.experimental.gc.get.pointer.offset
143    experimental_gc_relocate,                  // llvm.experimental.gc.relocate
144    experimental_gc_result,                    // llvm.experimental.gc.result
145    experimental_gc_statepoint,                // llvm.experimental.gc.statepoint
146    experimental_get_vector_length,            // llvm.experimental.get.vector.length
147    experimental_guard,                        // llvm.experimental.guard
148    experimental_noalias_scope_decl,           // llvm.experimental.noalias.scope.decl
149    experimental_patchpoint_i64,               // llvm.experimental.patchpoint.i64
150    experimental_patchpoint_void,              // llvm.experimental.patchpoint.void
151    experimental_stackmap,                     // llvm.experimental.stackmap
152    experimental_stepvector,                   // llvm.experimental.stepvector
153    experimental_vector_deinterleave2,         // llvm.experimental.vector.deinterleave2
154    experimental_vector_interleave2,           // llvm.experimental.vector.interleave2
155    experimental_vector_reverse,               // llvm.experimental.vector.reverse
156    experimental_vector_splice,                // llvm.experimental.vector.splice
157    experimental_vp_reverse,                   // llvm.experimental.vp.reverse
158    experimental_vp_splice,                    // llvm.experimental.vp.splice
159    experimental_vp_strided_load,              // llvm.experimental.vp.strided.load
160    experimental_vp_strided_store,             // llvm.experimental.vp.strided.store
161    experimental_widenable_condition,          // llvm.experimental.widenable.condition
162    fabs,                                      // llvm.fabs
163    floor,                                     // llvm.floor
164    fma,                                       // llvm.fma
165    fmuladd,                                   // llvm.fmuladd
166    fptosi_sat,                                // llvm.fptosi.sat
167    fptoui_sat,                                // llvm.fptoui.sat
168    fptrunc_round,                             // llvm.fptrunc.round
169    frameaddress,                              // llvm.frameaddress
170    frexp,                                     // llvm.frexp
171    fshl,                                      // llvm.fshl
172    fshr,                                      // llvm.fshr
173    gcread,                                    // llvm.gcread
174    gcroot,                                    // llvm.gcroot
175    gcwrite,                                   // llvm.gcwrite
176    get_active_lane_mask,                      // llvm.get.active.lane.mask
177    get_dynamic_area_offset,                   // llvm.get.dynamic.area.offset
178    get_fpenv,                                 // llvm.get.fpenv
179    get_fpmode,                                // llvm.get.fpmode
180    get_rounding,                              // llvm.get.rounding
181    hwasan_check_memaccess,                    // llvm.hwasan.check.memaccess
182    hwasan_check_memaccess_shortgranules,      // llvm.hwasan.check.memaccess.shortgranules
183    icall_branch_funnel,                       // llvm.icall.branch.funnel
184    init_trampoline,                           // llvm.init.trampoline
185    instrprof_cover,                           // llvm.instrprof.cover
186    instrprof_increment,                       // llvm.instrprof.increment
187    instrprof_increment_step,                  // llvm.instrprof.increment.step
188    instrprof_mcdc_condbitmap_update,          // llvm.instrprof.mcdc.condbitmap.update
189    instrprof_mcdc_parameters,                 // llvm.instrprof.mcdc.parameters
190    instrprof_mcdc_tvbitmap_update,            // llvm.instrprof.mcdc.tvbitmap.update
191    instrprof_timestamp,                       // llvm.instrprof.timestamp
192    instrprof_value_profile,                   // llvm.instrprof.value.profile
193    invariant_end,                             // llvm.invariant.end
194    invariant_start,                           // llvm.invariant.start
195    is_constant,                               // llvm.is.constant
196    is_fpclass,                                // llvm.is.fpclass
197    launder_invariant_group,                   // llvm.launder.invariant.group
198    ldexp,                                     // llvm.ldexp
199    lifetime_end,                              // llvm.lifetime.end
200    lifetime_start,                            // llvm.lifetime.start
201    llrint,                                    // llvm.llrint
202    llround,                                   // llvm.llround
203    load_relative,                             // llvm.load.relative
204    localaddress,                              // llvm.localaddress
205    localescape,                               // llvm.localescape
206    localrecover,                              // llvm.localrecover
207    log,                                       // llvm.log
208    log10,                                     // llvm.log10
209    log2,                                      // llvm.log2
210    loop_decrement,                            // llvm.loop.decrement
211    loop_decrement_reg,                        // llvm.loop.decrement.reg
212    lrint,                                     // llvm.lrint
213    lround,                                    // llvm.lround
214    masked_compressstore,                      // llvm.masked.compressstore
215    masked_expandload,                         // llvm.masked.expandload
216    masked_gather,                             // llvm.masked.gather
217    masked_load,                               // llvm.masked.load
218    masked_scatter,                            // llvm.masked.scatter
219    masked_store,                              // llvm.masked.store
220    matrix_column_major_load,                  // llvm.matrix.column.major.load
221    matrix_column_major_store,                 // llvm.matrix.column.major.store
222    matrix_multiply,                           // llvm.matrix.multiply
223    matrix_transpose,                          // llvm.matrix.transpose
224    maximum,                                   // llvm.maximum
225    maxnum,                                    // llvm.maxnum
226    memcpy,                                    // llvm.memcpy
227    memcpy_element_unordered_atomic,           // llvm.memcpy.element.unordered.atomic
228    memcpy_inline,                             // llvm.memcpy.inline
229    memmove,                                   // llvm.memmove
230    memmove_element_unordered_atomic,          // llvm.memmove.element.unordered.atomic
231    memset,                                    // llvm.memset
232    memset_element_unordered_atomic,           // llvm.memset.element.unordered.atomic
233    memset_inline,                             // llvm.memset.inline
234    minimum,                                   // llvm.minimum
235    minnum,                                    // llvm.minnum
236    nearbyint,                                 // llvm.nearbyint
237    objc_arc_annotation_bottomup_bbend,        // llvm.objc.arc.annotation.bottomup.bbend
238    objc_arc_annotation_bottomup_bbstart,      // llvm.objc.arc.annotation.bottomup.bbstart
239    objc_arc_annotation_topdown_bbend,         // llvm.objc.arc.annotation.topdown.bbend
240    objc_arc_annotation_topdown_bbstart,       // llvm.objc.arc.annotation.topdown.bbstart
241    objc_autorelease,                          // llvm.objc.autorelease
242    objc_autoreleasePoolPop,                   // llvm.objc.autoreleasePoolPop
243    objc_autoreleasePoolPush,                  // llvm.objc.autoreleasePoolPush
244    objc_autoreleaseReturnValue,               // llvm.objc.autoreleaseReturnValue
245    objc_clang_arc_noop_use,                   // llvm.objc.clang.arc.noop.use
246    objc_clang_arc_use,                        // llvm.objc.clang.arc.use
247    objc_copyWeak,                             // llvm.objc.copyWeak
248    objc_destroyWeak,                          // llvm.objc.destroyWeak
249    objc_initWeak,                             // llvm.objc.initWeak
250    objc_loadWeak,                             // llvm.objc.loadWeak
251    objc_loadWeakRetained,                     // llvm.objc.loadWeakRetained
252    objc_moveWeak,                             // llvm.objc.moveWeak
253    objc_release,                              // llvm.objc.release
254    objc_retain,                               // llvm.objc.retain
255    objc_retain_autorelease,                   // llvm.objc.retain.autorelease
256    objc_retainAutorelease,                    // llvm.objc.retainAutorelease
257    objc_retainAutoreleaseReturnValue,         // llvm.objc.retainAutoreleaseReturnValue
258    objc_retainAutoreleasedReturnValue,        // llvm.objc.retainAutoreleasedReturnValue
259    objc_retainBlock,                          // llvm.objc.retainBlock
260    objc_retainedObject,                       // llvm.objc.retainedObject
261    objc_storeStrong,                          // llvm.objc.storeStrong
262    objc_storeWeak,                            // llvm.objc.storeWeak
263    objc_sync_enter,                           // llvm.objc.sync.enter
264    objc_sync_exit,                            // llvm.objc.sync.exit
265    objc_unretainedObject,                     // llvm.objc.unretainedObject
266    objc_unretainedPointer,                    // llvm.objc.unretainedPointer
267    objc_unsafeClaimAutoreleasedReturnValue,   // llvm.objc.unsafeClaimAutoreleasedReturnValue
268    objectsize,                                // llvm.objectsize
269    pcmarker,                                  // llvm.pcmarker
270    pow,                                       // llvm.pow
271    powi,                                      // llvm.powi
272    prefetch,                                  // llvm.prefetch
273    preserve_array_access_index,               // llvm.preserve.array.access.index
274    preserve_static_offset,                    // llvm.preserve.static.offset
275    preserve_struct_access_index,              // llvm.preserve.struct.access.index
276    preserve_union_access_index,               // llvm.preserve.union.access.index
277    pseudoprobe,                               // llvm.pseudoprobe
278    ptr_annotation,                            // llvm.ptr.annotation
279    ptrauth_auth,                              // llvm.ptrauth.auth
280    ptrauth_blend,                             // llvm.ptrauth.blend
281    ptrauth_resign,                            // llvm.ptrauth.resign
282    ptrauth_sign,                              // llvm.ptrauth.sign
283    ptrauth_sign_generic,                      // llvm.ptrauth.sign.generic
284    ptrauth_strip,                             // llvm.ptrauth.strip
285    ptrmask,                                   // llvm.ptrmask
286    public_type_test,                          // llvm.public.type.test
287    read_register,                             // llvm.read_register
288    read_volatile_register,                    // llvm.read_volatile_register
289    readcyclecounter,                          // llvm.readcyclecounter
290    readsteadycounter,                         // llvm.readsteadycounter
291    reset_fpenv,                               // llvm.reset.fpenv
292    reset_fpmode,                              // llvm.reset.fpmode
293    returnaddress,                             // llvm.returnaddress
294    rint,                                      // llvm.rint
295    round,                                     // llvm.round
296    roundeven,                                 // llvm.roundeven
297    sadd_sat,                                  // llvm.sadd.sat
298    sadd_with_overflow,                        // llvm.sadd.with.overflow
299    sdiv_fix,                                  // llvm.sdiv.fix
300    sdiv_fix_sat,                              // llvm.sdiv.fix.sat
301    seh_scope_begin,                           // llvm.seh.scope.begin
302    seh_scope_end,                             // llvm.seh.scope.end
303    seh_try_begin,                             // llvm.seh.try.begin
304    seh_try_end,                               // llvm.seh.try.end
305    set_fpenv,                                 // llvm.set.fpenv
306    set_fpmode,                                // llvm.set.fpmode
307    set_loop_iterations,                       // llvm.set.loop.iterations
308    set_rounding,                              // llvm.set.rounding
309    sideeffect,                                // llvm.sideeffect
310    sin,                                       // llvm.sin
311    smax,                                      // llvm.smax
312    smin,                                      // llvm.smin
313    smul_fix,                                  // llvm.smul.fix
314    smul_fix_sat,                              // llvm.smul.fix.sat
315    smul_with_overflow,                        // llvm.smul.with.overflow
316    sponentry,                                 // llvm.sponentry
317    sqrt,                                      // llvm.sqrt
318    ssa_copy,                                  // llvm.ssa.copy
319    sshl_sat,                                  // llvm.sshl.sat
320    ssub_sat,                                  // llvm.ssub.sat
321    ssub_with_overflow,                        // llvm.ssub.with.overflow
322    stackguard,                                // llvm.stackguard
323    stackprotector,                            // llvm.stackprotector
324    stackrestore,                              // llvm.stackrestore
325    stacksave,                                 // llvm.stacksave
326    start_loop_iterations,                     // llvm.start.loop.iterations
327    strip_invariant_group,                     // llvm.strip.invariant.group
328    swift_async_context_addr,                  // llvm.swift.async.context.addr
329    test_set_loop_iterations,                  // llvm.test.set.loop.iterations
330    test_start_loop_iterations,                // llvm.test.start.loop.iterations
331    thread_pointer,                            // llvm.thread.pointer
332    threadlocal_address,                       // llvm.threadlocal.address
333    trap,                                      // llvm.trap
334    trunc,                                     // llvm.trunc
335    type_checked_load,                         // llvm.type.checked.load
336    type_checked_load_relative,                // llvm.type.checked.load.relative
337    type_test,                                 // llvm.type.test
338    uadd_sat,                                  // llvm.uadd.sat
339    uadd_with_overflow,                        // llvm.uadd.with.overflow
340    ubsantrap,                                 // llvm.ubsantrap
341    udiv_fix,                                  // llvm.udiv.fix
342    udiv_fix_sat,                              // llvm.udiv.fix.sat
343    umax,                                      // llvm.umax
344    umin,                                      // llvm.umin
345    umul_fix,                                  // llvm.umul.fix
346    umul_fix_sat,                              // llvm.umul.fix.sat
347    umul_with_overflow,                        // llvm.umul.with.overflow
348    ushl_sat,                                  // llvm.ushl.sat
349    usub_sat,                                  // llvm.usub.sat
350    usub_with_overflow,                        // llvm.usub.with.overflow
351    vacopy,                                    // llvm.va_copy
352    vaend,                                     // llvm.va_end
353    vastart,                                   // llvm.va_start
354    var_annotation,                            // llvm.var.annotation
355    vector_extract,                            // llvm.vector.extract
356    vector_insert,                             // llvm.vector.insert
357    vector_reduce_add,                         // llvm.vector.reduce.add
358    vector_reduce_and,                         // llvm.vector.reduce.and
359    vector_reduce_fadd,                        // llvm.vector.reduce.fadd
360    vector_reduce_fmax,                        // llvm.vector.reduce.fmax
361    vector_reduce_fmaximum,                    // llvm.vector.reduce.fmaximum
362    vector_reduce_fmin,                        // llvm.vector.reduce.fmin
363    vector_reduce_fminimum,                    // llvm.vector.reduce.fminimum
364    vector_reduce_fmul,                        // llvm.vector.reduce.fmul
365    vector_reduce_mul,                         // llvm.vector.reduce.mul
366    vector_reduce_or,                          // llvm.vector.reduce.or
367    vector_reduce_smax,                        // llvm.vector.reduce.smax
368    vector_reduce_smin,                        // llvm.vector.reduce.smin
369    vector_reduce_umax,                        // llvm.vector.reduce.umax
370    vector_reduce_umin,                        // llvm.vector.reduce.umin
371    vector_reduce_xor,                         // llvm.vector.reduce.xor
372    vp_abs,                                    // llvm.vp.abs
373    vp_add,                                    // llvm.vp.add
374    vp_and,                                    // llvm.vp.and
375    vp_ashr,                                   // llvm.vp.ashr
376    vp_bitreverse,                             // llvm.vp.bitreverse
377    vp_bswap,                                  // llvm.vp.bswap
378    vp_ceil,                                   // llvm.vp.ceil
379    vp_copysign,                               // llvm.vp.copysign
380    vp_ctlz,                                   // llvm.vp.ctlz
381    vp_ctpop,                                  // llvm.vp.ctpop
382    vp_cttz,                                   // llvm.vp.cttz
383    vp_fabs,                                   // llvm.vp.fabs
384    vp_fadd,                                   // llvm.vp.fadd
385    vp_fcmp,                                   // llvm.vp.fcmp
386    vp_fdiv,                                   // llvm.vp.fdiv
387    vp_floor,                                  // llvm.vp.floor
388    vp_fma,                                    // llvm.vp.fma
389    vp_fmul,                                   // llvm.vp.fmul
390    vp_fmuladd,                                // llvm.vp.fmuladd
391    vp_fneg,                                   // llvm.vp.fneg
392    vp_fpext,                                  // llvm.vp.fpext
393    vp_fptosi,                                 // llvm.vp.fptosi
394    vp_fptoui,                                 // llvm.vp.fptoui
395    vp_fptrunc,                                // llvm.vp.fptrunc
396    vp_frem,                                   // llvm.vp.frem
397    vp_fshl,                                   // llvm.vp.fshl
398    vp_fshr,                                   // llvm.vp.fshr
399    vp_fsub,                                   // llvm.vp.fsub
400    vp_gather,                                 // llvm.vp.gather
401    vp_icmp,                                   // llvm.vp.icmp
402    vp_inttoptr,                               // llvm.vp.inttoptr
403    vp_is_fpclass,                             // llvm.vp.is.fpclass
404    vp_llrint,                                 // llvm.vp.llrint
405    vp_load,                                   // llvm.vp.load
406    vp_lrint,                                  // llvm.vp.lrint
407    vp_lshr,                                   // llvm.vp.lshr
408    vp_maximum,                                // llvm.vp.maximum
409    vp_maxnum,                                 // llvm.vp.maxnum
410    vp_merge,                                  // llvm.vp.merge
411    vp_minimum,                                // llvm.vp.minimum
412    vp_minnum,                                 // llvm.vp.minnum
413    vp_mul,                                    // llvm.vp.mul
414    vp_nearbyint,                              // llvm.vp.nearbyint
415    vp_or,                                     // llvm.vp.or
416    vp_ptrtoint,                               // llvm.vp.ptrtoint
417    vp_reduce_add,                             // llvm.vp.reduce.add
418    vp_reduce_and,                             // llvm.vp.reduce.and
419    vp_reduce_fadd,                            // llvm.vp.reduce.fadd
420    vp_reduce_fmax,                            // llvm.vp.reduce.fmax
421    vp_reduce_fmin,                            // llvm.vp.reduce.fmin
422    vp_reduce_fmul,                            // llvm.vp.reduce.fmul
423    vp_reduce_mul,                             // llvm.vp.reduce.mul
424    vp_reduce_or,                              // llvm.vp.reduce.or
425    vp_reduce_smax,                            // llvm.vp.reduce.smax
426    vp_reduce_smin,                            // llvm.vp.reduce.smin
427    vp_reduce_umax,                            // llvm.vp.reduce.umax
428    vp_reduce_umin,                            // llvm.vp.reduce.umin
429    vp_reduce_xor,                             // llvm.vp.reduce.xor
430    vp_rint,                                   // llvm.vp.rint
431    vp_round,                                  // llvm.vp.round
432    vp_roundeven,                              // llvm.vp.roundeven
433    vp_roundtozero,                            // llvm.vp.roundtozero
434    vp_sadd_sat,                               // llvm.vp.sadd.sat
435    vp_scatter,                                // llvm.vp.scatter
436    vp_sdiv,                                   // llvm.vp.sdiv
437    vp_select,                                 // llvm.vp.select
438    vp_sext,                                   // llvm.vp.sext
439    vp_shl,                                    // llvm.vp.shl
440    vp_sitofp,                                 // llvm.vp.sitofp
441    vp_smax,                                   // llvm.vp.smax
442    vp_smin,                                   // llvm.vp.smin
443    vp_sqrt,                                   // llvm.vp.sqrt
444    vp_srem,                                   // llvm.vp.srem
445    vp_ssub_sat,                               // llvm.vp.ssub.sat
446    vp_store,                                  // llvm.vp.store
447    vp_sub,                                    // llvm.vp.sub
448    vp_trunc,                                  // llvm.vp.trunc
449    vp_uadd_sat,                               // llvm.vp.uadd.sat
450    vp_udiv,                                   // llvm.vp.udiv
451    vp_uitofp,                                 // llvm.vp.uitofp
452    vp_umax,                                   // llvm.vp.umax
453    vp_umin,                                   // llvm.vp.umin
454    vp_urem,                                   // llvm.vp.urem
455    vp_usub_sat,                               // llvm.vp.usub.sat
456    vp_xor,                                    // llvm.vp.xor
457    vp_zext,                                   // llvm.vp.zext
458    vscale,                                    // llvm.vscale
459    write_register,                            // llvm.write_register
460    xray_customevent,                          // llvm.xray.customevent
461    xray_typedevent,                           // llvm.xray.typedevent
462    num_intrinsics = 13645
463#endif
464
465// llvm::Intrinsic::IITDescriptor::ArgKind
466#ifdef GET_INTRINSIC_ARGKIND
467    AK_Any = 0,
468    AK_AnyInteger = 1,
469    AK_AnyFloat = 2,
470    AK_AnyVector = 3,
471    AK_AnyPointer = 4,
472    AK_MatchType = 7,
473#endif
474
475