@zigc/lib 0.17.0-dev.27 → 0.17.0-dev.296
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/c/fcntl.zig +6 -1
- package/c/inttypes.zig +0 -10
- package/c/math.zig +52 -112
- package/c/pthread.zig +57 -0
- package/c/search.zig +1 -27
- package/c/stdlib/drand48.zig +0 -57
- package/c/stdlib.zig +31 -121
- package/c/string.zig +20 -7
- package/c/strings.zig +0 -38
- package/c/unistd.zig +27 -26
- package/c/wchar.zig +10 -0
- package/c.zig +2 -2
- package/compiler/aro/aro/CodeGen.zig +7 -8
- package/compiler/aro/aro/Compilation.zig +17 -17
- package/compiler/aro/aro/Driver.zig +14 -13
- package/compiler/aro/aro/Parser.zig +20 -15
- package/compiler/aro/aro/Pragma.zig +3 -2
- package/compiler/aro/aro/Preprocessor.zig +9 -6
- package/compiler/aro/aro/pragmas/message.zig +3 -2
- package/compiler/aro/aro/text_literal.zig +3 -2
- package/compiler/aro/assembly_backend/x86_64.zig +4 -4
- package/compiler/build_runner.zig +2 -4
- package/compiler/reduce/Walk.zig +8 -13
- package/compiler/resinator/compile.zig +1 -1
- package/compiler/resinator/cvtres.zig +4 -4
- package/compiler/resinator/errors.zig +7 -7
- package/compiler/resinator/ico.zig +4 -4
- package/compiler/resinator/parse.zig +2 -2
- package/compiler/resinator/res.zig +1 -1
- package/compiler/std-docs.zig +1 -1
- package/compiler/test_runner.zig +1 -1
- package/compiler/translate-c/MacroTranslator.zig +1 -1
- package/compiler/translate-c/Translator.zig +6 -2
- package/compiler/translate-c/ast.zig +16 -23
- package/compiler/translate-c/main.zig +1 -1
- package/compiler_rt/addf3.zig +1 -1
- package/compiler_rt/arm.zig +3 -3
- package/compiler_rt/atomics.zig +1 -1
- package/compiler_rt/comparef.zig +3 -3
- package/compiler_rt/cos.zig +1 -3
- package/compiler_rt/count0bits.zig +1 -1
- package/compiler_rt/divdf3.zig +2 -2
- package/compiler_rt/divsf3.zig +1 -1
- package/compiler_rt/divtf3.zig +1 -1
- package/compiler_rt/divxf3.zig +1 -1
- package/compiler_rt/exp.zig +0 -2
- package/compiler_rt/exp2.zig +0 -2
- package/compiler_rt/extendf.zig +5 -5
- package/compiler_rt/fabs.zig +1 -3
- package/compiler_rt/float_from_int.zig +3 -4
- package/compiler_rt/fma.zig +0 -2
- package/compiler_rt/fmax.zig +1 -3
- package/compiler_rt/fmin.zig +1 -3
- package/compiler_rt/fmod.zig +2 -4
- package/compiler_rt/limb64.zig +3 -2
- package/compiler_rt/log.zig +0 -2
- package/compiler_rt/log10.zig +0 -2
- package/compiler_rt/log2.zig +0 -2
- package/compiler_rt/mulf3.zig +2 -2
- package/compiler_rt/rem_pio2l.zig +1 -1
- package/compiler_rt/round.zig +0 -2
- package/compiler_rt/sin.zig +1 -3
- package/compiler_rt/sincos.zig +1 -3
- package/compiler_rt/sqrt.zig +0 -2
- package/compiler_rt/ssp.zig +2 -2
- package/compiler_rt/tan.zig +1 -3
- package/compiler_rt/trunc.zig +0 -2
- package/compiler_rt/truncf.zig +3 -3
- package/compiler_rt/trunctfhf2.zig +3 -0
- package/compiler_rt.zig +5 -26
- package/docs/wasm/Walk.zig +1 -3
- package/docs/wasm/html_render.zig +1 -2
- package/docs/wasm/markdown/Parser.zig +16 -20
- package/fuzzer.zig +2 -0
- package/include/__clang_spirv_builtins.h +12 -12
- package/include/__float_float.h +176 -0
- package/include/__float_header_macro.h +12 -0
- package/include/__float_infinity_nan.h +20 -0
- package/include/amo.h +131 -0
- package/include/amxavx512intrin.h +215 -1
- package/include/amxintrin.h +0 -2
- package/include/arm_acle.h +37 -27
- package/include/arm_neon.h +218 -82
- package/include/arm_sme.h +8 -8
- package/include/arm_sve.h +4162 -3782
- package/include/avx10_2_512bf16intrin.h +19 -12
- package/include/avx10_2_512convertintrin.h +1 -1
- package/include/avx10_2_512niintrin.h +31 -31
- package/include/avx10_2_512satcvtdsintrin.h +1 -1
- package/include/avx10_2bf16intrin.h +54 -45
- package/include/avx10_2convertintrin.h +2 -2
- package/include/avx10_2copyintrin.h +1 -1
- package/include/avx10_2niintrin.h +14 -14
- package/include/avx10_2satcvtdsintrin.h +2 -2
- package/include/avx2intrin.h +275 -377
- package/include/avx512bf16intrin.h +25 -16
- package/include/avx512bitalgintrin.h +19 -30
- package/include/avx512bwintrin.h +386 -505
- package/include/avx512cdintrin.h +42 -55
- package/include/avx512dqintrin.h +132 -161
- package/include/avx512fintrin.h +1015 -1424
- package/include/avx512fp16intrin.h +112 -110
- package/include/avx512ifmaintrin.h +32 -34
- package/include/avx512ifmavlintrin.h +73 -46
- package/include/avx512vbmi2intrin.h +43 -32
- package/include/avx512vbmiintrin.h +19 -27
- package/include/avx512vbmivlintrin.h +35 -49
- package/include/avx512vlbf16intrin.h +32 -22
- package/include/avx512vlbitalgintrin.h +37 -53
- package/include/avx512vlbwintrin.h +470 -573
- package/include/avx512vlcdintrin.h +74 -102
- package/include/avx512vldqintrin.h +110 -127
- package/include/avx512vlfp16intrin.h +130 -111
- package/include/avx512vlintrin.h +945 -1299
- package/include/avx512vlvbmi2intrin.h +78 -63
- package/include/avx512vlvnniintrin.h +21 -18
- package/include/avx512vlvp2intersectintrin.h +2 -2
- package/include/avx512vnniintrin.h +10 -10
- package/include/avx512vp2intersectintrin.h +1 -2
- package/include/avx512vpopcntdqintrin.h +8 -10
- package/include/avx512vpopcntdqvlintrin.h +17 -15
- package/include/avxifmaintrin.h +16 -0
- package/include/avxintrin.h +165 -241
- package/include/avxvnniint16intrin.h +118 -99
- package/include/avxvnniint8intrin.h +56 -32
- package/include/avxvnniintrin.h +16 -8
- package/include/cpuid.h +101 -4
- package/include/emmintrin.h +168 -168
- package/include/f16cintrin.h +23 -9
- package/include/float.h +16 -155
- package/include/fma4intrin.h +98 -96
- package/include/fmaintrin.h +96 -66
- package/include/gfniintrin.h +21 -16
- package/include/hexagon_types.h +23 -20
- package/include/hvx_hexagon_protos.h +649 -860
- package/include/immintrin.h +0 -12
- package/include/intrin.h +4 -0
- package/include/lasxintrin.h +113 -0
- package/include/llvm_libc_wrappers/assert.h +3 -5
- package/include/llvm_libc_wrappers/ctype.h +3 -115
- package/include/llvm_libc_wrappers/inttypes.h +3 -5
- package/include/llvm_libc_wrappers/stdio.h +10 -38
- package/include/llvm_libc_wrappers/stdlib.h +3 -24
- package/include/llvm_libc_wrappers/string.h +2 -70
- package/include/llvm_libc_wrappers/time.h +4 -10
- package/include/mmintrin.h +188 -257
- package/include/module.modulemap +23 -4
- package/include/movrs_avx10_2_512intrin.h +2 -2
- package/include/movrs_avx10_2intrin.h +4 -4
- package/include/pmmintrin.h +12 -24
- package/include/ptrauth.h +16 -2
- package/include/riscv_mips.h +34 -0
- package/include/riscv_nds.h +89 -0
- package/include/sifive_vector.h +58 -2
- package/include/sm4evexintrin.h +2 -2
- package/include/smmintrin.h +77 -59
- package/include/spirvintrin.h +194 -0
- package/include/stddefer.h +19 -0
- package/include/tmmintrin.h +116 -147
- package/include/vaesintrin.h +1 -2
- package/include/xmmintrin.h +44 -70
- package/include/xopintrin.h +20 -10
- package/libc/include/aarch64-linux-any/asm/hwcap.h +1 -0
- package/libc/include/aarch64-linux-any/asm/unistd_64.h +1 -0
- package/libc/include/any-linux-any/asm-generic/errno.h +2 -0
- package/libc/include/any-linux-any/asm-generic/unistd.h +4 -1
- package/libc/include/any-linux-any/drm/amdgpu_drm.h +20 -6
- package/libc/include/any-linux-any/drm/amdxdna_accel.h +8 -0
- package/libc/include/any-linux-any/drm/drm_fourcc.h +6 -6
- package/libc/include/any-linux-any/drm/panfrost_drm.h +75 -1
- package/libc/include/any-linux-any/drm/panthor_drm.h +154 -3
- package/libc/include/any-linux-any/drm/rocket_accel.h +74 -24
- package/libc/include/any-linux-any/drm/xe_drm.h +89 -6
- package/libc/include/any-linux-any/linux/android/binder.h +1 -1
- package/libc/include/any-linux-any/linux/bpf.h +28 -0
- package/libc/include/any-linux-any/linux/btrfs.h +1 -0
- package/libc/include/any-linux-any/linux/btrfs_tree.h +32 -2
- package/libc/include/any-linux-any/linux/dma-buf.h +1 -0
- package/libc/include/any-linux-any/linux/dpll.h +1 -0
- package/libc/include/any-linux-any/linux/elf.h +2 -0
- package/libc/include/any-linux-any/linux/ethtool.h +21 -5
- package/libc/include/any-linux-any/linux/fs.h +1 -0
- package/libc/include/any-linux-any/linux/hyperv.h +1 -1
- package/libc/include/any-linux-any/linux/idxd.h +134 -134
- package/libc/include/any-linux-any/linux/if_alg.h +1 -1
- package/libc/include/any-linux-any/linux/if_link.h +1 -0
- package/libc/include/any-linux-any/linux/input-event-codes.h +4 -0
- package/libc/include/any-linux-any/linux/io_uring/bpf_filter.h +68 -0
- package/libc/include/any-linux-any/linux/io_uring/query.h +5 -1
- package/libc/include/any-linux-any/linux/io_uring.h +33 -2
- package/libc/include/any-linux-any/linux/iommufd.h +39 -0
- package/libc/include/any-linux-any/linux/kfd_ioctl.h +13 -3
- package/libc/include/any-linux-any/linux/kfd_sysfs.h +2 -1
- package/libc/include/any-linux-any/linux/kvm.h +30 -6
- package/libc/include/any-linux-any/linux/landlock.h +22 -8
- package/libc/include/any-linux-any/linux/magic.h +1 -0
- package/libc/include/any-linux-any/linux/mempolicy.h +3 -0
- package/libc/include/any-linux-any/linux/mount.h +11 -2
- package/libc/include/any-linux-any/linux/mptcp_pm.h +1 -1
- package/libc/include/any-linux-any/linux/mshv.h +2 -0
- package/libc/include/any-linux-any/linux/netfilter_bridge.h +5 -4
- package/libc/include/any-linux-any/linux/netfilter_ipv4.h +4 -5
- package/libc/include/any-linux-any/linux/netfilter_ipv6.h +3 -4
- package/libc/include/any-linux-any/linux/nfs.h +1 -1
- package/libc/include/any-linux-any/linux/nfsd_netlink.h +1 -0
- package/libc/include/any-linux-any/linux/nilfs2_api.h +2 -2
- package/libc/include/any-linux-any/linux/nilfs2_ondisk.h +97 -66
- package/libc/include/any-linux-any/linux/nl80211.h +104 -3
- package/libc/include/any-linux-any/linux/pci.h +7 -0
- package/libc/include/any-linux-any/linux/pci_regs.h +65 -6
- package/libc/include/any-linux-any/linux/pcitest.h +1 -0
- package/libc/include/any-linux-any/linux/perf_event.h +24 -3
- package/libc/include/any-linux-any/linux/pkt_sched.h +1 -0
- package/libc/include/any-linux-any/linux/prctl.h +30 -0
- package/libc/include/any-linux-any/linux/rseq.h +62 -5
- package/libc/include/any-linux-any/linux/shm.h +0 -1
- package/libc/include/any-linux-any/linux/stddef.h +4 -0
- package/libc/include/any-linux-any/linux/sysctl.h +1 -2
- package/libc/include/any-linux-any/linux/taskstats.h +12 -1
- package/libc/include/any-linux-any/linux/tcp.h +23 -3
- package/libc/include/any-linux-any/linux/typelimits.h +8 -0
- package/libc/include/any-linux-any/linux/ublk_cmd.h +120 -1
- package/libc/include/any-linux-any/linux/v4l2-controls.h +63 -0
- package/libc/include/any-linux-any/linux/vbox_vmmdev_types.h +2 -2
- package/libc/include/any-linux-any/linux/vduse.h +80 -5
- package/libc/include/any-linux-any/linux/version.h +3 -3
- package/libc/include/any-linux-any/linux/vfio.h +4 -0
- package/libc/include/any-linux-any/linux/videodev2.h +3 -0
- package/libc/include/any-linux-any/linux/virtio_ring.h +1 -2
- package/libc/include/any-linux-any/linux/vmclock-abi.h +20 -0
- package/libc/include/any-linux-any/rdma/bnxt_re-abi.h +16 -0
- package/libc/include/any-linux-any/rdma/ib_user_ioctl_cmds.h +16 -0
- package/libc/include/any-linux-any/rdma/mana-abi.h +3 -0
- package/libc/include/any-linux-any/scsi/scsi_bsg_ufs.h +8 -9
- package/libc/include/any-linux-any/sound/sof/tokens.h +6 -0
- package/libc/include/arc-linux-any/asm/swab.h +0 -63
- package/libc/include/arc-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/arm-linux-any/asm/ptrace.h +0 -9
- package/libc/include/arm-linux-any/asm/unistd-eabi.h +1 -0
- package/libc/include/arm-linux-any/asm/unistd-oabi.h +1 -0
- package/libc/include/csky-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/hexagon-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/loongarch-linux-any/asm/hwcap.h +1 -0
- package/libc/include/loongarch-linux-any/asm/kvm.h +1 -0
- package/libc/include/loongarch-linux-any/asm/kvm_para.h +1 -0
- package/libc/include/loongarch-linux-any/asm/unistd_32.h +2 -0
- package/libc/include/loongarch-linux-any/asm/unistd_64.h +2 -0
- package/libc/include/m68k-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/mips-linux-any/asm/errno.h +2 -0
- package/libc/include/mips-linux-any/asm/unistd_n32.h +1 -0
- package/libc/include/mips-linux-any/asm/unistd_n64.h +1 -0
- package/libc/include/mips-linux-any/asm/unistd_o32.h +1 -0
- package/libc/include/powerpc-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/powerpc-linux-any/asm/unistd_64.h +1 -0
- package/libc/include/riscv-linux-any/asm/hwprobe.h +4 -0
- package/libc/include/riscv-linux-any/asm/kvm.h +3 -0
- package/libc/include/riscv-linux-any/asm/ptrace.h +37 -0
- package/libc/include/riscv-linux-any/asm/sigcontext.h +1 -0
- package/libc/include/riscv-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/riscv-linux-any/asm/unistd_64.h +1 -0
- package/libc/include/s390x-linux-any/asm/unistd_64.h +1 -0
- package/libc/include/sparc-linux-any/asm/errno.h +2 -0
- package/libc/include/sparc-linux-any/asm/ioctls.h +4 -4
- package/libc/include/sparc-linux-any/asm/unistd_32.h +2 -0
- package/libc/include/sparc-linux-any/asm/unistd_64.h +2 -0
- package/libc/include/x86-linux-any/asm/auxvec.h +0 -4
- package/libc/include/x86-linux-any/asm/kvm.h +13 -8
- package/libc/include/x86-linux-any/asm/svm.h +16 -16
- package/libc/include/x86-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/x86-linux-any/asm/unistd_64.h +1 -0
- package/libc/include/x86-linux-any/asm/unistd_x32.h +1 -0
- package/libc/include/xtensa-linux-any/asm/unistd_32.h +1 -0
- package/libc/musl/arch/mipsn32/syscall_arch.h +35 -32
- package/libcxx/include/__algorithm/all_of.h +11 -5
- package/libcxx/include/__algorithm/comp.h +4 -0
- package/libcxx/include/__algorithm/copy.h +28 -147
- package/libcxx/include/__algorithm/copy_backward.h +9 -24
- package/libcxx/include/__algorithm/copy_n.h +50 -16
- package/libcxx/include/__algorithm/count.h +2 -2
- package/libcxx/include/__algorithm/equal.h +43 -55
- package/libcxx/include/__algorithm/fill.h +26 -8
- package/libcxx/include/__algorithm/fill_n.h +32 -46
- package/libcxx/include/__algorithm/find.h +96 -39
- package/libcxx/include/__algorithm/find_end.h +105 -0
- package/libcxx/include/__algorithm/for_each.h +18 -24
- package/libcxx/include/__algorithm/for_each_n.h +20 -47
- package/libcxx/include/__algorithm/for_each_n_segment.h +1 -1
- package/libcxx/include/__algorithm/for_each_segment.h +26 -0
- package/libcxx/include/__algorithm/generate.h +4 -2
- package/libcxx/include/__algorithm/generate_n.h +19 -6
- package/libcxx/include/__algorithm/is_permutation.h +4 -4
- package/libcxx/include/__algorithm/iterator_operations.h +3 -0
- package/libcxx/include/__algorithm/lexicographical_compare.h +2 -2
- package/libcxx/include/__algorithm/lexicographical_compare_three_way.h +6 -6
- package/libcxx/include/__algorithm/make_heap.h +16 -4
- package/libcxx/include/__algorithm/mismatch.h +2 -2
- package/libcxx/include/__algorithm/move.h +8 -19
- package/libcxx/include/__algorithm/move_backward.h +9 -24
- package/libcxx/include/__algorithm/none_of.h +4 -4
- package/libcxx/include/__algorithm/partial_sort.h +1 -1
- package/libcxx/include/__algorithm/partial_sort_copy.h +1 -1
- package/libcxx/include/__algorithm/pstl.h +9 -9
- package/libcxx/include/__algorithm/radix_sort.h +27 -25
- package/libcxx/include/__algorithm/ranges_copy_n.h +3 -26
- package/libcxx/include/__algorithm/ranges_equal.h +17 -26
- package/libcxx/include/__algorithm/ranges_fill.h +7 -6
- package/libcxx/include/__algorithm/ranges_for_each.h +9 -1
- package/libcxx/include/__algorithm/ranges_generate_n.h +2 -6
- package/libcxx/include/__algorithm/ranges_search_n.h +2 -2
- package/libcxx/include/__algorithm/rotate.h +27 -44
- package/libcxx/include/__algorithm/search_n.h +49 -37
- package/libcxx/include/__algorithm/sift_down.h +19 -18
- package/libcxx/include/__algorithm/simd_utils.h +33 -4
- package/libcxx/include/__algorithm/specialized_algorithms.h +54 -0
- package/libcxx/include/__algorithm/stable_sort.h +1 -1
- package/libcxx/include/__assertion_handler +31 -4
- package/libcxx/include/__atomic/atomic.h +36 -60
- package/libcxx/include/__atomic/atomic_flag.h +19 -37
- package/libcxx/include/__atomic/atomic_ref.h +29 -12
- package/libcxx/include/__atomic/atomic_sync.h +127 -55
- package/libcxx/include/__atomic/atomic_sync_timed.h +144 -0
- package/libcxx/include/__atomic/atomic_waitable_traits.h +103 -0
- package/libcxx/include/__atomic/contention_t.h +27 -3
- package/libcxx/include/__atomic/floating_point_helper.h +55 -0
- package/libcxx/include/__bit/countl.h +1 -2
- package/libcxx/include/__bit/countr.h +1 -2
- package/libcxx/include/__bit/has_single_bit.h +1 -1
- package/libcxx/include/__bit/popcount.h +0 -1
- package/libcxx/include/__bit/rotate.h +15 -26
- package/libcxx/include/__bit_reference +207 -18
- package/libcxx/include/__charconv/from_chars_integral.h +1 -1
- package/libcxx/include/__charconv/from_chars_result.h +1 -1
- package/libcxx/include/__charconv/to_chars_integral.h +1 -0
- package/libcxx/include/__charconv/to_chars_result.h +1 -1
- package/libcxx/include/__charconv/traits.h +3 -24
- package/libcxx/include/__chrono/day.h +11 -0
- package/libcxx/include/__chrono/duration.h +58 -33
- package/libcxx/include/__chrono/file_clock.h +4 -2
- package/libcxx/include/__chrono/is_clock.h +72 -0
- package/libcxx/include/__chrono/leap_second.h +13 -0
- package/libcxx/include/__chrono/month.h +13 -0
- package/libcxx/include/__chrono/month_weekday.h +22 -0
- package/libcxx/include/__chrono/monthday.h +20 -0
- package/libcxx/include/__chrono/steady_clock.h +1 -1
- package/libcxx/include/__chrono/system_clock.h +3 -3
- package/libcxx/include/__chrono/time_point.h +37 -13
- package/libcxx/include/__chrono/weekday.h +25 -0
- package/libcxx/include/__chrono/year.h +11 -0
- package/libcxx/include/__chrono/year_month.h +13 -0
- package/libcxx/include/__chrono/year_month_day.h +23 -0
- package/libcxx/include/__chrono/year_month_weekday.h +26 -0
- package/libcxx/include/__chrono/zoned_time.h +16 -0
- package/libcxx/include/__compare/is_eq.h +6 -6
- package/libcxx/include/__compare/strong_order.h +12 -30
- package/libcxx/include/__compare/three_way_comparable.h +2 -2
- package/libcxx/include/__concepts/comparison_common_type.h +40 -0
- package/libcxx/include/__concepts/equality_comparable.h +2 -1
- package/libcxx/include/__condition_variable/condition_variable.h +1 -1
- package/libcxx/include/__config +63 -280
- package/libcxx/include/__configuration/abi.h +14 -24
- package/libcxx/include/__configuration/availability.h +65 -118
- package/libcxx/include/__configuration/compiler.h +6 -6
- package/libcxx/include/__configuration/experimental.h +38 -0
- package/libcxx/include/__configuration/hardening.h +215 -0
- package/libcxx/include/__configuration/language.h +3 -0
- package/libcxx/include/__configuration/platform.h +9 -16
- package/libcxx/include/__coroutine/coroutine_handle.h +9 -9
- package/libcxx/include/__coroutine/noop_coroutine_handle.h +11 -13
- package/libcxx/include/__debug_utils/strict_weak_ordering_check.h +1 -1
- package/libcxx/include/__exception/exception.h +6 -4
- package/libcxx/include/__exception/exception_ptr.h +27 -5
- package/libcxx/include/__exception/nested_exception.h +2 -2
- package/libcxx/include/__exception/operations.h +5 -5
- package/libcxx/include/__expected/bad_expected_access.h +8 -6
- package/libcxx/include/__expected/expected.h +62 -64
- package/libcxx/include/__expected/unexpected.h +4 -4
- package/libcxx/include/__filesystem/copy_options.h +4 -4
- package/libcxx/include/__filesystem/directory_entry.h +37 -33
- package/libcxx/include/__filesystem/directory_iterator.h +9 -11
- package/libcxx/include/__filesystem/directory_options.h +7 -4
- package/libcxx/include/__filesystem/file_status.h +3 -3
- package/libcxx/include/__filesystem/filesystem_error.h +9 -10
- package/libcxx/include/__filesystem/operations.h +97 -66
- package/libcxx/include/__filesystem/path.h +68 -64
- package/libcxx/include/__filesystem/path_iterator.h +1 -3
- package/libcxx/include/__filesystem/perm_options.h +4 -4
- package/libcxx/include/__filesystem/perms.h +4 -4
- package/libcxx/include/__filesystem/recursive_directory_iterator.h +9 -14
- package/libcxx/include/__filesystem/space_info.h +1 -1
- package/libcxx/include/__filesystem/u8path.h +12 -14
- package/libcxx/include/__flat_map/flat_map.h +88 -71
- package/libcxx/include/__flat_map/flat_multimap.h +251 -172
- package/libcxx/include/__flat_map/key_value_iterator.h +0 -1
- package/libcxx/include/__flat_map/utils.h +1 -0
- package/libcxx/include/__flat_set/flat_multiset.h +211 -143
- package/libcxx/include/__flat_set/flat_set.h +86 -68
- package/libcxx/include/__format/concepts.h +0 -14
- package/libcxx/include/__format/extended_grapheme_cluster_table.h +3 -2
- package/libcxx/include/__format/fmt_pair_like.h +42 -0
- package/libcxx/include/__format/format_arg.h +7 -10
- package/libcxx/include/__format/format_args.h +1 -1
- package/libcxx/include/__format/format_context.h +5 -5
- package/libcxx/include/__format/format_parse_context.h +2 -2
- package/libcxx/include/__format/formatter_output.h +30 -34
- package/libcxx/include/__format/indic_conjunct_break_table.h +3 -2
- package/libcxx/include/__format/range_default_formatter.h +2 -41
- package/libcxx/include/__format/range_format.h +71 -0
- package/libcxx/include/__format/range_formatter.h +1 -0
- package/libcxx/include/__format/width_estimation_table.h +4 -2
- package/libcxx/include/__functional/bind.h +10 -15
- package/libcxx/include/__functional/bind_back.h +1 -1
- package/libcxx/include/__functional/bind_front.h +1 -1
- package/libcxx/include/__functional/function.h +57 -75
- package/libcxx/include/__functional/hash.h +1 -10
- package/libcxx/include/__functional/identity.h +1 -1
- package/libcxx/include/__functional/is_transparent.h +8 -0
- package/libcxx/include/__functional/mem_fn.h +2 -1
- package/libcxx/include/__functional/operations.h +18 -0
- package/libcxx/include/__functional/ranges_operations.h +7 -0
- package/libcxx/include/__functional/reference_wrapper.h +7 -5
- package/libcxx/include/__functional/weak_result_type.h +14 -28
- package/libcxx/include/__fwd/ios.h +1 -1
- package/libcxx/include/__fwd/tuple.h +14 -0
- package/libcxx/include/__hash_table +371 -357
- package/libcxx/include/__ios/fpos.h +4 -4
- package/libcxx/include/__iterator/back_insert_iterator.h +1 -7
- package/libcxx/include/__iterator/bounded_iter.h +7 -8
- package/libcxx/include/__iterator/concepts.h +6 -9
- package/libcxx/include/__iterator/cpp17_iterator_concepts.h +13 -12
- package/libcxx/include/__iterator/distance.h +40 -18
- package/libcxx/include/__iterator/front_insert_iterator.h +1 -7
- package/libcxx/include/__iterator/insert_iterator.h +1 -7
- package/libcxx/include/__iterator/istream_iterator.h +6 -7
- package/libcxx/include/__iterator/istreambuf_iterator.h +6 -7
- package/libcxx/include/__iterator/iter_move.h +1 -1
- package/libcxx/include/__iterator/iterator.h +13 -0
- package/libcxx/include/__iterator/iterator_traits.h +13 -14
- package/libcxx/include/__iterator/ostream_iterator.h +1 -7
- package/libcxx/include/__iterator/ostreambuf_iterator.h +1 -7
- package/libcxx/include/__iterator/reverse_iterator.h +8 -13
- package/libcxx/include/__iterator/segmented_iterator.h +3 -8
- package/libcxx/include/__iterator/static_bounded_iter.h +3 -3
- package/libcxx/include/__iterator/wrap_iter.h +8 -6
- package/libcxx/include/__locale +3 -10
- package/libcxx/include/__locale_dir/locale_base_api/bsd_locale_fallbacks.h +0 -10
- package/libcxx/include/__locale_dir/locale_base_api.h +5 -28
- package/libcxx/include/__locale_dir/messages.h +1 -1
- package/libcxx/include/__locale_dir/money.h +2 -2
- package/libcxx/include/__locale_dir/num.h +190 -243
- package/libcxx/include/__locale_dir/pad_and_output.h +5 -6
- package/libcxx/include/__locale_dir/support/bsd_like.h +0 -20
- package/libcxx/include/__locale_dir/support/fuchsia.h +0 -7
- package/libcxx/include/__locale_dir/support/linux.h +0 -37
- package/libcxx/include/__locale_dir/support/netbsd.h +0 -2
- package/libcxx/include/__locale_dir/support/newlib.h +243 -0
- package/libcxx/include/__locale_dir/support/no_locale/characters.h +0 -4
- package/libcxx/include/__locale_dir/support/no_locale/strtonum.h +0 -9
- package/libcxx/include/__locale_dir/support/windows.h +0 -29
- package/libcxx/include/__locale_dir/time.h +3 -7
- package/libcxx/include/__math/hypot.h +1 -1
- package/libcxx/include/__math/logarithms.h +1 -1
- package/libcxx/include/__math/traits.h +80 -11
- package/libcxx/include/__mdspan/extents.h +7 -4
- package/libcxx/include/__mdspan/layout_stride.h +4 -5
- package/libcxx/include/__mdspan/mdspan.h +29 -23
- package/libcxx/include/__memory/addressof.h +7 -5
- package/libcxx/include/__memory/align.h +18 -1
- package/libcxx/include/__memory/allocate_at_least.h +15 -10
- package/libcxx/include/__memory/allocator.h +14 -26
- package/libcxx/include/__memory/allocator_traits.h +6 -4
- package/libcxx/include/__memory/compressed_pair.h +15 -9
- package/libcxx/include/__memory/construct_at.h +12 -23
- package/libcxx/include/__memory/inout_ptr.h +1 -1
- package/libcxx/include/__memory/is_sufficiently_aligned.h +1 -1
- package/libcxx/include/__memory/out_ptr.h +1 -1
- package/libcxx/include/__memory/pointer_traits.h +1 -1
- package/libcxx/include/__memory/raw_storage_iterator.h +3 -9
- package/libcxx/include/__memory/shared_count.h +9 -30
- package/libcxx/include/__memory/shared_ptr.h +100 -145
- package/libcxx/include/__memory/temp_value.h +1 -2
- package/libcxx/include/__memory/uninitialized_algorithms.h +44 -115
- package/libcxx/include/__memory/unique_ptr.h +14 -16
- package/libcxx/include/__memory/uses_allocator_construction.h +1 -0
- package/libcxx/include/__memory_resource/memory_resource.h +4 -2
- package/libcxx/include/__memory_resource/monotonic_buffer_resource.h +1 -1
- package/libcxx/include/__memory_resource/polymorphic_allocator.h +13 -8
- package/libcxx/include/__memory_resource/pool_options.h +1 -1
- package/libcxx/include/__memory_resource/synchronized_pool_resource.h +4 -2
- package/libcxx/include/__memory_resource/unsynchronized_pool_resource.h +1 -1
- package/libcxx/include/__mutex/mutex.h +2 -2
- package/libcxx/include/__mutex/once_flag.h +14 -11
- package/libcxx/include/__mutex/tag_types.h +3 -3
- package/libcxx/include/__mutex/unique_lock.h +8 -7
- package/libcxx/include/__new/align_val_t.h +6 -0
- package/libcxx/include/__new/allocate.h +1 -2
- package/libcxx/include/__new/exceptions.h +8 -2
- package/libcxx/include/__new/global_new_delete.h +4 -11
- package/libcxx/include/__new/interference_size.h +0 -4
- package/libcxx/include/__new/launder.h +3 -5
- package/libcxx/include/__new/nothrow_t.h +1 -1
- package/libcxx/include/__numeric/gcd_lcm.h +24 -34
- package/libcxx/include/__numeric/midpoint.h +9 -14
- package/libcxx/include/__numeric/pstl.h +2 -2
- package/libcxx/include/__numeric/saturation_arithmetic.h +13 -5
- package/libcxx/include/__ostream/basic_ostream.h +8 -8
- package/libcxx/include/__pstl/backends/default.h +14 -14
- package/libcxx/include/__pstl/backends/libdispatch.h +2 -2
- package/libcxx/include/__pstl/cpu_algos/find_if.h +1 -1
- package/libcxx/include/__pstl/cpu_algos/transform.h +5 -6
- package/libcxx/include/__pstl/cpu_algos/transform_reduce.h +5 -4
- package/libcxx/include/__random/binomial_distribution.h +10 -4
- package/libcxx/include/__random/mersenne_twister_engine.h +50 -154
- package/libcxx/include/__random/piecewise_constant_distribution.h +3 -2
- package/libcxx/include/__random/piecewise_linear_distribution.h +3 -2
- package/libcxx/include/__ranges/adjacent_transform_view.h +406 -0
- package/libcxx/include/__ranges/adjacent_view.h +419 -0
- package/libcxx/include/__ranges/as_rvalue_view.h +9 -9
- package/libcxx/include/__ranges/chunk_by_view.h +6 -6
- package/libcxx/include/__ranges/common_view.h +7 -7
- package/libcxx/include/__ranges/drop_view.h +8 -8
- package/libcxx/include/__ranges/drop_while_view.h +5 -5
- package/libcxx/include/__ranges/elements_of.h +49 -0
- package/libcxx/include/__ranges/empty_view.h +5 -5
- package/libcxx/include/__ranges/filter_view.h +10 -10
- package/libcxx/include/__ranges/iota_view.h +41 -22
- package/libcxx/include/__ranges/owning_view.h +15 -15
- package/libcxx/include/__ranges/ref_view.h +6 -6
- package/libcxx/include/__ranges/repeat_view.h +17 -10
- package/libcxx/include/__ranges/single_view.h +8 -8
- package/libcxx/include/__ranges/take_view.h +9 -9
- package/libcxx/include/__ranges/transform_view.h +1 -2
- package/libcxx/include/__ranges/view_interface.h +10 -10
- package/libcxx/include/__ranges/zip_transform_view.h +357 -0
- package/libcxx/include/__ranges/zip_view.h +20 -20
- package/libcxx/include/__split_buffer +612 -240
- package/libcxx/include/__stop_token/atomic_unique_lock.h +1 -1
- package/libcxx/include/__stop_token/stop_callback.h +2 -2
- package/libcxx/include/__stop_token/stop_source.h +1 -1
- package/libcxx/include/__stop_token/stop_state.h +4 -4
- package/libcxx/include/__stop_token/stop_token.h +1 -1
- package/libcxx/include/__string/char_traits.h +51 -31
- package/libcxx/include/__string/constexpr_c_functions.h +5 -5
- package/libcxx/include/__support/xlocale/__strtonum_fallback.h +0 -8
- package/libcxx/include/__system_error/error_category.h +8 -8
- package/libcxx/include/__system_error/error_code.h +5 -5
- package/libcxx/include/__system_error/error_condition.h +4 -4
- package/libcxx/include/__system_error/system_error.h +1 -1
- package/libcxx/include/__thread/id.h +1 -1
- package/libcxx/include/__thread/jthread.h +1 -1
- package/libcxx/include/__thread/poll_with_backoff.h +27 -8
- package/libcxx/include/__thread/support/c11.h +8 -8
- package/libcxx/include/__thread/support/pthread.h +8 -8
- package/libcxx/include/__thread/support/windows.h +8 -8
- package/libcxx/include/__thread/thread.h +13 -8
- package/libcxx/include/__thread/timed_backoff_policy.h +3 -2
- package/libcxx/include/__tree +849 -701
- package/libcxx/include/__tuple/sfinae_helpers.h +1 -44
- package/libcxx/include/__tuple/tuple_element.h +0 -12
- package/libcxx/include/__tuple/tuple_size.h +0 -4
- package/libcxx/include/__tuple/tuple_transform.h +45 -0
- package/libcxx/include/__type_traits/aligned_storage.h +13 -40
- package/libcxx/include/__type_traits/desugars_to.h +4 -0
- package/libcxx/include/__type_traits/invoke.h +8 -0
- package/libcxx/include/__type_traits/is_allocator.h +6 -7
- package/libcxx/include/__type_traits/is_array.h +26 -0
- package/libcxx/include/__type_traits/is_equality_comparable.h +16 -21
- package/libcxx/include/__type_traits/is_final.h +1 -1
- package/libcxx/include/__type_traits/is_floating_point.h +7 -6
- package/libcxx/include/__type_traits/is_generic_transparent_comparator.h +30 -0
- package/libcxx/include/__type_traits/is_specialization.h +2 -6
- package/libcxx/include/__type_traits/is_within_lifetime.h +29 -0
- package/libcxx/include/__type_traits/make_transparent.h +52 -0
- package/libcxx/include/__type_traits/reference_constructs_from_temporary.h +1 -7
- package/libcxx/include/__type_traits/reference_converts_from_temporary.h +1 -1
- package/libcxx/include/__utility/cmp.h +19 -7
- package/libcxx/include/__utility/default_three_way_comparator.h +70 -0
- package/libcxx/include/__utility/in_place.h +1 -1
- package/libcxx/include/__utility/integer_sequence.h +56 -41
- package/libcxx/include/__utility/lazy_synth_three_way_comparator.h +120 -0
- package/libcxx/include/__utility/pair.h +22 -25
- package/libcxx/include/__utility/scope_guard.h +2 -0
- package/libcxx/include/__utility/try_key_extraction.h +114 -0
- package/libcxx/include/__vector/vector.h +187 -160
- package/libcxx/include/__vector/vector_bool.h +76 -83
- package/libcxx/include/any +118 -155
- package/libcxx/include/array +88 -56
- package/libcxx/include/atomic +2 -0
- package/libcxx/include/barrier +20 -24
- package/libcxx/include/bitset +49 -30
- package/libcxx/include/ccomplex +3 -11
- package/libcxx/include/chrono +47 -0
- package/libcxx/include/ciso646 +3 -6
- package/libcxx/include/complex +77 -65
- package/libcxx/include/complex.h +10 -10
- package/libcxx/include/condition_variable +3 -3
- package/libcxx/include/cstdalign +3 -10
- package/libcxx/include/cstdbool +3 -10
- package/libcxx/include/ctgmath +2 -11
- package/libcxx/include/ctype.h +24 -24
- package/libcxx/include/cwchar +2 -2
- package/libcxx/include/deque +109 -225
- package/libcxx/include/errno.h +269 -269
- package/libcxx/include/exception +4 -1
- package/libcxx/include/ext/hash_map +7 -48
- package/libcxx/include/ext/hash_set +2 -8
- package/libcxx/include/fenv.h +43 -43
- package/libcxx/include/flat_map +663 -11
- package/libcxx/include/flat_set +543 -8
- package/libcxx/include/float.h +16 -16
- package/libcxx/include/forward_list +33 -53
- package/libcxx/include/fstream +57 -42
- package/libcxx/include/future +41 -51
- package/libcxx/include/initializer_list +9 -3
- package/libcxx/include/inttypes.h +16 -16
- package/libcxx/include/ios +28 -28
- package/libcxx/include/istream +19 -13
- package/libcxx/include/iterator +10 -0
- package/libcxx/include/latch +7 -5
- package/libcxx/include/limits +4 -4
- package/libcxx/include/list +61 -79
- package/libcxx/include/map +386 -274
- package/libcxx/include/math.h +19 -0
- package/libcxx/include/mdspan +1 -5
- package/libcxx/include/mutex +29 -19
- package/libcxx/include/optional +644 -149
- package/libcxx/include/print +9 -5
- package/libcxx/include/queue +39 -37
- package/libcxx/include/ranges +48 -0
- package/libcxx/include/regex +33 -31
- package/libcxx/include/scoped_allocator +16 -11
- package/libcxx/include/semaphore +15 -18
- package/libcxx/include/set +220 -192
- package/libcxx/include/shared_mutex +3 -8
- package/libcxx/include/span +53 -37
- package/libcxx/include/sstream +34 -28
- package/libcxx/include/stack +13 -15
- package/libcxx/include/stddef.h +10 -10
- package/libcxx/include/stdexcept +2 -2
- package/libcxx/include/stdio.h +20 -21
- package/libcxx/include/streambuf +59 -19
- package/libcxx/include/string +574 -573
- package/libcxx/include/string_view +113 -89
- package/libcxx/include/strstream +10 -10
- package/libcxx/include/syncstream +4 -4
- package/libcxx/include/tgmath.h +12 -12
- package/libcxx/include/tuple +242 -212
- package/libcxx/include/type_traits +8 -2
- package/libcxx/include/typeindex +5 -3
- package/libcxx/include/typeinfo +92 -89
- package/libcxx/include/unordered_map +179 -304
- package/libcxx/include/unordered_set +168 -195
- package/libcxx/include/utility +12 -0
- package/libcxx/include/valarray +106 -161
- package/libcxx/include/variant +25 -33
- package/libcxx/include/version +41 -24
- package/libcxx/include/wctype.h +29 -29
- package/libcxx/libc/hdr/errno_macros.h +3 -1
- package/libcxx/libc/hdr/stdint_proxy.h +18 -0
- package/libcxx/libc/hdr/types/wchar_t.h +23 -0
- package/libcxx/libc/hdr/wchar_overlay.h +69 -0
- package/libcxx/libc/include/llvm-libc-macros/cfloat128-macros.h +41 -0
- package/libcxx/libc/include/llvm-libc-macros/cfloat16-macros.h +20 -0
- package/libcxx/libc/include/llvm-libc-macros/wchar-macros.h +18 -0
- package/libcxx/libc/include/llvm-libc-types/cfloat128.h +11 -28
- package/libcxx/libc/include/llvm-libc-types/cfloat16.h +4 -7
- package/libcxx/libc/include/llvm-libc-types/wint_t.h +14 -0
- package/libcxx/libc/shared/libc_common.h +5 -0
- package/libcxx/libc/src/__support/CPP/bit.h +50 -12
- package/libcxx/libc/src/__support/CPP/type_traits/is_complex.h +7 -0
- package/libcxx/libc/src/__support/CPP/type_traits/is_destructible.h +2 -1
- package/libcxx/libc/src/__support/CPP/type_traits/is_unsigned.h +6 -0
- package/libcxx/libc/src/__support/CPP/utility/integer_sequence.h +10 -0
- package/libcxx/libc/src/__support/FPUtil/FPBits.h +6 -7
- package/libcxx/libc/src/__support/FPUtil/rounding_mode.h +50 -4
- package/libcxx/libc/src/__support/big_int.h +14 -14
- package/libcxx/libc/src/__support/common.h +3 -2
- package/libcxx/libc/src/__support/ctype_utils.h +19 -12
- package/libcxx/libc/src/__support/detailed_powers_of_ten.h +1 -2
- package/libcxx/libc/src/__support/high_precision_decimal.h +33 -14
- package/libcxx/libc/src/__support/libc_assert.h +2 -0
- package/libcxx/libc/src/__support/macros/attributes.h +44 -1
- package/libcxx/libc/src/__support/macros/config.h +23 -0
- package/libcxx/libc/src/__support/macros/null_check.h +1 -2
- package/libcxx/libc/src/__support/macros/optimization.h +3 -0
- package/libcxx/libc/src/__support/macros/properties/architectures.h +5 -1
- package/libcxx/libc/src/__support/macros/properties/compiler.h +8 -3
- package/libcxx/libc/src/__support/macros/properties/cpu_features.h +17 -1
- package/libcxx/libc/src/__support/macros/properties/types.h +2 -3
- package/libcxx/libc/src/__support/macros/sanitizer.h +0 -10
- package/libcxx/libc/src/__support/math_extras.h +20 -4
- package/libcxx/libc/src/__support/str_to_float.h +98 -125
- package/libcxx/libc/src/__support/str_to_integer.h +39 -27
- package/libcxx/libc/src/__support/wctype_utils.h +588 -0
- package/libcxx/src/any.cpp +4 -0
- package/libcxx/src/atomic.cpp +365 -80
- package/libcxx/src/barrier.cpp +4 -3
- package/libcxx/src/charconv.cpp +6 -3
- package/libcxx/src/condition_variable_destructor.cpp +1 -1
- package/libcxx/src/error_category.cpp +3 -1
- package/libcxx/src/exception.cpp +2 -10
- package/libcxx/src/experimental/time_zone.cpp +1 -1
- package/libcxx/src/experimental/tzdb.cpp +4 -1
- package/libcxx/src/filesystem/error.h +4 -22
- package/libcxx/src/filesystem/format_string.h +9 -18
- package/libcxx/src/filesystem/int128_builtins.cpp +2 -0
- package/libcxx/src/filesystem/operations.cpp +2 -9
- package/libcxx/src/filesystem/path.cpp +3 -1
- package/libcxx/src/include/aligned_alloc.h +65 -0
- package/libcxx/src/include/config_elast.h +1 -1
- package/libcxx/src/include/from_chars_floating_point.h +11 -7
- package/libcxx/src/include/overridable_function.h +8 -10
- package/libcxx/src/iostream.cpp +56 -37
- package/libcxx/src/locale.cpp +213 -196
- package/libcxx/src/memory.cpp +12 -14
- package/libcxx/src/mutex_destructor.cpp +1 -1
- package/libcxx/src/new.cpp +5 -5
- package/libcxx/src/optional.cpp +4 -0
- package/libcxx/src/print.cpp +9 -1
- package/libcxx/src/random.cpp +0 -26
- package/libcxx/src/string.cpp +10 -25
- package/libcxx/src/support/runtime/exception_fallback.ipp +2 -0
- package/libcxx/src/support/runtime/exception_glibcxx.ipp +3 -0
- package/libcxx/src/support/runtime/exception_libcxxabi.ipp +6 -2
- package/libcxx/src/support/runtime/exception_libcxxrt.ipp +2 -0
- package/libcxx/src/support/runtime/exception_msvc.ipp +2 -0
- package/libcxx/src/support/runtime/exception_pointer_cxxabi.ipp +9 -10
- package/libcxx/src/support/runtime/exception_pointer_glibcxx.ipp +2 -0
- package/libcxx/src/support/runtime/exception_pointer_msvc.ipp +1 -0
- package/libcxx/src/support/runtime/exception_pointer_unimplemented.ipp +1 -0
- package/libcxx/src/support/win32/locale_win32.cpp +1 -1
- package/libcxx/src/system_error.cpp +2 -0
- package/libcxx/src/thread.cpp +1 -3
- package/libcxx/src/valarray.cpp +1 -2
- package/libcxx/src/vector.cpp +2 -2
- package/libcxxabi/include/__cxxabi_config.h +42 -23
- package/libcxxabi/src/cxa_exception.cpp +4 -2
- package/libcxxabi/src/cxa_exception.h +16 -14
- package/libcxxabi/src/cxa_personality.cpp +126 -9
- package/libcxxabi/src/cxa_thread_atexit.cpp +2 -1
- package/libcxxabi/src/demangle/DemangleConfig.h +4 -0
- package/libcxxabi/src/demangle/ItaniumDemangle.h +9 -6
- package/libcxxabi/src/demangle/Utility.h +21 -7
- package/libcxxabi/src/fallback_malloc.cpp +1 -1
- package/libcxxabi/src/private_typeinfo.cpp +6 -0
- package/libcxxabi/src/stdlib_new_delete.cpp +5 -5
- package/libtsan/LICENSE.TXT +311 -0
- package/libtsan/builtins/assembly.h +41 -8
- package/libtsan/interception/interception_win.cpp +4 -0
- package/libtsan/sanitizer_common/sanitizer_allocator_primary32.h +1 -0
- package/libtsan/sanitizer_common/sanitizer_allocator_primary64.h +18 -0
- package/libtsan/sanitizer_common/sanitizer_common.h +15 -2
- package/libtsan/sanitizer_common/sanitizer_common_interceptors.inc +30 -4
- package/libtsan/sanitizer_common/sanitizer_common_interceptors_ioctl.inc +4 -0
- package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_aarch64.inc.S +2 -1
- package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_i386.inc.S +2 -0
- package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_x86_64.inc.S +2 -0
- package/libtsan/sanitizer_common/sanitizer_common_syscalls.inc +18 -0
- package/libtsan/sanitizer_common/sanitizer_file.cpp +40 -12
- package/libtsan/sanitizer_common/sanitizer_file.h +3 -0
- package/libtsan/sanitizer_common/sanitizer_flags.inc +7 -0
- package/libtsan/sanitizer_common/sanitizer_fuchsia.cpp +30 -3
- package/libtsan/sanitizer_common/sanitizer_haiku.cpp +2 -2
- package/libtsan/sanitizer_common/sanitizer_internal_defs.h +1 -1
- package/libtsan/sanitizer_common/sanitizer_libc.cpp +8 -0
- package/libtsan/sanitizer_common/sanitizer_libc.h +1 -0
- package/libtsan/sanitizer_common/sanitizer_linux.cpp +15 -7
- package/libtsan/sanitizer_common/sanitizer_linux.h +3 -3
- package/libtsan/sanitizer_common/sanitizer_linux_libcdep.cpp +1 -0
- package/libtsan/sanitizer_common/sanitizer_mac.cpp +255 -104
- package/libtsan/sanitizer_common/sanitizer_mac.h +5 -0
- package/libtsan/sanitizer_common/sanitizer_netbsd.cpp +2 -2
- package/libtsan/sanitizer_common/sanitizer_platform.h +27 -1
- package/libtsan/sanitizer_common/sanitizer_platform_interceptors.h +5 -4
- package/libtsan/sanitizer_common/sanitizer_platform_limits_posix.cpp +15 -17
- package/libtsan/sanitizer_common/sanitizer_platform_limits_posix.h +32 -6
- package/libtsan/sanitizer_common/sanitizer_posix.cpp +3 -12
- package/libtsan/sanitizer_common/sanitizer_posix.h +2 -1
- package/libtsan/sanitizer_common/sanitizer_posix_libcdep.cpp +19 -0
- package/libtsan/sanitizer_common/sanitizer_procmaps_mac.cpp +102 -37
- package/libtsan/sanitizer_common/sanitizer_redefine_builtins.h +1 -1
- package/libtsan/sanitizer_common/sanitizer_signal_interceptors.inc +40 -2
- package/libtsan/sanitizer_common/sanitizer_stoptheworld.h +1 -1
- package/libtsan/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp +83 -12
- package/libtsan/sanitizer_common/sanitizer_stoptheworld_mac.cpp +3 -3
- package/libtsan/sanitizer_common/sanitizer_stoptheworld_netbsd_libcdep.cpp +7 -7
- package/libtsan/sanitizer_common/sanitizer_stoptheworld_win.cpp +2 -2
- package/libtsan/sanitizer_common/sanitizer_symbolizer_internal.h +5 -1
- package/libtsan/sanitizer_common/sanitizer_symbolizer_libcdep.cpp +11 -1
- package/libtsan/sanitizer_common/sanitizer_symbolizer_mac.cpp +86 -29
- package/libtsan/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp +27 -16
- package/libtsan/sanitizer_common/sanitizer_thread_registry.cpp +5 -4
- package/libtsan/sanitizer_common/sanitizer_thread_registry.h +4 -4
- package/libtsan/sanitizer_common/sanitizer_win.cpp +1 -3
- package/libtsan/tsan_debugging.cpp +2 -2
- package/libtsan/tsan_flags.cpp +37 -0
- package/libtsan/tsan_flags.h +8 -0
- package/libtsan/tsan_flags.inc +12 -0
- package/libtsan/tsan_interceptors.h +9 -1
- package/libtsan/tsan_interceptors_mac.cpp +19 -0
- package/libtsan/tsan_interceptors_posix.cpp +78 -32
- package/libtsan/tsan_interface.h +3 -3
- package/libtsan/tsan_interface_ann.cpp +23 -9
- package/libtsan/tsan_mman.cpp +18 -4
- package/libtsan/tsan_platform.h +44 -7
- package/libtsan/tsan_platform_linux.cpp +42 -14
- package/libtsan/tsan_platform_mac.cpp +16 -3
- package/libtsan/tsan_report.h +14 -1
- package/libtsan/tsan_rtl.cpp +14 -0
- package/libtsan/tsan_rtl.h +7 -2
- package/libtsan/tsan_rtl_aarch64.S +3 -5
- package/libtsan/tsan_rtl_access.cpp +8 -3
- package/libtsan/tsan_rtl_amd64.S +2 -0
- package/libtsan/tsan_rtl_mutex.cpp +94 -49
- package/libtsan/tsan_rtl_report.cpp +132 -65
- package/libtsan/tsan_rtl_thread.cpp +31 -9
- package/libtsan/tsan_symbolize.cpp +1 -1
- package/libtsan/tsan_symbolize.h +1 -1
- package/libtsan/tsan_trace.h +1 -1
- package/libunwind/include/__libunwind_config.h +11 -2
- package/libunwind/include/libunwind.h +117 -11
- package/libunwind/include/unwind_arm_ehabi.h +4 -1
- package/libunwind/src/AddressSpace.hpp +42 -20
- package/libunwind/src/CompactUnwinder.hpp +16 -5
- package/libunwind/src/DwarfInstructions.hpp +24 -13
- package/libunwind/src/DwarfParser.hpp +62 -23
- package/libunwind/src/EHHeaderParser.hpp +7 -4
- package/libunwind/src/Registers.hpp +226 -22
- package/libunwind/src/Unwind-seh.cpp +6 -7
- package/libunwind/src/Unwind-wasm.c +7 -7
- package/libunwind/src/UnwindCursor.hpp +167 -49
- package/libunwind/src/UnwindLevel1.c +46 -17
- package/libunwind/src/UnwindRegistersRestore.S +46 -5
- package/libunwind/src/UnwindRegistersSave.S +86 -2
- package/libunwind/src/assembly.h +5 -1
- package/libunwind/src/config.h +9 -0
- package/libunwind/src/gcc_personality_v0.c +79 -6
- package/libunwind/src/libunwind.cpp +104 -4
- package/libunwind/src/libunwind_ext.h +7 -1
- package/libunwind/src/shadow_stack_unwind.h +2 -2
- package/lldb/pretty_printers.py +948 -0
- package/package.json +1 -1
- package/std/Build/Cache/Path.zig +1 -1
- package/std/Build/Cache.zig +6 -6
- package/std/Build/Step/Compile.zig +18 -20
- package/std/Build/Step/ConfigHeader.zig +1 -1
- package/std/Build/Step/Run.zig +15 -8
- package/std/Build/Step.zig +3 -7
- package/std/Build/Watch/FsEvents.zig +1 -1
- package/std/Build/WebServer.zig +2 -2
- package/std/Build/abi.zig +1 -1
- package/std/Build.zig +0 -3
- package/std/Io/Dir.zig +9 -4
- package/std/Io/Dispatch.zig +8 -18
- package/std/Io/File/Writer.zig +8 -6
- package/std/Io/File.zig +0 -9
- package/std/Io/Kqueue.zig +3 -3
- package/std/Io/Reader.zig +8 -14
- package/std/Io/Semaphore.zig +112 -17
- package/std/Io/Terminal.zig +1 -1
- package/std/Io/Threaded.zig +183 -46
- package/std/Io/Uring.zig +18 -20
- package/std/Io/Writer.zig +10 -7
- package/std/Io/net/HostName.zig +11 -6
- package/std/Io/net.zig +11 -11
- package/std/Io.zig +104 -38
- package/std/Random/ChaCha.zig +2 -2
- package/std/Random/benchmark.zig +2 -2
- package/std/Random.zig +6 -6
- package/std/SemanticVersion.zig +1 -1
- package/std/Target/Query.zig +2 -2
- package/std/Target/aarch64.zig +620 -77
- package/std/Target/amdgcn.zig +421 -21
- package/std/Target/arm.zig +40 -6
- package/std/Target/bpf.zig +6 -0
- package/std/Target/hexagon.zig +41 -6
- package/std/Target/loongarch.zig +18 -0
- package/std/Target/mips.zig +6 -0
- package/std/Target/nvptx.zig +58 -35
- package/std/Target/powerpc.zig +27 -19
- package/std/Target/riscv.zig +415 -177
- package/std/Target/sparc.zig +17 -0
- package/std/Target/wasm.zig +7 -0
- package/std/Target/x86.zig +200 -31
- package/std/Target/xtensa.zig +65 -0
- package/std/Target.zig +67 -14
- package/std/Thread.zig +5 -2
- package/std/array_hash_map.zig +103 -57
- package/std/array_list.zig +10 -31
- package/std/base64.zig +5 -5
- package/std/bit_set.zig +86 -69
- package/std/c/haiku.zig +3 -0
- package/std/c/serenity.zig +1 -6
- package/std/c.zig +123 -32
- package/std/compress/flate/Decompress.zig +3 -4
- package/std/compress/zstd/Decompress.zig +7 -9
- package/std/crypto/25519/curve25519.zig +2 -2
- package/std/crypto/25519/edwards25519.zig +3 -3
- package/std/crypto/25519/ristretto255.zig +2 -2
- package/std/crypto/25519/scalar.zig +6 -6
- package/std/crypto/25519/x25519.zig +1 -1
- package/std/crypto/Certificate.zig +14 -2
- package/std/crypto/Sha1.zig +1 -1
- package/std/crypto/aegis.zig +45 -39
- package/std/crypto/aes_ccm.zig +22 -22
- package/std/crypto/aes_gcm.zig +10 -12
- package/std/crypto/aes_ocb.zig +9 -9
- package/std/crypto/argon2.zig +15 -15
- package/std/crypto/ascon.zig +75 -33
- package/std/crypto/bcrypt.zig +20 -10
- package/std/crypto/benchmark.zig +7 -7
- package/std/crypto/blake2.zig +100 -64
- package/std/crypto/cbc_mac.zig +1 -1
- package/std/crypto/chacha20.zig +10 -10
- package/std/crypto/cmac.zig +3 -3
- package/std/crypto/codecs/asn1/Oid.zig +12 -1
- package/std/crypto/codecs/asn1/der/Encoder.zig +1 -1
- package/std/crypto/codecs/asn1.zig +1 -1
- package/std/crypto/codecs/base64_hex_ct.zig +3 -5
- package/std/crypto/ecdsa.zig +9 -9
- package/std/crypto/ff.zig +4 -5
- package/std/crypto/ghash_polyval.zig +4 -4
- package/std/crypto/hkdf.zig +1 -1
- package/std/crypto/isap.zig +3 -3
- package/std/crypto/kangarootwelve.zig +1 -1
- package/std/crypto/keccak_p.zig +8 -8
- package/std/crypto/md5.zig +1 -1
- package/std/crypto/ml_dsa.zig +39 -39
- package/std/crypto/ml_kem.zig +12 -34
- package/std/crypto/modes.zig +2 -2
- package/std/crypto/pbkdf2.zig +1 -1
- package/std/crypto/pcurves/common.zig +4 -5
- package/std/crypto/pcurves/p256/scalar.zig +3 -3
- package/std/crypto/pcurves/p384/scalar.zig +2 -2
- package/std/crypto/pcurves/secp256k1/scalar.zig +3 -3
- package/std/crypto/pcurves/tests/p256.zig +5 -5
- package/std/crypto/pcurves/tests/p384.zig +5 -5
- package/std/crypto/pcurves/tests/secp256k1.zig +3 -3
- package/std/crypto/salsa20.zig +8 -8
- package/std/crypto/sha2.zig +2 -2
- package/std/crypto/sha3.zig +2 -2
- package/std/crypto/siphash.zig +1 -1
- package/std/crypto/timing_safe.zig +10 -9
- package/std/crypto/tls/Client.zig +89 -13
- package/std/crypto/tls.zig +1 -1
- package/std/crypto.zig +4 -3
- package/std/debug/Dwarf.zig +15 -12
- package/std/debug/Pdb.zig +25 -17
- package/std/debug.zig +14 -8
- package/std/deque.zig +1 -1
- package/std/elf.zig +1 -1
- package/std/enums.zig +8 -8
- package/std/fmt/parse_float/decimal.zig +1 -1
- package/std/fmt/parse_float.zig +1 -1
- package/std/fmt.zig +14 -10
- package/std/fs/path.zig +7 -5
- package/std/hash/Adler32.zig +3 -3
- package/std/hash/benchmark.zig +2 -2
- package/std/hash/wyhash.zig +2 -2
- package/std/hash/xxhash.zig +0 -6
- package/std/hash_map.zig +20 -1
- package/std/heap/BufferFirstAllocator.zig +165 -0
- package/std/heap/debug_allocator.zig +2 -2
- package/std/heap/memory_pool.zig +34 -197
- package/std/heap.zig +2 -133
- package/std/http/Client.zig +21 -24
- package/std/http.zig +4 -5
- package/std/json/Scanner.zig +2 -2
- package/std/json/static.zig +2 -2
- package/std/{builtin.zig → lang.zig} +5 -1
- package/std/leb128.zig +2 -2
- package/std/math/big/int.zig +5 -5
- package/std/math/big.zig +4 -4
- package/std/math/copysign.zig +1 -1
- package/std/math/float.zig +62 -0
- package/std/math/frexp.zig +4 -4
- package/std/math/ilogb.zig +1 -1
- package/std/math/isfinite.zig +1 -1
- package/std/math/isinf.zig +1 -1
- package/std/math/isnan.zig +1 -2
- package/std/math/isnormal.zig +2 -2
- package/std/math/iszero.zig +2 -2
- package/std/math/ldexp.zig +2 -2
- package/std/math/log10.zig +0 -2
- package/std/math/modf.zig +1 -2
- package/std/math/nextafter.zig +3 -4
- package/std/math/pow.zig +1 -1
- package/std/math/powi.zig +2 -3
- package/std/math/signbit.zig +0 -1
- package/std/math.zig +21 -26
- package/std/mem/Allocator.zig +0 -6
- package/std/mem.zig +31 -31
- package/std/meta/trailer_flags.zig +1 -1
- package/std/meta.zig +4 -36
- package/std/multi_array_list.zig +24 -0
- package/std/os/emscripten.zig +7 -6
- package/std/os/linux/IoUring.zig +2 -0
- package/std/os/linux/aarch64.zig +41 -12
- package/std/os/linux/arc.zig +41 -12
- package/std/os/linux/arm.zig +41 -12
- package/std/os/linux/bpf.zig +6 -0
- package/std/os/linux/hexagon.zig +33 -11
- package/std/os/linux/ioctl.zig +2 -2
- package/std/os/linux/loongarch32.zig +41 -13
- package/std/os/linux/loongarch64.zig +41 -12
- package/std/os/linux/m68k.zig +41 -13
- package/std/os/linux/mips.zig +67 -36
- package/std/os/linux/mips64.zig +60 -29
- package/std/os/linux/mipsn32.zig +60 -29
- package/std/os/linux/or1k.zig +41 -12
- package/std/os/linux/powerpc.zig +41 -12
- package/std/os/linux/powerpc64.zig +41 -12
- package/std/os/linux/riscv32.zig +41 -12
- package/std/os/linux/riscv64.zig +41 -12
- package/std/os/linux/s390x.zig +44 -7
- package/std/os/linux/sparc64.zig +83 -52
- package/std/os/linux/syscalls.zig +26 -1
- package/std/os/linux/thumb.zig +52 -36
- package/std/os/linux/x32.zig +41 -12
- package/std/os/linux/x86.zig +44 -15
- package/std/os/linux/x86_64.zig +41 -12
- package/std/os/linux.zig +416 -450
- package/std/os/plan9.zig +1 -1
- package/std/os/uefi/hii.zig +1 -1
- package/std/os/uefi/tables/boot_services.zig +9 -8
- package/std/os/uefi/tables/runtime_services.zig +1 -1
- package/std/os/windows.zig +130 -1
- package/std/os.zig +41 -0
- package/std/posix.zig +1 -1
- package/std/process/Environ.zig +1 -1
- package/std/process.zig +5 -4
- package/std/simd.zig +4 -21
- package/std/sort.zig +3 -3
- package/std/start.zig +17 -4
- package/std/std.zig +8 -1
- package/std/tar/Writer.zig +39 -33
- package/std/tar.zig +8 -4
- package/std/testing.zig +2 -2
- package/std/unicode.zig +13 -8
- package/std/zig/Ast/Render.zig +6 -30
- package/std/zig/Ast.zig +12 -37
- package/std/zig/AstGen.zig +175 -332
- package/std/zig/AstRlAnnotate.zig +1 -22
- package/std/zig/AstSmith.zig +5 -11
- package/std/zig/BuiltinFn.zig +0 -32
- package/std/zig/ErrorBundle.zig +6 -2
- package/std/zig/LibCDirs.zig +15 -6
- package/std/zig/LibCInstallation.zig +34 -12
- package/std/zig/Parse.zig +11 -76
- package/std/zig/TokenSmith.zig +0 -6
- package/std/zig/WindowsSdk.zig +18 -18
- package/std/zig/Zir.zig +65 -132
- package/std/zig/ZonGen.zig +19 -27
- package/std/zig/llvm/Builder.zig +39 -33
- package/std/zig/llvm/bitcode_writer.zig +3 -3
- package/std/zig/llvm/ir.zig +8 -8
- package/std/zig/system/arm.zig +56 -2
- package/std/zig/system/windows.zig +34 -1
- package/std/zig/system/x86.zig +60 -16
- package/std/zig/system.zig +0 -10
- package/std/zig/target.zig +1 -4
- package/std/zig/tokenizer.zig +4 -43
- package/std/zig.zig +3 -14
- package/std/zip.zig +5 -5
- package/std/zon/parse.zig +1 -1
- package/zig.h +340 -1
- package/compiler_rt/long_double.zig +0 -37
- package/include/amxbf16transposeintrin.h +0 -94
- package/include/amxcomplextransposeintrin.h +0 -303
- package/include/amxfp16transposeintrin.h +0 -94
- package/include/amxmovrstransposeintrin.h +0 -200
- package/include/amxtf32transposeintrin.h +0 -105
- package/include/amxtransposeintrin.h +0 -248
- package/libc/include/hexagon-linux-any/asm/signal.h +0 -29
- package/libc/include/s390x-linux-any/asm/tape390.h +0 -103
- package/libc/mingw/math/lrintl.c +0 -18
- package/libc/mingw/math/rintl.c +0 -16
- package/libc/mingw/winpthreads/spinlock.c +0 -82
- package/libc/musl/src/linux/tee.c +0 -8
- package/libc/musl/src/math/i386/lrintl.c +0 -8
- package/libc/musl/src/math/i386/rintl.c +0 -7
- package/libc/musl/src/math/lrintl.c +0 -36
- package/libc/musl/src/math/rintl.c +0 -29
- package/libc/musl/src/math/s390x/rintl.c +0 -15
- package/libc/musl/src/math/x32/lrintl.s +0 -7
- package/libc/musl/src/math/x32/rintl.s +0 -6
- package/libc/musl/src/math/x86_64/lrintl.c +0 -8
- package/libc/musl/src/math/x86_64/rintl.c +0 -7
- package/libc/musl/src/string/strdup.c +0 -10
- package/libc/musl/src/string/strndup.c +0 -12
- package/libc/musl/src/string/wcsdup.c +0 -10
- package/libc/musl/src/thread/pthread_spin_destroy.c +0 -6
- package/libc/musl/src/thread/pthread_spin_init.c +0 -6
- package/libc/musl/src/thread/pthread_spin_lock.c +0 -8
- package/libc/musl/src/thread/pthread_spin_trylock.c +0 -7
- package/libc/musl/src/thread/pthread_spin_unlock.c +0 -7
- package/libc/musl/src/unistd/dup2.c +0 -20
- package/libc/musl/src/unistd/dup3.c +0 -26
- package/libc/wasi/thread-stub/pthread_spin_lock.c +0 -8
- package/libc/wasi/thread-stub/pthread_spin_trylock.c +0 -8
- package/libc/wasi/thread-stub/pthread_spin_unlock.c +0 -7
- package/libtsan/sanitizer_common/sanitizer_coverage_interface.inc +0 -43
- package/std/Build/Step/CheckObject.zig +0 -2764
- /package/std/{builtin → lang}/assembly.zig +0 -0
package/include/avx512fintrin.h
CHANGED
|
@@ -167,22 +167,23 @@ typedef enum
|
|
|
167
167
|
} _MM_MANTISSA_SIGN_ENUM;
|
|
168
168
|
|
|
169
169
|
/* Define the default attributes for the functions in this file. */
|
|
170
|
-
#define __DEFAULT_FN_ATTRS512
|
|
170
|
+
#define __DEFAULT_FN_ATTRS512 \
|
|
171
|
+
__attribute__((__always_inline__, __nodebug__, __target__("avx512f"), \
|
|
172
|
+
__min_vector_width__(512)))
|
|
171
173
|
#define __DEFAULT_FN_ATTRS128 \
|
|
172
|
-
__attribute__((__always_inline__, __nodebug__,
|
|
173
|
-
|
|
174
|
+
__attribute__((__always_inline__, __nodebug__, __target__("avx512f"), \
|
|
175
|
+
__min_vector_width__(128)))
|
|
174
176
|
#define __DEFAULT_FN_ATTRS \
|
|
175
|
-
__attribute__((__always_inline__, __nodebug__,
|
|
176
|
-
__target__("avx512f,no-evex512")))
|
|
177
|
+
__attribute__((__always_inline__, __nodebug__, __target__("avx512f")))
|
|
177
178
|
|
|
178
179
|
#if defined(__cplusplus) && (__cplusplus >= 201103L)
|
|
179
180
|
#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS constexpr
|
|
180
181
|
#define __DEFAULT_FN_ATTRS512_CONSTEXPR __DEFAULT_FN_ATTRS512 constexpr
|
|
181
182
|
#define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS128 constexpr
|
|
182
183
|
#else
|
|
183
|
-
#define __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
184
|
+
#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS
|
|
184
185
|
#define __DEFAULT_FN_ATTRS512_CONSTEXPR __DEFAULT_FN_ATTRS512
|
|
185
|
-
#define __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
186
|
+
#define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS128
|
|
186
187
|
#endif
|
|
187
188
|
|
|
188
189
|
/* Create vectors with repeated elements */
|
|
@@ -206,9 +207,7 @@ _mm512_undefined(void)
|
|
|
206
207
|
return (__m512)__builtin_ia32_undef512();
|
|
207
208
|
}
|
|
208
209
|
|
|
209
|
-
static __inline__ __m512 __DEFAULT_FN_ATTRS512
|
|
210
|
-
_mm512_undefined_ps(void)
|
|
211
|
-
{
|
|
210
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512 _mm512_undefined_ps(void) {
|
|
212
211
|
return (__m512)__builtin_ia32_undef512();
|
|
213
212
|
}
|
|
214
213
|
|
|
@@ -218,48 +217,40 @@ _mm512_undefined_epi32(void)
|
|
|
218
217
|
return (__m512i)__builtin_ia32_undef512();
|
|
219
218
|
}
|
|
220
219
|
|
|
221
|
-
static __inline__ __m512i
|
|
222
|
-
_mm512_broadcastd_epi32
|
|
223
|
-
{
|
|
220
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
221
|
+
_mm512_broadcastd_epi32(__m128i __A) {
|
|
224
222
|
return (__m512i)__builtin_shufflevector((__v4si) __A, (__v4si) __A,
|
|
225
223
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
|
|
226
224
|
}
|
|
227
225
|
|
|
228
|
-
static __inline__ __m512i
|
|
229
|
-
_mm512_mask_broadcastd_epi32
|
|
230
|
-
{
|
|
226
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
227
|
+
_mm512_mask_broadcastd_epi32(__m512i __O, __mmask16 __M, __m128i __A) {
|
|
231
228
|
return (__m512i)__builtin_ia32_selectd_512(__M,
|
|
232
229
|
(__v16si) _mm512_broadcastd_epi32(__A),
|
|
233
230
|
(__v16si) __O);
|
|
234
231
|
}
|
|
235
232
|
|
|
236
|
-
static __inline__ __m512i
|
|
237
|
-
_mm512_maskz_broadcastd_epi32
|
|
238
|
-
{
|
|
233
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
234
|
+
_mm512_maskz_broadcastd_epi32(__mmask16 __M, __m128i __A) {
|
|
239
235
|
return (__m512i)__builtin_ia32_selectd_512(__M,
|
|
240
236
|
(__v16si) _mm512_broadcastd_epi32(__A),
|
|
241
237
|
(__v16si) _mm512_setzero_si512());
|
|
242
238
|
}
|
|
243
239
|
|
|
244
|
-
static __inline__ __m512i
|
|
245
|
-
_mm512_broadcastq_epi64
|
|
246
|
-
{
|
|
240
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
241
|
+
_mm512_broadcastq_epi64(__m128i __A) {
|
|
247
242
|
return (__m512i)__builtin_shufflevector((__v2di) __A, (__v2di) __A,
|
|
248
243
|
0, 0, 0, 0, 0, 0, 0, 0);
|
|
249
244
|
}
|
|
250
245
|
|
|
251
|
-
static __inline__ __m512i
|
|
252
|
-
_mm512_mask_broadcastq_epi64
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
(__v8di) _mm512_broadcastq_epi64(__A),
|
|
256
|
-
(__v8di) __O);
|
|
257
|
-
|
|
246
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
247
|
+
_mm512_mask_broadcastq_epi64(__m512i __O, __mmask8 __M, __m128i __A) {
|
|
248
|
+
return (__m512i)__builtin_ia32_selectq_512(
|
|
249
|
+
__M, (__v8di)_mm512_broadcastq_epi64(__A), (__v8di)__O);
|
|
258
250
|
}
|
|
259
251
|
|
|
260
|
-
static __inline__ __m512i
|
|
261
|
-
_mm512_maskz_broadcastq_epi64
|
|
262
|
-
{
|
|
252
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
253
|
+
_mm512_maskz_broadcastq_epi64(__mmask8 __M, __m128i __A) {
|
|
263
254
|
return (__m512i)__builtin_ia32_selectq_512(__M,
|
|
264
255
|
(__v8di) _mm512_broadcastq_epi64(__A),
|
|
265
256
|
(__v8di) _mm512_setzero_si512());
|
|
@@ -277,20 +268,20 @@ _mm512_setzero_pd(void) {
|
|
|
277
268
|
return __extension__(__m512d){0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
|
|
278
269
|
}
|
|
279
270
|
|
|
280
|
-
static __inline __m512
|
|
271
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
281
272
|
_mm512_set1_ps(float __w)
|
|
282
273
|
{
|
|
283
274
|
return __extension__ (__m512){ __w, __w, __w, __w, __w, __w, __w, __w,
|
|
284
275
|
__w, __w, __w, __w, __w, __w, __w, __w };
|
|
285
276
|
}
|
|
286
277
|
|
|
287
|
-
static __inline __m512d
|
|
278
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
288
279
|
_mm512_set1_pd(double __w)
|
|
289
280
|
{
|
|
290
281
|
return __extension__ (__m512d){ __w, __w, __w, __w, __w, __w, __w, __w };
|
|
291
282
|
}
|
|
292
283
|
|
|
293
|
-
static __inline __m512i
|
|
284
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
294
285
|
_mm512_set1_epi8(char __w)
|
|
295
286
|
{
|
|
296
287
|
return __extension__ (__m512i)(__v64qi){
|
|
@@ -304,7 +295,7 @@ _mm512_set1_epi8(char __w)
|
|
|
304
295
|
__w, __w, __w, __w, __w, __w, __w, __w };
|
|
305
296
|
}
|
|
306
297
|
|
|
307
|
-
static __inline __m512i
|
|
298
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
308
299
|
_mm512_set1_epi16(short __w)
|
|
309
300
|
{
|
|
310
301
|
return __extension__ (__m512i)(__v32hi){
|
|
@@ -314,7 +305,7 @@ _mm512_set1_epi16(short __w)
|
|
|
314
305
|
__w, __w, __w, __w, __w, __w, __w, __w };
|
|
315
306
|
}
|
|
316
307
|
|
|
317
|
-
static __inline __m512i
|
|
308
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
318
309
|
_mm512_set1_epi32(int __s)
|
|
319
310
|
{
|
|
320
311
|
return __extension__ (__m512i)(__v16si){
|
|
@@ -322,81 +313,80 @@ _mm512_set1_epi32(int __s)
|
|
|
322
313
|
__s, __s, __s, __s, __s, __s, __s, __s };
|
|
323
314
|
}
|
|
324
315
|
|
|
325
|
-
static __inline __m512i
|
|
326
|
-
_mm512_maskz_set1_epi32(__mmask16 __M, int __A)
|
|
327
|
-
{
|
|
316
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
317
|
+
_mm512_maskz_set1_epi32(__mmask16 __M, int __A) {
|
|
328
318
|
return (__m512i)__builtin_ia32_selectd_512(__M,
|
|
329
319
|
(__v16si)_mm512_set1_epi32(__A),
|
|
330
320
|
(__v16si)_mm512_setzero_si512());
|
|
331
321
|
}
|
|
332
322
|
|
|
333
|
-
static __inline __m512i
|
|
323
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
334
324
|
_mm512_set1_epi64(long long __d)
|
|
335
325
|
{
|
|
336
326
|
return __extension__(__m512i)(__v8di){ __d, __d, __d, __d, __d, __d, __d, __d };
|
|
337
327
|
}
|
|
338
328
|
|
|
339
|
-
static __inline __m512i
|
|
340
|
-
_mm512_maskz_set1_epi64(__mmask8 __M, long long __A)
|
|
341
|
-
{
|
|
329
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
330
|
+
_mm512_maskz_set1_epi64(__mmask8 __M, long long __A) {
|
|
342
331
|
return (__m512i)__builtin_ia32_selectq_512(__M,
|
|
343
332
|
(__v8di)_mm512_set1_epi64(__A),
|
|
344
333
|
(__v8di)_mm512_setzero_si512());
|
|
345
334
|
}
|
|
346
335
|
|
|
347
|
-
static __inline__ __m512
|
|
348
|
-
_mm512_broadcastss_ps(__m128 __A)
|
|
349
|
-
{
|
|
336
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
337
|
+
_mm512_broadcastss_ps(__m128 __A) {
|
|
350
338
|
return (__m512)__builtin_shufflevector((__v4sf) __A, (__v4sf) __A,
|
|
351
339
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
|
|
352
340
|
}
|
|
353
341
|
|
|
354
|
-
static __inline __m512i
|
|
355
|
-
_mm512_set4_epi32
|
|
356
|
-
{
|
|
342
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
343
|
+
_mm512_set4_epi32(int __A, int __B, int __C, int __D) {
|
|
357
344
|
return __extension__ (__m512i)(__v16si)
|
|
358
345
|
{ __D, __C, __B, __A, __D, __C, __B, __A,
|
|
359
346
|
__D, __C, __B, __A, __D, __C, __B, __A };
|
|
360
347
|
}
|
|
361
348
|
|
|
362
|
-
static __inline __m512i
|
|
363
|
-
_mm512_set4_epi64
|
|
364
|
-
long long __D)
|
|
365
|
-
{
|
|
349
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
350
|
+
_mm512_set4_epi64(long long __A, long long __B, long long __C, long long __D) {
|
|
366
351
|
return __extension__ (__m512i) (__v8di)
|
|
367
352
|
{ __D, __C, __B, __A, __D, __C, __B, __A };
|
|
368
353
|
}
|
|
369
354
|
|
|
370
|
-
static __inline __m512d
|
|
371
|
-
_mm512_set4_pd
|
|
372
|
-
{
|
|
355
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
356
|
+
_mm512_set4_pd(double __A, double __B, double __C, double __D) {
|
|
373
357
|
return __extension__ (__m512d)
|
|
374
358
|
{ __D, __C, __B, __A, __D, __C, __B, __A };
|
|
375
359
|
}
|
|
376
360
|
|
|
377
|
-
static __inline __m512
|
|
378
|
-
_mm512_set4_ps
|
|
379
|
-
{
|
|
361
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
362
|
+
_mm512_set4_ps(float __A, float __B, float __C, float __D) {
|
|
380
363
|
return __extension__ (__m512)
|
|
381
364
|
{ __D, __C, __B, __A, __D, __C, __B, __A,
|
|
382
365
|
__D, __C, __B, __A, __D, __C, __B, __A };
|
|
383
366
|
}
|
|
384
367
|
|
|
385
|
-
|
|
386
|
-
|
|
368
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
369
|
+
_mm512_setr4_epi32(int e0, int e1, int e2, int e3) {
|
|
370
|
+
return _mm512_set4_epi32(e3, e2, e1, e0);
|
|
371
|
+
}
|
|
387
372
|
|
|
388
|
-
|
|
389
|
-
|
|
373
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
374
|
+
_mm512_setr4_epi64(long long e0, long long e1, long long e2, long long e3) {
|
|
375
|
+
return _mm512_set4_epi64(e3, e2, e1, e0);
|
|
376
|
+
}
|
|
390
377
|
|
|
391
|
-
|
|
392
|
-
|
|
378
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
379
|
+
_mm512_setr4_pd(double e0, double e1, double e2, double e3) {
|
|
380
|
+
return _mm512_set4_pd(e3, e2, e1, e0);
|
|
381
|
+
}
|
|
393
382
|
|
|
394
|
-
|
|
395
|
-
|
|
383
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
384
|
+
_mm512_setr4_ps(float e0, float e1, float e2, float e3) {
|
|
385
|
+
return _mm512_set4_ps(e3, e2, e1, e0);
|
|
386
|
+
}
|
|
396
387
|
|
|
397
|
-
static __inline__ __m512d
|
|
398
|
-
_mm512_broadcastsd_pd(__m128d __A)
|
|
399
|
-
{
|
|
388
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
389
|
+
_mm512_broadcastsd_pd(__m128d __A) {
|
|
400
390
|
return (__m512d)__builtin_shufflevector((__v2df) __A, (__v2df) __A,
|
|
401
391
|
0, 0, 0, 0, 0, 0, 0, 0);
|
|
402
392
|
}
|
|
@@ -417,37 +407,36 @@ _mm512_castps256_ps512(__m256 __a)
|
|
|
417
407
|
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
|
|
418
408
|
}
|
|
419
409
|
|
|
420
|
-
static __inline __m128d
|
|
410
|
+
static __inline __m128d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
421
411
|
_mm512_castpd512_pd128(__m512d __a)
|
|
422
412
|
{
|
|
423
413
|
return __builtin_shufflevector(__a, __a, 0, 1);
|
|
424
414
|
}
|
|
425
415
|
|
|
426
|
-
static __inline __m256d
|
|
416
|
+
static __inline __m256d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
427
417
|
_mm512_castpd512_pd256 (__m512d __A)
|
|
428
418
|
{
|
|
429
419
|
return __builtin_shufflevector(__A, __A, 0, 1, 2, 3);
|
|
430
420
|
}
|
|
431
421
|
|
|
432
|
-
static __inline __m128
|
|
422
|
+
static __inline __m128 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
433
423
|
_mm512_castps512_ps128(__m512 __a)
|
|
434
424
|
{
|
|
435
425
|
return __builtin_shufflevector(__a, __a, 0, 1, 2, 3);
|
|
436
426
|
}
|
|
437
427
|
|
|
438
|
-
static __inline __m256
|
|
439
|
-
_mm512_castps512_ps256
|
|
440
|
-
{
|
|
428
|
+
static __inline __m256 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
429
|
+
_mm512_castps512_ps256(__m512 __A) {
|
|
441
430
|
return __builtin_shufflevector(__A, __A, 0, 1, 2, 3, 4, 5, 6, 7);
|
|
442
431
|
}
|
|
443
432
|
|
|
444
|
-
static __inline __m512
|
|
433
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
445
434
|
_mm512_castpd_ps (__m512d __A)
|
|
446
435
|
{
|
|
447
436
|
return (__m512) (__A);
|
|
448
437
|
}
|
|
449
438
|
|
|
450
|
-
static __inline __m512i
|
|
439
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
451
440
|
_mm512_castpd_si512 (__m512d __A)
|
|
452
441
|
{
|
|
453
442
|
return (__m512i) (__A);
|
|
@@ -462,13 +451,13 @@ _mm512_castpd128_pd512 (__m128d __A)
|
|
|
462
451
|
__B, 0, 1, 2, 3, 4, 5, 6, 7);
|
|
463
452
|
}
|
|
464
453
|
|
|
465
|
-
static __inline __m512d
|
|
454
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
466
455
|
_mm512_castps_pd (__m512 __A)
|
|
467
456
|
{
|
|
468
457
|
return (__m512d) (__A);
|
|
469
458
|
}
|
|
470
459
|
|
|
471
|
-
static __inline __m512i
|
|
460
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
472
461
|
_mm512_castps_si512 (__m512 __A)
|
|
473
462
|
{
|
|
474
463
|
return (__m512i) (__A);
|
|
@@ -498,39 +487,36 @@ _mm512_castsi256_si512 (__m256i __A)
|
|
|
498
487
|
return __builtin_shufflevector( __A, __builtin_nondeterministic_value(__A), 0, 1, 2, 3, 4, 5, 6, 7);
|
|
499
488
|
}
|
|
500
489
|
|
|
501
|
-
static __inline __m512
|
|
490
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
502
491
|
_mm512_castsi512_ps (__m512i __A)
|
|
503
492
|
{
|
|
504
493
|
return (__m512) (__A);
|
|
505
494
|
}
|
|
506
495
|
|
|
507
|
-
static __inline __m512d
|
|
496
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
508
497
|
_mm512_castsi512_pd (__m512i __A)
|
|
509
498
|
{
|
|
510
499
|
return (__m512d) (__A);
|
|
511
500
|
}
|
|
512
501
|
|
|
513
|
-
static __inline __m128i
|
|
502
|
+
static __inline __m128i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
514
503
|
_mm512_castsi512_si128 (__m512i __A)
|
|
515
504
|
{
|
|
516
505
|
return (__m128i)__builtin_shufflevector(__A, __A , 0, 1);
|
|
517
506
|
}
|
|
518
507
|
|
|
519
|
-
static __inline __m256i
|
|
520
|
-
_mm512_castsi512_si256
|
|
521
|
-
{
|
|
508
|
+
static __inline __m256i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
509
|
+
_mm512_castsi512_si256(__m512i __A) {
|
|
522
510
|
return (__m256i)__builtin_shufflevector(__A, __A , 0, 1, 2, 3);
|
|
523
511
|
}
|
|
524
512
|
|
|
525
|
-
static __inline__ __mmask16
|
|
526
|
-
_mm512_int2mask(int __a)
|
|
527
|
-
{
|
|
513
|
+
static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
514
|
+
_mm512_int2mask(int __a) {
|
|
528
515
|
return (__mmask16)__a;
|
|
529
516
|
}
|
|
530
517
|
|
|
531
|
-
static __inline__ int
|
|
532
|
-
_mm512_mask2int(__mmask16 __a)
|
|
533
|
-
{
|
|
518
|
+
static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
519
|
+
_mm512_mask2int(__mmask16 __a) {
|
|
534
520
|
return (int)__a;
|
|
535
521
|
}
|
|
536
522
|
|
|
@@ -547,9 +533,8 @@ _mm512_mask2int(__mmask16 __a)
|
|
|
547
533
|
/// A 128-bit vector of [2 x double].
|
|
548
534
|
/// \returns A 512-bit floating-point vector of [8 x double]. The lower 128 bits
|
|
549
535
|
/// contain the value of the parameter. The upper 384 bits are set to zero.
|
|
550
|
-
static __inline __m512d
|
|
551
|
-
_mm512_zextpd128_pd512(__m128d __a)
|
|
552
|
-
{
|
|
536
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
537
|
+
_mm512_zextpd128_pd512(__m128d __a) {
|
|
553
538
|
return __builtin_shufflevector((__v2df)__a, (__v2df)_mm_setzero_pd(), 0, 1, 2, 3, 2, 3, 2, 3);
|
|
554
539
|
}
|
|
555
540
|
|
|
@@ -566,9 +551,8 @@ _mm512_zextpd128_pd512(__m128d __a)
|
|
|
566
551
|
/// A 256-bit vector of [4 x double].
|
|
567
552
|
/// \returns A 512-bit floating-point vector of [8 x double]. The lower 256 bits
|
|
568
553
|
/// contain the value of the parameter. The upper 256 bits are set to zero.
|
|
569
|
-
static __inline __m512d
|
|
570
|
-
_mm512_zextpd256_pd512(__m256d __a)
|
|
571
|
-
{
|
|
554
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
555
|
+
_mm512_zextpd256_pd512(__m256d __a) {
|
|
572
556
|
return __builtin_shufflevector((__v4df)__a, (__v4df)_mm256_setzero_pd(), 0, 1, 2, 3, 4, 5, 6, 7);
|
|
573
557
|
}
|
|
574
558
|
|
|
@@ -584,9 +568,8 @@ _mm512_zextpd256_pd512(__m256d __a)
|
|
|
584
568
|
/// A 128-bit vector of [4 x float].
|
|
585
569
|
/// \returns A 512-bit floating-point vector of [16 x float]. The lower 128 bits
|
|
586
570
|
/// contain the value of the parameter. The upper 384 bits are set to zero.
|
|
587
|
-
static __inline __m512
|
|
588
|
-
_mm512_zextps128_ps512(__m128 __a)
|
|
589
|
-
{
|
|
571
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
572
|
+
_mm512_zextps128_ps512(__m128 __a) {
|
|
590
573
|
return __builtin_shufflevector((__v4sf)__a, (__v4sf)_mm_setzero_ps(), 0, 1, 2, 3, 4, 5, 6, 7, 4, 5, 6, 7, 4, 5, 6, 7);
|
|
591
574
|
}
|
|
592
575
|
|
|
@@ -602,9 +585,8 @@ _mm512_zextps128_ps512(__m128 __a)
|
|
|
602
585
|
/// A 256-bit vector of [8 x float].
|
|
603
586
|
/// \returns A 512-bit floating-point vector of [16 x float]. The lower 256 bits
|
|
604
587
|
/// contain the value of the parameter. The upper 256 bits are set to zero.
|
|
605
|
-
static __inline __m512
|
|
606
|
-
_mm512_zextps256_ps512(__m256 __a)
|
|
607
|
-
{
|
|
588
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
589
|
+
_mm512_zextps256_ps512(__m256 __a) {
|
|
608
590
|
return __builtin_shufflevector((__v8sf)__a, (__v8sf)_mm256_setzero_ps(), 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
|
|
609
591
|
}
|
|
610
592
|
|
|
@@ -620,9 +602,8 @@ _mm512_zextps256_ps512(__m256 __a)
|
|
|
620
602
|
/// A 128-bit integer vector.
|
|
621
603
|
/// \returns A 512-bit integer vector. The lower 128 bits contain the value of
|
|
622
604
|
/// the parameter. The upper 384 bits are set to zero.
|
|
623
|
-
static __inline __m512i
|
|
624
|
-
_mm512_zextsi128_si512(__m128i __a)
|
|
625
|
-
{
|
|
605
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
606
|
+
_mm512_zextsi128_si512(__m128i __a) {
|
|
626
607
|
return __builtin_shufflevector((__v2di)__a, (__v2di)_mm_setzero_si128(), 0, 1, 2, 3, 2, 3, 2, 3);
|
|
627
608
|
}
|
|
628
609
|
|
|
@@ -638,22 +619,20 @@ _mm512_zextsi128_si512(__m128i __a)
|
|
|
638
619
|
/// A 256-bit integer vector.
|
|
639
620
|
/// \returns A 512-bit integer vector. The lower 256 bits contain the value of
|
|
640
621
|
/// the parameter. The upper 256 bits are set to zero.
|
|
641
|
-
static __inline __m512i
|
|
642
|
-
_mm512_zextsi256_si512(__m256i __a)
|
|
643
|
-
{
|
|
622
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
623
|
+
_mm512_zextsi256_si512(__m256i __a) {
|
|
644
624
|
return __builtin_shufflevector((__v4di)__a, (__v4di)_mm256_setzero_si256(), 0, 1, 2, 3, 4, 5, 6, 7);
|
|
645
625
|
}
|
|
646
626
|
|
|
647
627
|
/* Bitwise operators */
|
|
648
|
-
static __inline__ __m512i
|
|
628
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
649
629
|
_mm512_and_epi32(__m512i __a, __m512i __b)
|
|
650
630
|
{
|
|
651
631
|
return (__m512i)((__v16su)__a & (__v16su)__b);
|
|
652
632
|
}
|
|
653
633
|
|
|
654
|
-
static __inline__ __m512i
|
|
655
|
-
_mm512_mask_and_epi32(__m512i __src, __mmask16 __k, __m512i __a, __m512i __b)
|
|
656
|
-
{
|
|
634
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
635
|
+
_mm512_mask_and_epi32(__m512i __src, __mmask16 __k, __m512i __a, __m512i __b) {
|
|
657
636
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__k,
|
|
658
637
|
(__v16si) _mm512_and_epi32(__a, __b),
|
|
659
638
|
(__v16si) __src);
|
|
@@ -666,18 +645,16 @@ _mm512_maskz_and_epi32(__mmask16 __k, __m512i __a, __m512i __b)
|
|
|
666
645
|
__k, __a, __b);
|
|
667
646
|
}
|
|
668
647
|
|
|
669
|
-
static __inline__ __m512i
|
|
648
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
670
649
|
_mm512_and_epi64(__m512i __a, __m512i __b)
|
|
671
650
|
{
|
|
672
651
|
return (__m512i)((__v8du)__a & (__v8du)__b);
|
|
673
652
|
}
|
|
674
653
|
|
|
675
|
-
static __inline__ __m512i
|
|
676
|
-
_mm512_mask_and_epi64(__m512i __src, __mmask8 __k, __m512i __a, __m512i __b)
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
(__v8di) _mm512_and_epi64(__a, __b),
|
|
680
|
-
(__v8di) __src);
|
|
654
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
655
|
+
_mm512_mask_and_epi64(__m512i __src, __mmask8 __k, __m512i __a, __m512i __b) {
|
|
656
|
+
return (__m512i)__builtin_ia32_selectq_512(
|
|
657
|
+
(__mmask8)__k, (__v8di)_mm512_and_epi64(__a, __b), (__v8di)__src);
|
|
681
658
|
}
|
|
682
659
|
|
|
683
660
|
static __inline__ __m512i __DEFAULT_FN_ATTRS512
|
|
@@ -687,13 +664,13 @@ _mm512_maskz_and_epi64(__mmask8 __k, __m512i __a, __m512i __b)
|
|
|
687
664
|
__k, __a, __b);
|
|
688
665
|
}
|
|
689
666
|
|
|
690
|
-
static __inline__ __m512i
|
|
667
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
691
668
|
_mm512_andnot_si512 (__m512i __A, __m512i __B)
|
|
692
669
|
{
|
|
693
670
|
return (__m512i)(~(__v8du)__A & (__v8du)__B);
|
|
694
671
|
}
|
|
695
672
|
|
|
696
|
-
static __inline__ __m512i
|
|
673
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
697
674
|
_mm512_andnot_epi32 (__m512i __A, __m512i __B)
|
|
698
675
|
{
|
|
699
676
|
return (__m512i)(~(__v16su)__A & (__v16su)__B);
|
|
@@ -714,7 +691,7 @@ _mm512_maskz_andnot_epi32(__mmask16 __U, __m512i __A, __m512i __B)
|
|
|
714
691
|
__U, __A, __B);
|
|
715
692
|
}
|
|
716
693
|
|
|
717
|
-
static __inline__ __m512i
|
|
694
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
718
695
|
_mm512_andnot_epi64(__m512i __A, __m512i __B)
|
|
719
696
|
{
|
|
720
697
|
return (__m512i)(~(__v8du)__A & (__v8du)__B);
|
|
@@ -735,7 +712,7 @@ _mm512_maskz_andnot_epi64(__mmask8 __U, __m512i __A, __m512i __B)
|
|
|
735
712
|
__U, __A, __B);
|
|
736
713
|
}
|
|
737
714
|
|
|
738
|
-
static __inline__ __m512i
|
|
715
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
739
716
|
_mm512_or_epi32(__m512i __a, __m512i __b)
|
|
740
717
|
{
|
|
741
718
|
return (__m512i)((__v16su)__a | (__v16su)__b);
|
|
@@ -755,7 +732,7 @@ _mm512_maskz_or_epi32(__mmask16 __k, __m512i __a, __m512i __b)
|
|
|
755
732
|
return (__m512i)_mm512_mask_or_epi32(_mm512_setzero_si512(), __k, __a, __b);
|
|
756
733
|
}
|
|
757
734
|
|
|
758
|
-
static __inline__ __m512i
|
|
735
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
759
736
|
_mm512_or_epi64(__m512i __a, __m512i __b)
|
|
760
737
|
{
|
|
761
738
|
return (__m512i)((__v8du)__a | (__v8du)__b);
|
|
@@ -775,7 +752,7 @@ _mm512_maskz_or_epi64(__mmask8 __k, __m512i __a, __m512i __b)
|
|
|
775
752
|
return (__m512i)_mm512_mask_or_epi64(_mm512_setzero_si512(), __k, __a, __b);
|
|
776
753
|
}
|
|
777
754
|
|
|
778
|
-
static __inline__ __m512i
|
|
755
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
779
756
|
_mm512_xor_epi32(__m512i __a, __m512i __b)
|
|
780
757
|
{
|
|
781
758
|
return (__m512i)((__v16su)__a ^ (__v16su)__b);
|
|
@@ -795,7 +772,7 @@ _mm512_maskz_xor_epi32(__mmask16 __k, __m512i __a, __m512i __b)
|
|
|
795
772
|
return (__m512i)_mm512_mask_xor_epi32(_mm512_setzero_si512(), __k, __a, __b);
|
|
796
773
|
}
|
|
797
774
|
|
|
798
|
-
static __inline__ __m512i
|
|
775
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
799
776
|
_mm512_xor_epi64(__m512i __a, __m512i __b)
|
|
800
777
|
{
|
|
801
778
|
return (__m512i)((__v8du)__a ^ (__v8du)__b);
|
|
@@ -815,19 +792,19 @@ _mm512_maskz_xor_epi64(__mmask8 __k, __m512i __a, __m512i __b)
|
|
|
815
792
|
return (__m512i)_mm512_mask_xor_epi64(_mm512_setzero_si512(), __k, __a, __b);
|
|
816
793
|
}
|
|
817
794
|
|
|
818
|
-
static __inline__ __m512i
|
|
795
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
819
796
|
_mm512_and_si512(__m512i __a, __m512i __b)
|
|
820
797
|
{
|
|
821
798
|
return (__m512i)((__v8du)__a & (__v8du)__b);
|
|
822
799
|
}
|
|
823
800
|
|
|
824
|
-
static __inline__ __m512i
|
|
801
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
825
802
|
_mm512_or_si512(__m512i __a, __m512i __b)
|
|
826
803
|
{
|
|
827
804
|
return (__m512i)((__v8du)__a | (__v8du)__b);
|
|
828
805
|
}
|
|
829
806
|
|
|
830
|
-
static __inline__ __m512i
|
|
807
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
831
808
|
_mm512_xor_si512(__m512i __a, __m512i __b)
|
|
832
809
|
{
|
|
833
810
|
return (__m512i)((__v8du)__a ^ (__v8du)__b);
|
|
@@ -835,125 +812,107 @@ _mm512_xor_si512(__m512i __a, __m512i __b)
|
|
|
835
812
|
|
|
836
813
|
/* Arithmetic */
|
|
837
814
|
|
|
838
|
-
static __inline __m512d
|
|
839
|
-
_mm512_add_pd(__m512d __a, __m512d __b)
|
|
840
|
-
{
|
|
815
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
816
|
+
_mm512_add_pd(__m512d __a, __m512d __b) {
|
|
841
817
|
return (__m512d)((__v8df)__a + (__v8df)__b);
|
|
842
818
|
}
|
|
843
819
|
|
|
844
|
-
static __inline __m512
|
|
845
|
-
_mm512_add_ps(__m512 __a, __m512 __b)
|
|
846
|
-
{
|
|
820
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
821
|
+
_mm512_add_ps(__m512 __a, __m512 __b) {
|
|
847
822
|
return (__m512)((__v16sf)__a + (__v16sf)__b);
|
|
848
823
|
}
|
|
849
824
|
|
|
850
|
-
static __inline __m512d
|
|
851
|
-
_mm512_mul_pd(__m512d __a, __m512d __b)
|
|
852
|
-
{
|
|
825
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
826
|
+
_mm512_mul_pd(__m512d __a, __m512d __b) {
|
|
853
827
|
return (__m512d)((__v8df)__a * (__v8df)__b);
|
|
854
828
|
}
|
|
855
829
|
|
|
856
|
-
static __inline __m512
|
|
857
|
-
_mm512_mul_ps(__m512 __a, __m512 __b)
|
|
858
|
-
{
|
|
830
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
831
|
+
_mm512_mul_ps(__m512 __a, __m512 __b) {
|
|
859
832
|
return (__m512)((__v16sf)__a * (__v16sf)__b);
|
|
860
833
|
}
|
|
861
834
|
|
|
862
|
-
static __inline __m512d
|
|
863
|
-
_mm512_sub_pd(__m512d __a, __m512d __b)
|
|
864
|
-
{
|
|
835
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
836
|
+
_mm512_sub_pd(__m512d __a, __m512d __b) {
|
|
865
837
|
return (__m512d)((__v8df)__a - (__v8df)__b);
|
|
866
838
|
}
|
|
867
839
|
|
|
868
|
-
static __inline __m512
|
|
869
|
-
_mm512_sub_ps(__m512 __a, __m512 __b)
|
|
870
|
-
{
|
|
840
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
841
|
+
_mm512_sub_ps(__m512 __a, __m512 __b) {
|
|
871
842
|
return (__m512)((__v16sf)__a - (__v16sf)__b);
|
|
872
843
|
}
|
|
873
844
|
|
|
874
|
-
static __inline__ __m512i
|
|
875
|
-
_mm512_add_epi64
|
|
876
|
-
{
|
|
845
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
846
|
+
_mm512_add_epi64(__m512i __A, __m512i __B) {
|
|
877
847
|
return (__m512i) ((__v8du) __A + (__v8du) __B);
|
|
878
848
|
}
|
|
879
849
|
|
|
880
|
-
static __inline__ __m512i
|
|
881
|
-
_mm512_mask_add_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
882
|
-
{
|
|
850
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
851
|
+
_mm512_mask_add_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) {
|
|
883
852
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
884
853
|
(__v8di)_mm512_add_epi64(__A, __B),
|
|
885
854
|
(__v8di)__W);
|
|
886
855
|
}
|
|
887
856
|
|
|
888
|
-
static __inline__ __m512i
|
|
889
|
-
_mm512_maskz_add_epi64(__mmask8 __U, __m512i __A, __m512i __B)
|
|
890
|
-
{
|
|
857
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
858
|
+
_mm512_maskz_add_epi64(__mmask8 __U, __m512i __A, __m512i __B) {
|
|
891
859
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
892
860
|
(__v8di)_mm512_add_epi64(__A, __B),
|
|
893
861
|
(__v8di)_mm512_setzero_si512());
|
|
894
862
|
}
|
|
895
863
|
|
|
896
|
-
static __inline__ __m512i
|
|
897
|
-
_mm512_sub_epi64
|
|
898
|
-
{
|
|
864
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
865
|
+
_mm512_sub_epi64(__m512i __A, __m512i __B) {
|
|
899
866
|
return (__m512i) ((__v8du) __A - (__v8du) __B);
|
|
900
867
|
}
|
|
901
868
|
|
|
902
|
-
static __inline__ __m512i
|
|
903
|
-
_mm512_mask_sub_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
904
|
-
{
|
|
869
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
870
|
+
_mm512_mask_sub_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) {
|
|
905
871
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
906
872
|
(__v8di)_mm512_sub_epi64(__A, __B),
|
|
907
873
|
(__v8di)__W);
|
|
908
874
|
}
|
|
909
875
|
|
|
910
|
-
static __inline__ __m512i
|
|
911
|
-
_mm512_maskz_sub_epi64(__mmask8 __U, __m512i __A, __m512i __B)
|
|
912
|
-
{
|
|
876
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
877
|
+
_mm512_maskz_sub_epi64(__mmask8 __U, __m512i __A, __m512i __B) {
|
|
913
878
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
914
879
|
(__v8di)_mm512_sub_epi64(__A, __B),
|
|
915
880
|
(__v8di)_mm512_setzero_si512());
|
|
916
881
|
}
|
|
917
882
|
|
|
918
|
-
static __inline__ __m512i
|
|
919
|
-
_mm512_add_epi32
|
|
920
|
-
{
|
|
883
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
884
|
+
_mm512_add_epi32(__m512i __A, __m512i __B) {
|
|
921
885
|
return (__m512i) ((__v16su) __A + (__v16su) __B);
|
|
922
886
|
}
|
|
923
887
|
|
|
924
|
-
static __inline__ __m512i
|
|
925
|
-
_mm512_mask_add_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
926
|
-
{
|
|
888
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
889
|
+
_mm512_mask_add_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) {
|
|
927
890
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
928
891
|
(__v16si)_mm512_add_epi32(__A, __B),
|
|
929
892
|
(__v16si)__W);
|
|
930
893
|
}
|
|
931
894
|
|
|
932
|
-
static __inline__ __m512i
|
|
933
|
-
_mm512_maskz_add_epi32
|
|
934
|
-
{
|
|
895
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
896
|
+
_mm512_maskz_add_epi32(__mmask16 __U, __m512i __A, __m512i __B) {
|
|
935
897
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
936
898
|
(__v16si)_mm512_add_epi32(__A, __B),
|
|
937
899
|
(__v16si)_mm512_setzero_si512());
|
|
938
900
|
}
|
|
939
901
|
|
|
940
|
-
static __inline__ __m512i
|
|
941
|
-
_mm512_sub_epi32
|
|
942
|
-
{
|
|
902
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
903
|
+
_mm512_sub_epi32(__m512i __A, __m512i __B) {
|
|
943
904
|
return (__m512i) ((__v16su) __A - (__v16su) __B);
|
|
944
905
|
}
|
|
945
906
|
|
|
946
|
-
static __inline__ __m512i
|
|
947
|
-
_mm512_mask_sub_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
948
|
-
{
|
|
907
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
908
|
+
_mm512_mask_sub_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) {
|
|
949
909
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
950
910
|
(__v16si)_mm512_sub_epi32(__A, __B),
|
|
951
911
|
(__v16si)__W);
|
|
952
912
|
}
|
|
953
913
|
|
|
954
|
-
static __inline__ __m512i
|
|
955
|
-
_mm512_maskz_sub_epi32(__mmask16 __U, __m512i __A, __m512i __B)
|
|
956
|
-
{
|
|
914
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
915
|
+
_mm512_maskz_sub_epi32(__mmask16 __U, __m512i __A, __m512i __B) {
|
|
957
916
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
958
917
|
(__v16si)_mm512_sub_epi32(__A, __B),
|
|
959
918
|
(__v16si)_mm512_setzero_si512());
|
|
@@ -973,24 +932,21 @@ _mm512_maskz_sub_epi32(__mmask16 __U, __m512i __A, __m512i __B)
|
|
|
973
932
|
(__v8df)_mm512_max_round_pd((A), (B), (R)), \
|
|
974
933
|
(__v8df)_mm512_setzero_pd()))
|
|
975
934
|
|
|
976
|
-
static
|
|
977
|
-
_mm512_max_pd(__m512d __A, __m512d __B)
|
|
978
|
-
{
|
|
935
|
+
static __inline__ __m512d
|
|
936
|
+
__DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_max_pd(__m512d __A, __m512d __B) {
|
|
979
937
|
return (__m512d) __builtin_ia32_maxpd512((__v8df) __A, (__v8df) __B,
|
|
980
938
|
_MM_FROUND_CUR_DIRECTION);
|
|
981
939
|
}
|
|
982
940
|
|
|
983
|
-
static __inline__ __m512d
|
|
984
|
-
_mm512_mask_max_pd
|
|
985
|
-
{
|
|
941
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
942
|
+
_mm512_mask_max_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
|
|
986
943
|
return (__m512d)__builtin_ia32_selectpd_512(__U,
|
|
987
944
|
(__v8df)_mm512_max_pd(__A, __B),
|
|
988
945
|
(__v8df)__W);
|
|
989
946
|
}
|
|
990
947
|
|
|
991
|
-
static __inline__ __m512d
|
|
992
|
-
_mm512_maskz_max_pd
|
|
993
|
-
{
|
|
948
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
949
|
+
_mm512_maskz_max_pd(__mmask8 __U, __m512d __A, __m512d __B) {
|
|
994
950
|
return (__m512d)__builtin_ia32_selectpd_512(__U,
|
|
995
951
|
(__v8df)_mm512_max_pd(__A, __B),
|
|
996
952
|
(__v8df)_mm512_setzero_pd());
|
|
@@ -1010,31 +966,30 @@ _mm512_maskz_max_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
|
1010
966
|
(__v16sf)_mm512_max_round_ps((A), (B), (R)), \
|
|
1011
967
|
(__v16sf)_mm512_setzero_ps()))
|
|
1012
968
|
|
|
1013
|
-
static
|
|
1014
|
-
_mm512_max_ps(__m512 __A, __m512 __B)
|
|
1015
|
-
{
|
|
969
|
+
static __inline__ __m512
|
|
970
|
+
__DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_max_ps(__m512 __A, __m512 __B) {
|
|
1016
971
|
return (__m512) __builtin_ia32_maxps512((__v16sf) __A, (__v16sf) __B,
|
|
1017
972
|
_MM_FROUND_CUR_DIRECTION);
|
|
1018
973
|
}
|
|
1019
974
|
|
|
1020
|
-
static __inline__ __m512
|
|
1021
|
-
_mm512_mask_max_ps
|
|
1022
|
-
{
|
|
975
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
976
|
+
_mm512_mask_max_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
|
|
1023
977
|
return (__m512)__builtin_ia32_selectps_512(__U,
|
|
1024
978
|
(__v16sf)_mm512_max_ps(__A, __B),
|
|
1025
979
|
(__v16sf)__W);
|
|
1026
980
|
}
|
|
1027
981
|
|
|
1028
|
-
static __inline__ __m512
|
|
1029
|
-
_mm512_maskz_max_ps
|
|
1030
|
-
{
|
|
982
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
983
|
+
_mm512_maskz_max_ps(__mmask16 __U, __m512 __A, __m512 __B) {
|
|
1031
984
|
return (__m512)__builtin_ia32_selectps_512(__U,
|
|
1032
985
|
(__v16sf)_mm512_max_ps(__A, __B),
|
|
1033
986
|
(__v16sf)_mm512_setzero_ps());
|
|
1034
987
|
}
|
|
1035
988
|
|
|
1036
|
-
static __inline__ __m128 __DEFAULT_FN_ATTRS128
|
|
1037
|
-
|
|
989
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_mask_max_ss(__m128 __W,
|
|
990
|
+
__mmask8 __U,
|
|
991
|
+
__m128 __A,
|
|
992
|
+
__m128 __B) {
|
|
1038
993
|
return (__m128) __builtin_ia32_maxss_round_mask ((__v4sf) __A,
|
|
1039
994
|
(__v4sf) __B,
|
|
1040
995
|
(__v4sf) __W,
|
|
@@ -1042,8 +997,9 @@ _mm_mask_max_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
|
|
|
1042
997
|
_MM_FROUND_CUR_DIRECTION);
|
|
1043
998
|
}
|
|
1044
999
|
|
|
1045
|
-
static __inline__ __m128 __DEFAULT_FN_ATTRS128
|
|
1046
|
-
|
|
1000
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_maskz_max_ss(__mmask8 __U,
|
|
1001
|
+
__m128 __A,
|
|
1002
|
+
__m128 __B) {
|
|
1047
1003
|
return (__m128) __builtin_ia32_maxss_round_mask ((__v4sf) __A,
|
|
1048
1004
|
(__v4sf) __B,
|
|
1049
1005
|
(__v4sf) _mm_setzero_ps (),
|
|
@@ -1069,8 +1025,10 @@ _mm_maskz_max_ss(__mmask8 __U,__m128 __A, __m128 __B) {
|
|
|
1069
1025
|
(__v4sf)_mm_setzero_ps(), \
|
|
1070
1026
|
(__mmask8)(U), (int)(R)))
|
|
1071
1027
|
|
|
1072
|
-
static __inline__ __m128d __DEFAULT_FN_ATTRS128
|
|
1073
|
-
|
|
1028
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_mask_max_sd(__m128d __W,
|
|
1029
|
+
__mmask8 __U,
|
|
1030
|
+
__m128d __A,
|
|
1031
|
+
__m128d __B) {
|
|
1074
1032
|
return (__m128d) __builtin_ia32_maxsd_round_mask ((__v2df) __A,
|
|
1075
1033
|
(__v2df) __B,
|
|
1076
1034
|
(__v2df) __W,
|
|
@@ -1078,8 +1036,9 @@ _mm_mask_max_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
|
|
|
1078
1036
|
_MM_FROUND_CUR_DIRECTION);
|
|
1079
1037
|
}
|
|
1080
1038
|
|
|
1081
|
-
static __inline__ __m128d __DEFAULT_FN_ATTRS128
|
|
1082
|
-
|
|
1039
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_maskz_max_sd(__mmask8 __U,
|
|
1040
|
+
__m128d __A,
|
|
1041
|
+
__m128d __B) {
|
|
1083
1042
|
return (__m128d) __builtin_ia32_maxsd_round_mask ((__v2df) __A,
|
|
1084
1043
|
(__v2df) __B,
|
|
1085
1044
|
(__v2df) _mm_setzero_pd (),
|
|
@@ -1106,89 +1065,76 @@ _mm_maskz_max_sd(__mmask8 __U,__m128d __A, __m128d __B) {
|
|
|
1106
1065
|
(__mmask8)(U), (int)(R)))
|
|
1107
1066
|
|
|
1108
1067
|
static __inline __m512i
|
|
1109
|
-
|
|
1110
|
-
_mm512_max_epi32(__m512i __A, __m512i __B)
|
|
1111
|
-
{
|
|
1068
|
+
__DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_max_epi32(__m512i __A, __m512i __B) {
|
|
1112
1069
|
return (__m512i)__builtin_elementwise_max((__v16si)__A, (__v16si)__B);
|
|
1113
1070
|
}
|
|
1114
1071
|
|
|
1115
|
-
static __inline__ __m512i
|
|
1116
|
-
_mm512_mask_max_epi32
|
|
1117
|
-
{
|
|
1072
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1073
|
+
_mm512_mask_max_epi32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) {
|
|
1118
1074
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
1119
1075
|
(__v16si)_mm512_max_epi32(__A, __B),
|
|
1120
1076
|
(__v16si)__W);
|
|
1121
1077
|
}
|
|
1122
1078
|
|
|
1123
|
-
static __inline__ __m512i
|
|
1124
|
-
_mm512_maskz_max_epi32
|
|
1125
|
-
{
|
|
1079
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1080
|
+
_mm512_maskz_max_epi32(__mmask16 __M, __m512i __A, __m512i __B) {
|
|
1126
1081
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
1127
1082
|
(__v16si)_mm512_max_epi32(__A, __B),
|
|
1128
1083
|
(__v16si)_mm512_setzero_si512());
|
|
1129
1084
|
}
|
|
1130
1085
|
|
|
1131
|
-
static __inline __m512i
|
|
1132
|
-
_mm512_max_epu32(__m512i __A, __m512i __B)
|
|
1133
|
-
{
|
|
1086
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1087
|
+
_mm512_max_epu32(__m512i __A, __m512i __B) {
|
|
1134
1088
|
return (__m512i)__builtin_elementwise_max((__v16su)__A, (__v16su)__B);
|
|
1135
1089
|
}
|
|
1136
1090
|
|
|
1137
|
-
static __inline__ __m512i
|
|
1138
|
-
_mm512_mask_max_epu32
|
|
1139
|
-
{
|
|
1091
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1092
|
+
_mm512_mask_max_epu32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) {
|
|
1140
1093
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
1141
1094
|
(__v16si)_mm512_max_epu32(__A, __B),
|
|
1142
1095
|
(__v16si)__W);
|
|
1143
1096
|
}
|
|
1144
1097
|
|
|
1145
|
-
static __inline__ __m512i
|
|
1146
|
-
_mm512_maskz_max_epu32
|
|
1147
|
-
{
|
|
1098
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1099
|
+
_mm512_maskz_max_epu32(__mmask16 __M, __m512i __A, __m512i __B) {
|
|
1148
1100
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
1149
1101
|
(__v16si)_mm512_max_epu32(__A, __B),
|
|
1150
1102
|
(__v16si)_mm512_setzero_si512());
|
|
1151
1103
|
}
|
|
1152
1104
|
|
|
1153
|
-
static __inline __m512i
|
|
1154
|
-
_mm512_max_epi64(__m512i __A, __m512i __B)
|
|
1155
|
-
{
|
|
1105
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1106
|
+
_mm512_max_epi64(__m512i __A, __m512i __B) {
|
|
1156
1107
|
return (__m512i)__builtin_elementwise_max((__v8di)__A, (__v8di)__B);
|
|
1157
1108
|
}
|
|
1158
1109
|
|
|
1159
|
-
static __inline__ __m512i
|
|
1160
|
-
_mm512_mask_max_epi64
|
|
1161
|
-
{
|
|
1110
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1111
|
+
_mm512_mask_max_epi64(__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) {
|
|
1162
1112
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
1163
1113
|
(__v8di)_mm512_max_epi64(__A, __B),
|
|
1164
1114
|
(__v8di)__W);
|
|
1165
1115
|
}
|
|
1166
1116
|
|
|
1167
|
-
static __inline__ __m512i
|
|
1168
|
-
_mm512_maskz_max_epi64
|
|
1169
|
-
{
|
|
1117
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1118
|
+
_mm512_maskz_max_epi64(__mmask8 __M, __m512i __A, __m512i __B) {
|
|
1170
1119
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
1171
1120
|
(__v8di)_mm512_max_epi64(__A, __B),
|
|
1172
1121
|
(__v8di)_mm512_setzero_si512());
|
|
1173
1122
|
}
|
|
1174
1123
|
|
|
1175
|
-
static __inline __m512i
|
|
1176
|
-
_mm512_max_epu64(__m512i __A, __m512i __B)
|
|
1177
|
-
{
|
|
1124
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1125
|
+
_mm512_max_epu64(__m512i __A, __m512i __B) {
|
|
1178
1126
|
return (__m512i)__builtin_elementwise_max((__v8du)__A, (__v8du)__B);
|
|
1179
1127
|
}
|
|
1180
1128
|
|
|
1181
|
-
static __inline__ __m512i
|
|
1182
|
-
_mm512_mask_max_epu64
|
|
1183
|
-
{
|
|
1129
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1130
|
+
_mm512_mask_max_epu64(__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) {
|
|
1184
1131
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
1185
1132
|
(__v8di)_mm512_max_epu64(__A, __B),
|
|
1186
1133
|
(__v8di)__W);
|
|
1187
1134
|
}
|
|
1188
1135
|
|
|
1189
|
-
static __inline__ __m512i
|
|
1190
|
-
_mm512_maskz_max_epu64
|
|
1191
|
-
{
|
|
1136
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1137
|
+
_mm512_maskz_max_epu64(__mmask8 __M, __m512i __A, __m512i __B) {
|
|
1192
1138
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
1193
1139
|
(__v8di)_mm512_max_epu64(__A, __B),
|
|
1194
1140
|
(__v8di)_mm512_setzero_si512());
|
|
@@ -1208,24 +1154,21 @@ _mm512_maskz_max_epu64 (__mmask8 __M, __m512i __A, __m512i __B)
|
|
|
1208
1154
|
(__v8df)_mm512_min_round_pd((A), (B), (R)), \
|
|
1209
1155
|
(__v8df)_mm512_setzero_pd()))
|
|
1210
1156
|
|
|
1211
|
-
static
|
|
1212
|
-
_mm512_min_pd(__m512d __A, __m512d __B)
|
|
1213
|
-
{
|
|
1157
|
+
static __inline__ __m512d
|
|
1158
|
+
__DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_min_pd(__m512d __A, __m512d __B) {
|
|
1214
1159
|
return (__m512d) __builtin_ia32_minpd512((__v8df) __A, (__v8df) __B,
|
|
1215
1160
|
_MM_FROUND_CUR_DIRECTION);
|
|
1216
1161
|
}
|
|
1217
1162
|
|
|
1218
|
-
static __inline__ __m512d
|
|
1219
|
-
_mm512_mask_min_pd
|
|
1220
|
-
{
|
|
1163
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1164
|
+
_mm512_mask_min_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
|
|
1221
1165
|
return (__m512d)__builtin_ia32_selectpd_512(__U,
|
|
1222
1166
|
(__v8df)_mm512_min_pd(__A, __B),
|
|
1223
1167
|
(__v8df)__W);
|
|
1224
1168
|
}
|
|
1225
1169
|
|
|
1226
|
-
static __inline__ __m512d
|
|
1227
|
-
_mm512_maskz_min_pd
|
|
1228
|
-
{
|
|
1170
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1171
|
+
_mm512_maskz_min_pd(__mmask8 __U, __m512d __A, __m512d __B) {
|
|
1229
1172
|
return (__m512d)__builtin_ia32_selectpd_512(__U,
|
|
1230
1173
|
(__v8df)_mm512_min_pd(__A, __B),
|
|
1231
1174
|
(__v8df)_mm512_setzero_pd());
|
|
@@ -1245,31 +1188,30 @@ _mm512_maskz_min_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
|
1245
1188
|
(__v16sf)_mm512_min_round_ps((A), (B), (R)), \
|
|
1246
1189
|
(__v16sf)_mm512_setzero_ps()))
|
|
1247
1190
|
|
|
1248
|
-
static
|
|
1249
|
-
_mm512_min_ps(__m512 __A, __m512 __B)
|
|
1250
|
-
{
|
|
1191
|
+
static __inline__ __m512
|
|
1192
|
+
__DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_min_ps(__m512 __A, __m512 __B) {
|
|
1251
1193
|
return (__m512) __builtin_ia32_minps512((__v16sf) __A, (__v16sf) __B,
|
|
1252
1194
|
_MM_FROUND_CUR_DIRECTION);
|
|
1253
1195
|
}
|
|
1254
1196
|
|
|
1255
|
-
static __inline__ __m512
|
|
1256
|
-
_mm512_mask_min_ps
|
|
1257
|
-
{
|
|
1197
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1198
|
+
_mm512_mask_min_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
|
|
1258
1199
|
return (__m512)__builtin_ia32_selectps_512(__U,
|
|
1259
1200
|
(__v16sf)_mm512_min_ps(__A, __B),
|
|
1260
1201
|
(__v16sf)__W);
|
|
1261
1202
|
}
|
|
1262
1203
|
|
|
1263
|
-
static __inline__ __m512
|
|
1264
|
-
_mm512_maskz_min_ps
|
|
1265
|
-
{
|
|
1204
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1205
|
+
_mm512_maskz_min_ps(__mmask16 __U, __m512 __A, __m512 __B) {
|
|
1266
1206
|
return (__m512)__builtin_ia32_selectps_512(__U,
|
|
1267
1207
|
(__v16sf)_mm512_min_ps(__A, __B),
|
|
1268
1208
|
(__v16sf)_mm512_setzero_ps());
|
|
1269
1209
|
}
|
|
1270
1210
|
|
|
1271
|
-
static __inline__ __m128 __DEFAULT_FN_ATTRS128
|
|
1272
|
-
|
|
1211
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_mask_min_ss(__m128 __W,
|
|
1212
|
+
__mmask8 __U,
|
|
1213
|
+
__m128 __A,
|
|
1214
|
+
__m128 __B) {
|
|
1273
1215
|
return (__m128) __builtin_ia32_minss_round_mask ((__v4sf) __A,
|
|
1274
1216
|
(__v4sf) __B,
|
|
1275
1217
|
(__v4sf) __W,
|
|
@@ -1277,8 +1219,9 @@ _mm_mask_min_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
|
|
|
1277
1219
|
_MM_FROUND_CUR_DIRECTION);
|
|
1278
1220
|
}
|
|
1279
1221
|
|
|
1280
|
-
static __inline__ __m128 __DEFAULT_FN_ATTRS128
|
|
1281
|
-
|
|
1222
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_maskz_min_ss(__mmask8 __U,
|
|
1223
|
+
__m128 __A,
|
|
1224
|
+
__m128 __B) {
|
|
1282
1225
|
return (__m128) __builtin_ia32_minss_round_mask ((__v4sf) __A,
|
|
1283
1226
|
(__v4sf) __B,
|
|
1284
1227
|
(__v4sf) _mm_setzero_ps (),
|
|
@@ -1304,8 +1247,10 @@ _mm_maskz_min_ss(__mmask8 __U,__m128 __A, __m128 __B) {
|
|
|
1304
1247
|
(__v4sf)_mm_setzero_ps(), \
|
|
1305
1248
|
(__mmask8)(U), (int)(R)))
|
|
1306
1249
|
|
|
1307
|
-
static __inline__ __m128d __DEFAULT_FN_ATTRS128
|
|
1308
|
-
|
|
1250
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_mask_min_sd(__m128d __W,
|
|
1251
|
+
__mmask8 __U,
|
|
1252
|
+
__m128d __A,
|
|
1253
|
+
__m128d __B) {
|
|
1309
1254
|
return (__m128d) __builtin_ia32_minsd_round_mask ((__v2df) __A,
|
|
1310
1255
|
(__v2df) __B,
|
|
1311
1256
|
(__v2df) __W,
|
|
@@ -1313,8 +1258,9 @@ _mm_mask_min_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
|
|
|
1313
1258
|
_MM_FROUND_CUR_DIRECTION);
|
|
1314
1259
|
}
|
|
1315
1260
|
|
|
1316
|
-
static __inline__ __m128d __DEFAULT_FN_ATTRS128
|
|
1317
|
-
|
|
1261
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_maskz_min_sd(__mmask8 __U,
|
|
1262
|
+
__m128d __A,
|
|
1263
|
+
__m128d __B) {
|
|
1318
1264
|
return (__m128d) __builtin_ia32_minsd_round_mask ((__v2df) __A,
|
|
1319
1265
|
(__v2df) __B,
|
|
1320
1266
|
(__v2df) _mm_setzero_pd (),
|
|
@@ -1341,166 +1287,144 @@ _mm_maskz_min_sd(__mmask8 __U,__m128d __A, __m128d __B) {
|
|
|
1341
1287
|
(__mmask8)(U), (int)(R)))
|
|
1342
1288
|
|
|
1343
1289
|
static __inline __m512i
|
|
1344
|
-
|
|
1345
|
-
_mm512_min_epi32(__m512i __A, __m512i __B)
|
|
1346
|
-
{
|
|
1290
|
+
__DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_min_epi32(__m512i __A, __m512i __B) {
|
|
1347
1291
|
return (__m512i)__builtin_elementwise_min((__v16si)__A, (__v16si)__B);
|
|
1348
1292
|
}
|
|
1349
1293
|
|
|
1350
|
-
static __inline__ __m512i
|
|
1351
|
-
_mm512_mask_min_epi32
|
|
1352
|
-
{
|
|
1294
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1295
|
+
_mm512_mask_min_epi32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) {
|
|
1353
1296
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
1354
1297
|
(__v16si)_mm512_min_epi32(__A, __B),
|
|
1355
1298
|
(__v16si)__W);
|
|
1356
1299
|
}
|
|
1357
1300
|
|
|
1358
|
-
static __inline__ __m512i
|
|
1359
|
-
_mm512_maskz_min_epi32
|
|
1360
|
-
{
|
|
1301
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1302
|
+
_mm512_maskz_min_epi32(__mmask16 __M, __m512i __A, __m512i __B) {
|
|
1361
1303
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
1362
1304
|
(__v16si)_mm512_min_epi32(__A, __B),
|
|
1363
1305
|
(__v16si)_mm512_setzero_si512());
|
|
1364
1306
|
}
|
|
1365
1307
|
|
|
1366
|
-
static __inline __m512i
|
|
1367
|
-
_mm512_min_epu32(__m512i __A, __m512i __B)
|
|
1368
|
-
{
|
|
1308
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1309
|
+
_mm512_min_epu32(__m512i __A, __m512i __B) {
|
|
1369
1310
|
return (__m512i)__builtin_elementwise_min((__v16su)__A, (__v16su)__B);
|
|
1370
1311
|
}
|
|
1371
1312
|
|
|
1372
|
-
static __inline__ __m512i
|
|
1373
|
-
_mm512_mask_min_epu32
|
|
1374
|
-
{
|
|
1313
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1314
|
+
_mm512_mask_min_epu32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) {
|
|
1375
1315
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
1376
1316
|
(__v16si)_mm512_min_epu32(__A, __B),
|
|
1377
1317
|
(__v16si)__W);
|
|
1378
1318
|
}
|
|
1379
1319
|
|
|
1380
|
-
static __inline__ __m512i
|
|
1381
|
-
_mm512_maskz_min_epu32
|
|
1382
|
-
{
|
|
1320
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1321
|
+
_mm512_maskz_min_epu32(__mmask16 __M, __m512i __A, __m512i __B) {
|
|
1383
1322
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
1384
1323
|
(__v16si)_mm512_min_epu32(__A, __B),
|
|
1385
1324
|
(__v16si)_mm512_setzero_si512());
|
|
1386
1325
|
}
|
|
1387
1326
|
|
|
1388
|
-
static __inline __m512i
|
|
1389
|
-
_mm512_min_epi64(__m512i __A, __m512i __B)
|
|
1390
|
-
{
|
|
1327
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1328
|
+
_mm512_min_epi64(__m512i __A, __m512i __B) {
|
|
1391
1329
|
return (__m512i)__builtin_elementwise_min((__v8di)__A, (__v8di)__B);
|
|
1392
1330
|
}
|
|
1393
1331
|
|
|
1394
|
-
static __inline__ __m512i
|
|
1395
|
-
_mm512_mask_min_epi64
|
|
1396
|
-
{
|
|
1332
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1333
|
+
_mm512_mask_min_epi64(__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) {
|
|
1397
1334
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
1398
1335
|
(__v8di)_mm512_min_epi64(__A, __B),
|
|
1399
1336
|
(__v8di)__W);
|
|
1400
1337
|
}
|
|
1401
1338
|
|
|
1402
|
-
static __inline__ __m512i
|
|
1403
|
-
_mm512_maskz_min_epi64
|
|
1404
|
-
{
|
|
1339
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1340
|
+
_mm512_maskz_min_epi64(__mmask8 __M, __m512i __A, __m512i __B) {
|
|
1405
1341
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
1406
1342
|
(__v8di)_mm512_min_epi64(__A, __B),
|
|
1407
1343
|
(__v8di)_mm512_setzero_si512());
|
|
1408
1344
|
}
|
|
1409
1345
|
|
|
1410
|
-
static __inline __m512i
|
|
1411
|
-
_mm512_min_epu64(__m512i __A, __m512i __B)
|
|
1412
|
-
{
|
|
1346
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1347
|
+
_mm512_min_epu64(__m512i __A, __m512i __B) {
|
|
1413
1348
|
return (__m512i)__builtin_elementwise_min((__v8du)__A, (__v8du)__B);
|
|
1414
1349
|
}
|
|
1415
1350
|
|
|
1416
|
-
static __inline__ __m512i
|
|
1417
|
-
_mm512_mask_min_epu64
|
|
1418
|
-
{
|
|
1351
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1352
|
+
_mm512_mask_min_epu64(__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) {
|
|
1419
1353
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
1420
1354
|
(__v8di)_mm512_min_epu64(__A, __B),
|
|
1421
1355
|
(__v8di)__W);
|
|
1422
1356
|
}
|
|
1423
1357
|
|
|
1424
|
-
static __inline__ __m512i
|
|
1425
|
-
_mm512_maskz_min_epu64
|
|
1426
|
-
{
|
|
1358
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1359
|
+
_mm512_maskz_min_epu64(__mmask8 __M, __m512i __A, __m512i __B) {
|
|
1427
1360
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
1428
1361
|
(__v8di)_mm512_min_epu64(__A, __B),
|
|
1429
1362
|
(__v8di)_mm512_setzero_si512());
|
|
1430
1363
|
}
|
|
1431
1364
|
|
|
1432
|
-
static __inline __m512i
|
|
1433
|
-
_mm512_mul_epi32(__m512i __X, __m512i __Y)
|
|
1434
|
-
{
|
|
1365
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1366
|
+
_mm512_mul_epi32(__m512i __X, __m512i __Y) {
|
|
1435
1367
|
return (__m512i)__builtin_ia32_pmuldq512((__v16si)__X, (__v16si) __Y);
|
|
1436
1368
|
}
|
|
1437
1369
|
|
|
1438
|
-
static __inline __m512i
|
|
1439
|
-
_mm512_mask_mul_epi32(__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y)
|
|
1440
|
-
{
|
|
1370
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1371
|
+
_mm512_mask_mul_epi32(__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) {
|
|
1441
1372
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
1442
1373
|
(__v8di)_mm512_mul_epi32(__X, __Y),
|
|
1443
1374
|
(__v8di)__W);
|
|
1444
1375
|
}
|
|
1445
1376
|
|
|
1446
|
-
static __inline __m512i
|
|
1447
|
-
_mm512_maskz_mul_epi32(__mmask8 __M, __m512i __X, __m512i __Y)
|
|
1448
|
-
{
|
|
1377
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1378
|
+
_mm512_maskz_mul_epi32(__mmask8 __M, __m512i __X, __m512i __Y) {
|
|
1449
1379
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
1450
1380
|
(__v8di)_mm512_mul_epi32(__X, __Y),
|
|
1451
1381
|
(__v8di)_mm512_setzero_si512 ());
|
|
1452
1382
|
}
|
|
1453
1383
|
|
|
1454
|
-
static __inline __m512i
|
|
1455
|
-
_mm512_mul_epu32(__m512i __X, __m512i __Y)
|
|
1456
|
-
{
|
|
1384
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1385
|
+
_mm512_mul_epu32(__m512i __X, __m512i __Y) {
|
|
1457
1386
|
return (__m512i)__builtin_ia32_pmuludq512((__v16si)__X, (__v16si)__Y);
|
|
1458
1387
|
}
|
|
1459
1388
|
|
|
1460
|
-
static __inline __m512i
|
|
1461
|
-
_mm512_mask_mul_epu32(__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y)
|
|
1462
|
-
{
|
|
1389
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1390
|
+
_mm512_mask_mul_epu32(__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) {
|
|
1463
1391
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
1464
1392
|
(__v8di)_mm512_mul_epu32(__X, __Y),
|
|
1465
1393
|
(__v8di)__W);
|
|
1466
1394
|
}
|
|
1467
1395
|
|
|
1468
|
-
static __inline __m512i
|
|
1469
|
-
_mm512_maskz_mul_epu32(__mmask8 __M, __m512i __X, __m512i __Y)
|
|
1470
|
-
{
|
|
1396
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1397
|
+
_mm512_maskz_mul_epu32(__mmask8 __M, __m512i __X, __m512i __Y) {
|
|
1471
1398
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
1472
1399
|
(__v8di)_mm512_mul_epu32(__X, __Y),
|
|
1473
1400
|
(__v8di)_mm512_setzero_si512 ());
|
|
1474
1401
|
}
|
|
1475
1402
|
|
|
1476
|
-
static __inline __m512i
|
|
1477
|
-
_mm512_mullo_epi32
|
|
1478
|
-
{
|
|
1403
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1404
|
+
_mm512_mullo_epi32(__m512i __A, __m512i __B) {
|
|
1479
1405
|
return (__m512i) ((__v16su) __A * (__v16su) __B);
|
|
1480
1406
|
}
|
|
1481
1407
|
|
|
1482
|
-
static __inline __m512i
|
|
1483
|
-
_mm512_maskz_mullo_epi32(__mmask16 __M, __m512i __A, __m512i __B)
|
|
1484
|
-
{
|
|
1408
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1409
|
+
_mm512_maskz_mullo_epi32(__mmask16 __M, __m512i __A, __m512i __B) {
|
|
1485
1410
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
1486
1411
|
(__v16si)_mm512_mullo_epi32(__A, __B),
|
|
1487
1412
|
(__v16si)_mm512_setzero_si512());
|
|
1488
1413
|
}
|
|
1489
1414
|
|
|
1490
|
-
static __inline __m512i
|
|
1491
|
-
_mm512_mask_mullo_epi32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
|
|
1492
|
-
{
|
|
1415
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1416
|
+
_mm512_mask_mullo_epi32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) {
|
|
1493
1417
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
1494
1418
|
(__v16si)_mm512_mullo_epi32(__A, __B),
|
|
1495
1419
|
(__v16si)__W);
|
|
1496
1420
|
}
|
|
1497
1421
|
|
|
1498
|
-
static __inline__ __m512i
|
|
1499
|
-
_mm512_mullox_epi64
|
|
1422
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1423
|
+
_mm512_mullox_epi64(__m512i __A, __m512i __B) {
|
|
1500
1424
|
return (__m512i) ((__v8du) __A * (__v8du) __B);
|
|
1501
1425
|
}
|
|
1502
1426
|
|
|
1503
|
-
static __inline__ __m512i
|
|
1427
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1504
1428
|
_mm512_mask_mullox_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) {
|
|
1505
1429
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
1506
1430
|
(__v8di)_mm512_mullox_epi64(__A, __B),
|
|
@@ -1520,26 +1444,19 @@ _mm512_mask_mullox_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) {
|
|
|
1520
1444
|
(__v8df)_mm512_sqrt_round_pd((A), (R)), \
|
|
1521
1445
|
(__v8df)_mm512_setzero_pd()))
|
|
1522
1446
|
|
|
1523
|
-
static
|
|
1524
|
-
|
|
1525
|
-
{
|
|
1526
|
-
return (__m512d)__builtin_ia32_sqrtpd512((__v8df)__A,
|
|
1527
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
1447
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512 _mm512_sqrt_pd(__m512d __A) {
|
|
1448
|
+
return (__m512d)__builtin_elementwise_sqrt((__v8df)__A);
|
|
1528
1449
|
}
|
|
1529
1450
|
|
|
1530
1451
|
static __inline__ __m512d __DEFAULT_FN_ATTRS512
|
|
1531
|
-
_mm512_mask_sqrt_pd
|
|
1532
|
-
|
|
1533
|
-
return (__m512d)__builtin_ia32_selectpd_512(__U,
|
|
1534
|
-
(__v8df)_mm512_sqrt_pd(__A),
|
|
1452
|
+
_mm512_mask_sqrt_pd(__m512d __W, __mmask8 __U, __m512d __A) {
|
|
1453
|
+
return (__m512d)__builtin_ia32_selectpd_512(__U, (__v8df)_mm512_sqrt_pd(__A),
|
|
1535
1454
|
(__v8df)__W);
|
|
1536
1455
|
}
|
|
1537
1456
|
|
|
1538
1457
|
static __inline__ __m512d __DEFAULT_FN_ATTRS512
|
|
1539
|
-
_mm512_maskz_sqrt_pd
|
|
1540
|
-
|
|
1541
|
-
return (__m512d)__builtin_ia32_selectpd_512(__U,
|
|
1542
|
-
(__v8df)_mm512_sqrt_pd(__A),
|
|
1458
|
+
_mm512_maskz_sqrt_pd(__mmask8 __U, __m512d __A) {
|
|
1459
|
+
return (__m512d)__builtin_ia32_selectpd_512(__U, (__v8df)_mm512_sqrt_pd(__A),
|
|
1543
1460
|
(__v8df)_mm512_setzero_pd());
|
|
1544
1461
|
}
|
|
1545
1462
|
|
|
@@ -1556,26 +1473,19 @@ _mm512_maskz_sqrt_pd (__mmask8 __U, __m512d __A)
|
|
|
1556
1473
|
(__v16sf)_mm512_sqrt_round_ps((A), (R)), \
|
|
1557
1474
|
(__v16sf)_mm512_setzero_ps()))
|
|
1558
1475
|
|
|
1559
|
-
static
|
|
1560
|
-
|
|
1561
|
-
{
|
|
1562
|
-
return (__m512)__builtin_ia32_sqrtps512((__v16sf)__A,
|
|
1563
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
1476
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512 _mm512_sqrt_ps(__m512 __A) {
|
|
1477
|
+
return (__m512)__builtin_elementwise_sqrt((__v16sf)__A);
|
|
1564
1478
|
}
|
|
1565
1479
|
|
|
1566
|
-
static
|
|
1567
|
-
_mm512_mask_sqrt_ps(__m512 __W, __mmask16 __U, __m512 __A)
|
|
1568
|
-
|
|
1569
|
-
return (__m512)__builtin_ia32_selectps_512(__U,
|
|
1570
|
-
(__v16sf)_mm512_sqrt_ps(__A),
|
|
1480
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512
|
|
1481
|
+
_mm512_mask_sqrt_ps(__m512 __W, __mmask16 __U, __m512 __A) {
|
|
1482
|
+
return (__m512)__builtin_ia32_selectps_512(__U, (__v16sf)_mm512_sqrt_ps(__A),
|
|
1571
1483
|
(__v16sf)__W);
|
|
1572
1484
|
}
|
|
1573
1485
|
|
|
1574
|
-
static
|
|
1575
|
-
_mm512_maskz_sqrt_ps(
|
|
1576
|
-
|
|
1577
|
-
return (__m512)__builtin_ia32_selectps_512(__U,
|
|
1578
|
-
(__v16sf)_mm512_sqrt_ps(__A),
|
|
1486
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512
|
|
1487
|
+
_mm512_maskz_sqrt_ps(__mmask16 __U, __m512 __A) {
|
|
1488
|
+
return (__m512)__builtin_ia32_selectps_512(__U, (__v16sf)_mm512_sqrt_ps(__A),
|
|
1579
1489
|
(__v16sf)_mm512_setzero_ps());
|
|
1580
1490
|
}
|
|
1581
1491
|
|
|
@@ -1866,58 +1776,52 @@ _mm512_mask_ceil_pd (__m512d __W, __mmask8 __U, __m512d __A)
|
|
|
1866
1776
|
_MM_FROUND_CUR_DIRECTION);
|
|
1867
1777
|
}
|
|
1868
1778
|
|
|
1869
|
-
static __inline __m512i
|
|
1870
|
-
_mm512_abs_epi64(__m512i __A)
|
|
1871
|
-
{
|
|
1779
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1780
|
+
_mm512_abs_epi64(__m512i __A) {
|
|
1872
1781
|
return (__m512i)__builtin_elementwise_abs((__v8di)__A);
|
|
1873
1782
|
}
|
|
1874
1783
|
|
|
1875
|
-
static __inline__ __m512i
|
|
1876
|
-
_mm512_mask_abs_epi64
|
|
1877
|
-
{
|
|
1784
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1785
|
+
_mm512_mask_abs_epi64(__m512i __W, __mmask8 __U, __m512i __A) {
|
|
1878
1786
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
1879
1787
|
(__v8di)_mm512_abs_epi64(__A),
|
|
1880
1788
|
(__v8di)__W);
|
|
1881
1789
|
}
|
|
1882
1790
|
|
|
1883
|
-
static __inline__ __m512i
|
|
1884
|
-
_mm512_maskz_abs_epi64
|
|
1885
|
-
{
|
|
1791
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1792
|
+
_mm512_maskz_abs_epi64(__mmask8 __U, __m512i __A) {
|
|
1886
1793
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
1887
1794
|
(__v8di)_mm512_abs_epi64(__A),
|
|
1888
1795
|
(__v8di)_mm512_setzero_si512());
|
|
1889
1796
|
}
|
|
1890
1797
|
|
|
1891
|
-
static __inline __m512i
|
|
1892
|
-
_mm512_abs_epi32(__m512i __A)
|
|
1893
|
-
{
|
|
1798
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1799
|
+
_mm512_abs_epi32(__m512i __A) {
|
|
1894
1800
|
return (__m512i)__builtin_elementwise_abs((__v16si) __A);
|
|
1895
1801
|
}
|
|
1896
1802
|
|
|
1897
|
-
static __inline__ __m512i
|
|
1898
|
-
_mm512_mask_abs_epi32
|
|
1899
|
-
{
|
|
1803
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1804
|
+
_mm512_mask_abs_epi32(__m512i __W, __mmask16 __U, __m512i __A) {
|
|
1900
1805
|
return (__m512i)__builtin_ia32_selectd_512(__U,
|
|
1901
1806
|
(__v16si)_mm512_abs_epi32(__A),
|
|
1902
1807
|
(__v16si)__W);
|
|
1903
1808
|
}
|
|
1904
1809
|
|
|
1905
|
-
static __inline__ __m512i
|
|
1906
|
-
_mm512_maskz_abs_epi32
|
|
1907
|
-
{
|
|
1810
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1811
|
+
_mm512_maskz_abs_epi32(__mmask16 __U, __m512i __A) {
|
|
1908
1812
|
return (__m512i)__builtin_ia32_selectd_512(__U,
|
|
1909
1813
|
(__v16si)_mm512_abs_epi32(__A),
|
|
1910
1814
|
(__v16si)_mm512_setzero_si512());
|
|
1911
1815
|
}
|
|
1912
1816
|
|
|
1913
|
-
static __inline__ __m128
|
|
1914
|
-
_mm_mask_add_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
|
|
1817
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
1818
|
+
_mm_mask_add_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
|
|
1915
1819
|
__A = _mm_add_ss(__A, __B);
|
|
1916
1820
|
return __builtin_ia32_selectss_128(__U, __A, __W);
|
|
1917
1821
|
}
|
|
1918
1822
|
|
|
1919
|
-
static __inline__ __m128
|
|
1920
|
-
_mm_maskz_add_ss(__mmask8 __U,__m128 __A, __m128 __B) {
|
|
1823
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
1824
|
+
_mm_maskz_add_ss(__mmask8 __U, __m128 __A, __m128 __B) {
|
|
1921
1825
|
__A = _mm_add_ss(__A, __B);
|
|
1922
1826
|
return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps());
|
|
1923
1827
|
}
|
|
@@ -1940,14 +1844,14 @@ _mm_maskz_add_ss(__mmask8 __U,__m128 __A, __m128 __B) {
|
|
|
1940
1844
|
(__v4sf)_mm_setzero_ps(), \
|
|
1941
1845
|
(__mmask8)(U), (int)(R)))
|
|
1942
1846
|
|
|
1943
|
-
static __inline__ __m128d
|
|
1944
|
-
_mm_mask_add_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
|
|
1847
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
1848
|
+
_mm_mask_add_sd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
|
|
1945
1849
|
__A = _mm_add_sd(__A, __B);
|
|
1946
1850
|
return __builtin_ia32_selectsd_128(__U, __A, __W);
|
|
1947
1851
|
}
|
|
1948
1852
|
|
|
1949
|
-
static __inline__ __m128d
|
|
1950
|
-
_mm_maskz_add_sd(__mmask8 __U,__m128d __A, __m128d __B) {
|
|
1853
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
1854
|
+
_mm_maskz_add_sd(__mmask8 __U, __m128d __A, __m128d __B) {
|
|
1951
1855
|
__A = _mm_add_sd(__A, __B);
|
|
1952
1856
|
return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd());
|
|
1953
1857
|
}
|
|
@@ -1969,28 +1873,28 @@ _mm_maskz_add_sd(__mmask8 __U,__m128d __A, __m128d __B) {
|
|
|
1969
1873
|
(__v2df)_mm_setzero_pd(), \
|
|
1970
1874
|
(__mmask8)(U), (int)(R)))
|
|
1971
1875
|
|
|
1972
|
-
static __inline__ __m512d
|
|
1876
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1973
1877
|
_mm512_mask_add_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
|
|
1974
1878
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
1975
1879
|
(__v8df)_mm512_add_pd(__A, __B),
|
|
1976
1880
|
(__v8df)__W);
|
|
1977
1881
|
}
|
|
1978
1882
|
|
|
1979
|
-
static __inline__ __m512d
|
|
1883
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1980
1884
|
_mm512_maskz_add_pd(__mmask8 __U, __m512d __A, __m512d __B) {
|
|
1981
1885
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
1982
1886
|
(__v8df)_mm512_add_pd(__A, __B),
|
|
1983
1887
|
(__v8df)_mm512_setzero_pd());
|
|
1984
1888
|
}
|
|
1985
1889
|
|
|
1986
|
-
static __inline__ __m512
|
|
1890
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1987
1891
|
_mm512_mask_add_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
|
|
1988
1892
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
1989
1893
|
(__v16sf)_mm512_add_ps(__A, __B),
|
|
1990
1894
|
(__v16sf)__W);
|
|
1991
1895
|
}
|
|
1992
1896
|
|
|
1993
|
-
static __inline__ __m512
|
|
1897
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
1994
1898
|
_mm512_maskz_add_ps(__mmask16 __U, __m512 __A, __m512 __B) {
|
|
1995
1899
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
1996
1900
|
(__v16sf)_mm512_add_ps(__A, __B),
|
|
@@ -2025,14 +1929,14 @@ _mm512_maskz_add_ps(__mmask16 __U, __m512 __A, __m512 __B) {
|
|
|
2025
1929
|
(__v16sf)_mm512_add_round_ps((A), (B), (R)), \
|
|
2026
1930
|
(__v16sf)_mm512_setzero_ps()))
|
|
2027
1931
|
|
|
2028
|
-
static __inline__ __m128
|
|
2029
|
-
_mm_mask_sub_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
|
|
1932
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
1933
|
+
_mm_mask_sub_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
|
|
2030
1934
|
__A = _mm_sub_ss(__A, __B);
|
|
2031
1935
|
return __builtin_ia32_selectss_128(__U, __A, __W);
|
|
2032
1936
|
}
|
|
2033
1937
|
|
|
2034
|
-
static __inline__ __m128
|
|
2035
|
-
_mm_maskz_sub_ss(__mmask8 __U,__m128 __A, __m128 __B) {
|
|
1938
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
1939
|
+
_mm_maskz_sub_ss(__mmask8 __U, __m128 __A, __m128 __B) {
|
|
2036
1940
|
__A = _mm_sub_ss(__A, __B);
|
|
2037
1941
|
return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps());
|
|
2038
1942
|
}
|
|
@@ -2054,14 +1958,14 @@ _mm_maskz_sub_ss(__mmask8 __U,__m128 __A, __m128 __B) {
|
|
|
2054
1958
|
(__v4sf)_mm_setzero_ps(), \
|
|
2055
1959
|
(__mmask8)(U), (int)(R)))
|
|
2056
1960
|
|
|
2057
|
-
static __inline__ __m128d
|
|
2058
|
-
_mm_mask_sub_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
|
|
1961
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
1962
|
+
_mm_mask_sub_sd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
|
|
2059
1963
|
__A = _mm_sub_sd(__A, __B);
|
|
2060
1964
|
return __builtin_ia32_selectsd_128(__U, __A, __W);
|
|
2061
1965
|
}
|
|
2062
1966
|
|
|
2063
|
-
static __inline__ __m128d
|
|
2064
|
-
_mm_maskz_sub_sd(__mmask8 __U,__m128d __A, __m128d __B) {
|
|
1967
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
1968
|
+
_mm_maskz_sub_sd(__mmask8 __U, __m128d __A, __m128d __B) {
|
|
2065
1969
|
__A = _mm_sub_sd(__A, __B);
|
|
2066
1970
|
return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd());
|
|
2067
1971
|
}
|
|
@@ -2084,28 +1988,28 @@ _mm_maskz_sub_sd(__mmask8 __U,__m128d __A, __m128d __B) {
|
|
|
2084
1988
|
(__v2df)_mm_setzero_pd(), \
|
|
2085
1989
|
(__mmask8)(U), (int)(R)))
|
|
2086
1990
|
|
|
2087
|
-
static __inline__ __m512d
|
|
1991
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2088
1992
|
_mm512_mask_sub_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
|
|
2089
1993
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
2090
1994
|
(__v8df)_mm512_sub_pd(__A, __B),
|
|
2091
1995
|
(__v8df)__W);
|
|
2092
1996
|
}
|
|
2093
1997
|
|
|
2094
|
-
static __inline__ __m512d
|
|
1998
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2095
1999
|
_mm512_maskz_sub_pd(__mmask8 __U, __m512d __A, __m512d __B) {
|
|
2096
2000
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
2097
2001
|
(__v8df)_mm512_sub_pd(__A, __B),
|
|
2098
2002
|
(__v8df)_mm512_setzero_pd());
|
|
2099
2003
|
}
|
|
2100
2004
|
|
|
2101
|
-
static __inline__ __m512
|
|
2005
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2102
2006
|
_mm512_mask_sub_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
|
|
2103
2007
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
2104
2008
|
(__v16sf)_mm512_sub_ps(__A, __B),
|
|
2105
2009
|
(__v16sf)__W);
|
|
2106
2010
|
}
|
|
2107
2011
|
|
|
2108
|
-
static __inline__ __m512
|
|
2012
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2109
2013
|
_mm512_maskz_sub_ps(__mmask16 __U, __m512 __A, __m512 __B) {
|
|
2110
2014
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
2111
2015
|
(__v16sf)_mm512_sub_ps(__A, __B),
|
|
@@ -2140,14 +2044,14 @@ _mm512_maskz_sub_ps(__mmask16 __U, __m512 __A, __m512 __B) {
|
|
|
2140
2044
|
(__v16sf)_mm512_sub_round_ps((A), (B), (R)), \
|
|
2141
2045
|
(__v16sf)_mm512_setzero_ps()))
|
|
2142
2046
|
|
|
2143
|
-
static __inline__ __m128
|
|
2144
|
-
_mm_mask_mul_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
|
|
2047
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
2048
|
+
_mm_mask_mul_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
|
|
2145
2049
|
__A = _mm_mul_ss(__A, __B);
|
|
2146
2050
|
return __builtin_ia32_selectss_128(__U, __A, __W);
|
|
2147
2051
|
}
|
|
2148
2052
|
|
|
2149
|
-
static __inline__ __m128
|
|
2150
|
-
_mm_maskz_mul_ss(__mmask8 __U,__m128 __A, __m128 __B) {
|
|
2053
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
2054
|
+
_mm_maskz_mul_ss(__mmask8 __U, __m128 __A, __m128 __B) {
|
|
2151
2055
|
__A = _mm_mul_ss(__A, __B);
|
|
2152
2056
|
return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps());
|
|
2153
2057
|
}
|
|
@@ -2169,14 +2073,14 @@ _mm_maskz_mul_ss(__mmask8 __U,__m128 __A, __m128 __B) {
|
|
|
2169
2073
|
(__v4sf)_mm_setzero_ps(), \
|
|
2170
2074
|
(__mmask8)(U), (int)(R)))
|
|
2171
2075
|
|
|
2172
|
-
static __inline__ __m128d
|
|
2173
|
-
_mm_mask_mul_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
|
|
2076
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
2077
|
+
_mm_mask_mul_sd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
|
|
2174
2078
|
__A = _mm_mul_sd(__A, __B);
|
|
2175
2079
|
return __builtin_ia32_selectsd_128(__U, __A, __W);
|
|
2176
2080
|
}
|
|
2177
2081
|
|
|
2178
|
-
static __inline__ __m128d
|
|
2179
|
-
_mm_maskz_mul_sd(__mmask8 __U,__m128d __A, __m128d __B) {
|
|
2082
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
2083
|
+
_mm_maskz_mul_sd(__mmask8 __U, __m128d __A, __m128d __B) {
|
|
2180
2084
|
__A = _mm_mul_sd(__A, __B);
|
|
2181
2085
|
return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd());
|
|
2182
2086
|
}
|
|
@@ -2199,28 +2103,28 @@ _mm_maskz_mul_sd(__mmask8 __U,__m128d __A, __m128d __B) {
|
|
|
2199
2103
|
(__v2df)_mm_setzero_pd(), \
|
|
2200
2104
|
(__mmask8)(U), (int)(R)))
|
|
2201
2105
|
|
|
2202
|
-
static __inline__ __m512d
|
|
2106
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2203
2107
|
_mm512_mask_mul_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
|
|
2204
2108
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
2205
2109
|
(__v8df)_mm512_mul_pd(__A, __B),
|
|
2206
2110
|
(__v8df)__W);
|
|
2207
2111
|
}
|
|
2208
2112
|
|
|
2209
|
-
static __inline__ __m512d
|
|
2113
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2210
2114
|
_mm512_maskz_mul_pd(__mmask8 __U, __m512d __A, __m512d __B) {
|
|
2211
2115
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
2212
2116
|
(__v8df)_mm512_mul_pd(__A, __B),
|
|
2213
2117
|
(__v8df)_mm512_setzero_pd());
|
|
2214
2118
|
}
|
|
2215
2119
|
|
|
2216
|
-
static __inline__ __m512
|
|
2120
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2217
2121
|
_mm512_mask_mul_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
|
|
2218
2122
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
2219
2123
|
(__v16sf)_mm512_mul_ps(__A, __B),
|
|
2220
2124
|
(__v16sf)__W);
|
|
2221
2125
|
}
|
|
2222
2126
|
|
|
2223
|
-
static __inline__ __m512
|
|
2127
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2224
2128
|
_mm512_maskz_mul_ps(__mmask16 __U, __m512 __A, __m512 __B) {
|
|
2225
2129
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
2226
2130
|
(__v16sf)_mm512_mul_ps(__A, __B),
|
|
@@ -2255,14 +2159,14 @@ _mm512_maskz_mul_ps(__mmask16 __U, __m512 __A, __m512 __B) {
|
|
|
2255
2159
|
(__v16sf)_mm512_mul_round_ps((A), (B), (R)), \
|
|
2256
2160
|
(__v16sf)_mm512_setzero_ps()))
|
|
2257
2161
|
|
|
2258
|
-
static __inline__ __m128
|
|
2259
|
-
_mm_mask_div_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
|
|
2162
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
2163
|
+
_mm_mask_div_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
|
|
2260
2164
|
__A = _mm_div_ss(__A, __B);
|
|
2261
2165
|
return __builtin_ia32_selectss_128(__U, __A, __W);
|
|
2262
2166
|
}
|
|
2263
2167
|
|
|
2264
|
-
static __inline__ __m128
|
|
2265
|
-
_mm_maskz_div_ss(__mmask8 __U,__m128 __A, __m128 __B) {
|
|
2168
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
2169
|
+
_mm_maskz_div_ss(__mmask8 __U, __m128 __A, __m128 __B) {
|
|
2266
2170
|
__A = _mm_div_ss(__A, __B);
|
|
2267
2171
|
return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps());
|
|
2268
2172
|
}
|
|
@@ -2285,14 +2189,14 @@ _mm_maskz_div_ss(__mmask8 __U,__m128 __A, __m128 __B) {
|
|
|
2285
2189
|
(__v4sf)_mm_setzero_ps(), \
|
|
2286
2190
|
(__mmask8)(U), (int)(R)))
|
|
2287
2191
|
|
|
2288
|
-
static __inline__ __m128d
|
|
2289
|
-
_mm_mask_div_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
|
|
2192
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
2193
|
+
_mm_mask_div_sd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
|
|
2290
2194
|
__A = _mm_div_sd(__A, __B);
|
|
2291
2195
|
return __builtin_ia32_selectsd_128(__U, __A, __W);
|
|
2292
2196
|
}
|
|
2293
2197
|
|
|
2294
|
-
static __inline__ __m128d
|
|
2295
|
-
_mm_maskz_div_sd(__mmask8 __U,__m128d __A, __m128d __B) {
|
|
2198
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
2199
|
+
_mm_maskz_div_sd(__mmask8 __U, __m128d __A, __m128d __B) {
|
|
2296
2200
|
__A = _mm_div_sd(__A, __B);
|
|
2297
2201
|
return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd());
|
|
2298
2202
|
}
|
|
@@ -2315,40 +2219,38 @@ _mm_maskz_div_sd(__mmask8 __U,__m128d __A, __m128d __B) {
|
|
|
2315
2219
|
(__v2df)_mm_setzero_pd(), \
|
|
2316
2220
|
(__mmask8)(U), (int)(R)))
|
|
2317
2221
|
|
|
2318
|
-
static __inline __m512d
|
|
2319
|
-
_mm512_div_pd(__m512d __a, __m512d __b)
|
|
2320
|
-
{
|
|
2222
|
+
static __inline __m512d
|
|
2223
|
+
__DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_div_pd(__m512d __a, __m512d __b) {
|
|
2321
2224
|
return (__m512d)((__v8df)__a/(__v8df)__b);
|
|
2322
2225
|
}
|
|
2323
2226
|
|
|
2324
|
-
static __inline__ __m512d
|
|
2227
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2325
2228
|
_mm512_mask_div_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
|
|
2326
2229
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
2327
2230
|
(__v8df)_mm512_div_pd(__A, __B),
|
|
2328
2231
|
(__v8df)__W);
|
|
2329
2232
|
}
|
|
2330
2233
|
|
|
2331
|
-
static __inline__ __m512d
|
|
2234
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2332
2235
|
_mm512_maskz_div_pd(__mmask8 __U, __m512d __A, __m512d __B) {
|
|
2333
2236
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
2334
2237
|
(__v8df)_mm512_div_pd(__A, __B),
|
|
2335
2238
|
(__v8df)_mm512_setzero_pd());
|
|
2336
2239
|
}
|
|
2337
2240
|
|
|
2338
|
-
static __inline __m512
|
|
2339
|
-
_mm512_div_ps(__m512 __a, __m512 __b)
|
|
2340
|
-
{
|
|
2241
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2242
|
+
_mm512_div_ps(__m512 __a, __m512 __b) {
|
|
2341
2243
|
return (__m512)((__v16sf)__a/(__v16sf)__b);
|
|
2342
2244
|
}
|
|
2343
2245
|
|
|
2344
|
-
static __inline__ __m512
|
|
2246
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2345
2247
|
_mm512_mask_div_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
|
|
2346
2248
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
2347
2249
|
(__v16sf)_mm512_div_ps(__A, __B),
|
|
2348
2250
|
(__v16sf)__W);
|
|
2349
2251
|
}
|
|
2350
2252
|
|
|
2351
|
-
static __inline__ __m512
|
|
2253
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2352
2254
|
_mm512_maskz_div_ps(__mmask16 __U, __m512 __A, __m512 __B) {
|
|
2353
2255
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
2354
2256
|
(__v16sf)_mm512_div_ps(__A, __B),
|
|
@@ -2530,125 +2432,104 @@ _mm512_maskz_div_ps(__mmask16 __U, __m512 __A, __m512 __B) {
|
|
|
2530
2432
|
-(__v8df)(__m512d)(C), \
|
|
2531
2433
|
(__mmask8)(U), (int)(R)))
|
|
2532
2434
|
|
|
2435
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2436
|
+
_mm512_fmadd_pd(__m512d __A, __m512d __B, __m512d __C) {
|
|
2437
|
+
return (__m512d)__builtin_elementwise_fma((__v8df)__A, (__v8df)__B,
|
|
2438
|
+
(__v8df)__C);
|
|
2439
|
+
}
|
|
2533
2440
|
|
|
2534
|
-
static __inline__ __m512d
|
|
2535
|
-
|
|
2536
|
-
|
|
2537
|
-
|
|
2538
|
-
(__v8df) __B,
|
|
2539
|
-
(__v8df) __C,
|
|
2540
|
-
(__mmask8) -1,
|
|
2541
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2441
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2442
|
+
_mm512_mask_fmadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) {
|
|
2443
|
+
return (__m512d)__builtin_ia32_selectpd_512(
|
|
2444
|
+
(__mmask8)__U, (__v8df)_mm512_fmadd_pd(__A, __B, __C), (__v8df)__A);
|
|
2542
2445
|
}
|
|
2543
2446
|
|
|
2544
|
-
static __inline__ __m512d
|
|
2545
|
-
|
|
2546
|
-
|
|
2547
|
-
|
|
2548
|
-
(__v8df) __B,
|
|
2549
|
-
(__v8df) __C,
|
|
2550
|
-
(__mmask8) __U,
|
|
2551
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2447
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2448
|
+
_mm512_mask3_fmadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) {
|
|
2449
|
+
return (__m512d)__builtin_ia32_selectpd_512(
|
|
2450
|
+
(__mmask8)__U, (__v8df)_mm512_fmadd_pd(__A, __B, __C), (__v8df)__C);
|
|
2552
2451
|
}
|
|
2553
2452
|
|
|
2554
|
-
static __inline__ __m512d
|
|
2555
|
-
|
|
2556
|
-
|
|
2557
|
-
|
|
2558
|
-
|
|
2559
|
-
(__v8df) __C,
|
|
2560
|
-
(__mmask8) __U,
|
|
2561
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2453
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2454
|
+
_mm512_maskz_fmadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) {
|
|
2455
|
+
return (__m512d)__builtin_ia32_selectpd_512(
|
|
2456
|
+
(__mmask8)__U, (__v8df)_mm512_fmadd_pd(__A, __B, __C),
|
|
2457
|
+
(__v8df)_mm512_setzero_pd());
|
|
2562
2458
|
}
|
|
2563
2459
|
|
|
2564
|
-
static __inline__ __m512d
|
|
2565
|
-
|
|
2566
|
-
|
|
2567
|
-
|
|
2568
|
-
(__v8df) __B,
|
|
2569
|
-
(__v8df) __C,
|
|
2570
|
-
(__mmask8) __U,
|
|
2571
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2460
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2461
|
+
_mm512_fmsub_pd(__m512d __A, __m512d __B, __m512d __C) {
|
|
2462
|
+
return (__m512d)__builtin_elementwise_fma((__v8df)__A, (__v8df)__B,
|
|
2463
|
+
-(__v8df)__C);
|
|
2572
2464
|
}
|
|
2573
2465
|
|
|
2574
|
-
static __inline__ __m512d
|
|
2575
|
-
|
|
2576
|
-
|
|
2577
|
-
|
|
2578
|
-
(__v8df) __B,
|
|
2579
|
-
-(__v8df) __C,
|
|
2580
|
-
(__mmask8) -1,
|
|
2581
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2466
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2467
|
+
_mm512_mask_fmsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) {
|
|
2468
|
+
return (__m512d)__builtin_ia32_selectpd_512(
|
|
2469
|
+
(__mmask8)__U, (__v8df)_mm512_fmsub_pd(__A, __B, __C), (__v8df)__A);
|
|
2582
2470
|
}
|
|
2583
2471
|
|
|
2584
|
-
static __inline__ __m512d
|
|
2585
|
-
|
|
2586
|
-
|
|
2587
|
-
|
|
2588
|
-
(__v8df) __B,
|
|
2589
|
-
-(__v8df) __C,
|
|
2590
|
-
(__mmask8) __U,
|
|
2591
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2472
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2473
|
+
_mm512_mask3_fmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) {
|
|
2474
|
+
return (__m512d)__builtin_ia32_selectpd_512(
|
|
2475
|
+
(__mmask8)__U, (__v8df)_mm512_fmsub_pd(__A, __B, __C), (__v8df)__C);
|
|
2592
2476
|
}
|
|
2593
2477
|
|
|
2594
|
-
static __inline__ __m512d
|
|
2595
|
-
_mm512_maskz_fmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
|
|
2596
|
-
|
|
2597
|
-
|
|
2598
|
-
|
|
2599
|
-
-(__v8df) __C,
|
|
2600
|
-
(__mmask8) __U,
|
|
2601
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2478
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2479
|
+
_mm512_maskz_fmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) {
|
|
2480
|
+
return (__m512d)__builtin_ia32_selectpd_512(
|
|
2481
|
+
(__mmask8)__U, (__v8df)_mm512_fmsub_pd(__A, __B, __C),
|
|
2482
|
+
(__v8df)_mm512_setzero_pd());
|
|
2602
2483
|
}
|
|
2603
2484
|
|
|
2604
|
-
static __inline__ __m512d
|
|
2605
|
-
_mm512_fnmadd_pd(__m512d __A, __m512d __B, __m512d __C)
|
|
2606
|
-
|
|
2607
|
-
|
|
2608
|
-
-(__v8df) __B,
|
|
2609
|
-
(__v8df) __C,
|
|
2610
|
-
(__mmask8) -1,
|
|
2611
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2485
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2486
|
+
_mm512_fnmadd_pd(__m512d __A, __m512d __B, __m512d __C) {
|
|
2487
|
+
return (__m512d)__builtin_elementwise_fma(-(__v8df)__A, (__v8df)__B,
|
|
2488
|
+
(__v8df)__C);
|
|
2612
2489
|
}
|
|
2613
2490
|
|
|
2614
|
-
static __inline__ __m512d
|
|
2615
|
-
|
|
2616
|
-
|
|
2617
|
-
|
|
2618
|
-
(__v8df) __B,
|
|
2619
|
-
(__v8df) __C,
|
|
2620
|
-
(__mmask8) __U,
|
|
2621
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2491
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2492
|
+
_mm512_mask_fnmadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) {
|
|
2493
|
+
return (__m512d)__builtin_ia32_selectpd_512(
|
|
2494
|
+
(__mmask8)__U, (__v8df)_mm512_fnmadd_pd(__A, __B, __C), (__v8df)__A);
|
|
2622
2495
|
}
|
|
2623
2496
|
|
|
2624
|
-
static __inline__ __m512d
|
|
2625
|
-
|
|
2626
|
-
|
|
2627
|
-
|
|
2628
|
-
(__v8df) __B,
|
|
2629
|
-
(__v8df) __C,
|
|
2630
|
-
(__mmask8) __U,
|
|
2631
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2497
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2498
|
+
_mm512_mask3_fnmadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) {
|
|
2499
|
+
return (__m512d)__builtin_ia32_selectpd_512(
|
|
2500
|
+
(__mmask8)__U, (__v8df)_mm512_fnmadd_pd(__A, __B, __C), (__v8df)__C);
|
|
2632
2501
|
}
|
|
2633
2502
|
|
|
2634
|
-
static __inline__ __m512d
|
|
2635
|
-
|
|
2636
|
-
|
|
2637
|
-
|
|
2638
|
-
|
|
2639
|
-
-(__v8df) __C,
|
|
2640
|
-
(__mmask8) -1,
|
|
2641
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2503
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2504
|
+
_mm512_maskz_fnmadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) {
|
|
2505
|
+
return (__m512d)__builtin_ia32_selectpd_512(
|
|
2506
|
+
(__mmask8)__U, (__v8df)_mm512_fnmadd_pd(__A, __B, __C),
|
|
2507
|
+
(__v8df)_mm512_setzero_pd());
|
|
2642
2508
|
}
|
|
2643
2509
|
|
|
2644
|
-
static __inline__ __m512d
|
|
2645
|
-
|
|
2646
|
-
|
|
2647
|
-
|
|
2648
|
-
|
|
2649
|
-
|
|
2650
|
-
|
|
2651
|
-
|
|
2510
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2511
|
+
_mm512_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C) {
|
|
2512
|
+
return (__m512d)__builtin_elementwise_fma(-(__v8df)__A, (__v8df)__B,
|
|
2513
|
+
-(__v8df)__C);
|
|
2514
|
+
}
|
|
2515
|
+
|
|
2516
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2517
|
+
_mm512_mask_fnmsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) {
|
|
2518
|
+
return (__m512d)__builtin_ia32_selectpd_512(
|
|
2519
|
+
(__mmask8)__U, (__v8df)_mm512_fnmsub_pd(__A, __B, __C), (__v8df)__A);
|
|
2520
|
+
}
|
|
2521
|
+
|
|
2522
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2523
|
+
_mm512_mask3_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) {
|
|
2524
|
+
return (__m512d)__builtin_ia32_selectpd_512(
|
|
2525
|
+
(__mmask8)__U, (__v8df)_mm512_fnmsub_pd(__A, __B, __C), (__v8df)__C);
|
|
2526
|
+
}
|
|
2527
|
+
|
|
2528
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2529
|
+
_mm512_maskz_fnmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) {
|
|
2530
|
+
return (__m512d)__builtin_ia32_selectpd_512(
|
|
2531
|
+
(__mmask8)__U, (__v8df)_mm512_fnmsub_pd(__A, __B, __C),
|
|
2532
|
+
(__v8df)_mm512_setzero_pd());
|
|
2652
2533
|
}
|
|
2653
2534
|
|
|
2654
2535
|
#define _mm512_fmadd_round_ps(A, B, C, R) \
|
|
@@ -2734,125 +2615,104 @@ _mm512_maskz_fnmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
|
|
|
2734
2615
|
-(__v16sf)(__m512)(C), \
|
|
2735
2616
|
(__mmask16)(U), (int)(R)))
|
|
2736
2617
|
|
|
2618
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2619
|
+
_mm512_fmadd_ps(__m512 __A, __m512 __B, __m512 __C) {
|
|
2620
|
+
return (__m512)__builtin_elementwise_fma((__v16sf)__A, (__v16sf)__B,
|
|
2621
|
+
(__v16sf)__C);
|
|
2622
|
+
}
|
|
2737
2623
|
|
|
2738
|
-
static __inline__ __m512
|
|
2739
|
-
|
|
2740
|
-
|
|
2741
|
-
|
|
2742
|
-
(__v16sf) __B,
|
|
2743
|
-
(__v16sf) __C,
|
|
2744
|
-
(__mmask16) -1,
|
|
2745
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2624
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2625
|
+
_mm512_mask_fmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) {
|
|
2626
|
+
return (__m512)__builtin_ia32_selectps_512(
|
|
2627
|
+
(__mmask16)__U, (__v16sf)_mm512_fmadd_ps(__A, __B, __C), (__v16sf)__A);
|
|
2746
2628
|
}
|
|
2747
2629
|
|
|
2748
|
-
static __inline__ __m512
|
|
2749
|
-
|
|
2750
|
-
|
|
2751
|
-
|
|
2752
|
-
(__v16sf) __B,
|
|
2753
|
-
(__v16sf) __C,
|
|
2754
|
-
(__mmask16) __U,
|
|
2755
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2630
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2631
|
+
_mm512_mask3_fmadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) {
|
|
2632
|
+
return (__m512)__builtin_ia32_selectps_512(
|
|
2633
|
+
(__mmask16)__U, (__v16sf)_mm512_fmadd_ps(__A, __B, __C), (__v16sf)__C);
|
|
2756
2634
|
}
|
|
2757
2635
|
|
|
2758
|
-
static __inline__ __m512
|
|
2759
|
-
|
|
2760
|
-
|
|
2761
|
-
|
|
2762
|
-
|
|
2763
|
-
(__v16sf) __C,
|
|
2764
|
-
(__mmask16) __U,
|
|
2765
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2636
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2637
|
+
_mm512_maskz_fmadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) {
|
|
2638
|
+
return (__m512)__builtin_ia32_selectps_512(
|
|
2639
|
+
(__mmask16)__U, (__v16sf)_mm512_fmadd_ps(__A, __B, __C),
|
|
2640
|
+
(__v16sf)_mm512_setzero_ps());
|
|
2766
2641
|
}
|
|
2767
2642
|
|
|
2768
|
-
static __inline__ __m512
|
|
2769
|
-
|
|
2770
|
-
|
|
2771
|
-
|
|
2772
|
-
(__v16sf) __B,
|
|
2773
|
-
(__v16sf) __C,
|
|
2774
|
-
(__mmask16) __U,
|
|
2775
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2643
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2644
|
+
_mm512_fmsub_ps(__m512 __A, __m512 __B, __m512 __C) {
|
|
2645
|
+
return (__m512)__builtin_elementwise_fma((__v16sf)__A, (__v16sf)__B,
|
|
2646
|
+
-(__v16sf)__C);
|
|
2776
2647
|
}
|
|
2777
2648
|
|
|
2778
|
-
static __inline__ __m512
|
|
2779
|
-
|
|
2780
|
-
|
|
2781
|
-
|
|
2782
|
-
(__v16sf) __B,
|
|
2783
|
-
-(__v16sf) __C,
|
|
2784
|
-
(__mmask16) -1,
|
|
2785
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2649
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2650
|
+
_mm512_mask_fmsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) {
|
|
2651
|
+
return (__m512)__builtin_ia32_selectps_512(
|
|
2652
|
+
(__mmask16)__U, (__v16sf)_mm512_fmsub_ps(__A, __B, __C), (__v16sf)__A);
|
|
2786
2653
|
}
|
|
2787
2654
|
|
|
2788
|
-
static __inline__ __m512
|
|
2789
|
-
|
|
2790
|
-
|
|
2791
|
-
|
|
2792
|
-
|
|
2793
|
-
|
|
2794
|
-
|
|
2795
|
-
|
|
2655
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2656
|
+
_mm512_mask3_fmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) {
|
|
2657
|
+
return (__m512)__builtin_ia32_selectps_512(
|
|
2658
|
+
(__mmask16)__U, (__v16sf)_mm512_fmsub_ps(__A, __B, __C), (__v16sf)__C);
|
|
2659
|
+
}
|
|
2660
|
+
|
|
2661
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2662
|
+
_mm512_maskz_fmsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) {
|
|
2663
|
+
return (__m512)__builtin_ia32_selectps_512(
|
|
2664
|
+
(__mmask16)__U, (__v16sf)_mm512_fmsub_ps(__A, __B, __C),
|
|
2665
|
+
(__v16sf)_mm512_setzero_ps());
|
|
2666
|
+
}
|
|
2667
|
+
|
|
2668
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2669
|
+
_mm512_fnmadd_ps(__m512 __A, __m512 __B, __m512 __C) {
|
|
2670
|
+
return (__m512)__builtin_elementwise_fma(-(__v16sf)__A, (__v16sf)__B,
|
|
2671
|
+
(__v16sf)__C);
|
|
2796
2672
|
}
|
|
2797
2673
|
|
|
2798
|
-
static __inline__ __m512
|
|
2799
|
-
|
|
2800
|
-
|
|
2801
|
-
|
|
2802
|
-
(__v16sf) __B,
|
|
2803
|
-
-(__v16sf) __C,
|
|
2804
|
-
(__mmask16) __U,
|
|
2805
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2674
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2675
|
+
_mm512_mask_fnmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) {
|
|
2676
|
+
return (__m512)__builtin_ia32_selectps_512(
|
|
2677
|
+
(__mmask16)__U, (__v16sf)_mm512_fnmadd_ps(__A, __B, __C), (__v16sf)__A);
|
|
2806
2678
|
}
|
|
2807
2679
|
|
|
2808
|
-
static __inline__ __m512
|
|
2809
|
-
|
|
2810
|
-
|
|
2811
|
-
|
|
2812
|
-
-(__v16sf) __B,
|
|
2813
|
-
(__v16sf) __C,
|
|
2814
|
-
(__mmask16) -1,
|
|
2815
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2680
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2681
|
+
_mm512_mask3_fnmadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) {
|
|
2682
|
+
return (__m512)__builtin_ia32_selectps_512(
|
|
2683
|
+
(__mmask16)__U, (__v16sf)_mm512_fnmadd_ps(__A, __B, __C), (__v16sf)__C);
|
|
2816
2684
|
}
|
|
2817
2685
|
|
|
2818
|
-
static __inline__ __m512
|
|
2819
|
-
|
|
2820
|
-
|
|
2821
|
-
|
|
2822
|
-
|
|
2823
|
-
(__v16sf) __C,
|
|
2824
|
-
(__mmask16) __U,
|
|
2825
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2686
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2687
|
+
_mm512_maskz_fnmadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) {
|
|
2688
|
+
return (__m512)__builtin_ia32_selectps_512(
|
|
2689
|
+
(__mmask16)__U, (__v16sf)_mm512_fnmadd_ps(__A, __B, __C),
|
|
2690
|
+
(__v16sf)_mm512_setzero_ps());
|
|
2826
2691
|
}
|
|
2827
2692
|
|
|
2828
|
-
static __inline__ __m512
|
|
2829
|
-
|
|
2830
|
-
|
|
2831
|
-
|
|
2832
|
-
(__v16sf) __B,
|
|
2833
|
-
(__v16sf) __C,
|
|
2834
|
-
(__mmask16) __U,
|
|
2835
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2693
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2694
|
+
_mm512_fnmsub_ps(__m512 __A, __m512 __B, __m512 __C) {
|
|
2695
|
+
return (__m512)__builtin_elementwise_fma(-(__v16sf)__A, (__v16sf)__B,
|
|
2696
|
+
-(__v16sf)__C);
|
|
2836
2697
|
}
|
|
2837
2698
|
|
|
2838
|
-
static __inline__ __m512
|
|
2839
|
-
|
|
2840
|
-
|
|
2841
|
-
|
|
2842
|
-
-(__v16sf) __B,
|
|
2843
|
-
-(__v16sf) __C,
|
|
2844
|
-
(__mmask16) -1,
|
|
2845
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
2699
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2700
|
+
_mm512_mask_fnmsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) {
|
|
2701
|
+
return (__m512)__builtin_ia32_selectps_512(
|
|
2702
|
+
(__mmask16)__U, (__v16sf)_mm512_fnmsub_ps(__A, __B, __C), (__v16sf)__A);
|
|
2846
2703
|
}
|
|
2847
2704
|
|
|
2848
|
-
static __inline__ __m512
|
|
2849
|
-
|
|
2850
|
-
|
|
2851
|
-
|
|
2852
|
-
|
|
2853
|
-
|
|
2854
|
-
|
|
2855
|
-
|
|
2705
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2706
|
+
_mm512_mask3_fnmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) {
|
|
2707
|
+
return (__m512)__builtin_ia32_selectps_512(
|
|
2708
|
+
(__mmask16)__U, (__v16sf)_mm512_fnmsub_ps(__A, __B, __C), (__v16sf)__C);
|
|
2709
|
+
}
|
|
2710
|
+
|
|
2711
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
2712
|
+
_mm512_maskz_fnmsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) {
|
|
2713
|
+
return (__m512)__builtin_ia32_selectps_512(
|
|
2714
|
+
(__mmask16)__U, (__v16sf)_mm512_fnmsub_ps(__A, __B, __C),
|
|
2715
|
+
(__v16sf)_mm512_setzero_ps());
|
|
2856
2716
|
}
|
|
2857
2717
|
|
|
2858
2718
|
#define _mm512_fmaddsub_round_pd(A, B, C, R) \
|
|
@@ -3099,33 +2959,12 @@ _mm512_maskz_fmsubadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
|
|
|
3099
2959
|
(__v8df)(__m512d)(C), \
|
|
3100
2960
|
(__mmask8)(U), (int)(R)))
|
|
3101
2961
|
|
|
3102
|
-
|
|
3103
|
-
static __inline__ __m512d __DEFAULT_FN_ATTRS512
|
|
3104
|
-
_mm512_mask3_fmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
|
|
3105
|
-
{
|
|
3106
|
-
return (__m512d)__builtin_ia32_vfmsubpd512_mask3 ((__v8df) __A,
|
|
3107
|
-
(__v8df) __B,
|
|
3108
|
-
(__v8df) __C,
|
|
3109
|
-
(__mmask8) __U,
|
|
3110
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
3111
|
-
}
|
|
3112
|
-
|
|
3113
2962
|
#define _mm512_mask3_fmsub_round_ps(A, B, C, U, R) \
|
|
3114
2963
|
((__m512)__builtin_ia32_vfmsubps512_mask3((__v16sf)(__m512)(A), \
|
|
3115
2964
|
(__v16sf)(__m512)(B), \
|
|
3116
2965
|
(__v16sf)(__m512)(C), \
|
|
3117
2966
|
(__mmask16)(U), (int)(R)))
|
|
3118
2967
|
|
|
3119
|
-
static __inline__ __m512 __DEFAULT_FN_ATTRS512
|
|
3120
|
-
_mm512_mask3_fmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
|
|
3121
|
-
{
|
|
3122
|
-
return (__m512)__builtin_ia32_vfmsubps512_mask3 ((__v16sf) __A,
|
|
3123
|
-
(__v16sf) __B,
|
|
3124
|
-
(__v16sf) __C,
|
|
3125
|
-
(__mmask16) __U,
|
|
3126
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
3127
|
-
}
|
|
3128
|
-
|
|
3129
2968
|
#define _mm512_mask3_fmsubadd_round_pd(A, B, C, U, R) \
|
|
3130
2969
|
((__m512d)__builtin_ia32_vfmsubaddpd512_mask3((__v8df)(__m512d)(A), \
|
|
3131
2970
|
(__v8df)(__m512d)(B), \
|
|
@@ -3166,34 +3005,12 @@ _mm512_mask3_fmsubadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
|
|
|
3166
3005
|
(__v8df)(__m512d)(C), \
|
|
3167
3006
|
(__mmask8)(U), (int)(R)))
|
|
3168
3007
|
|
|
3169
|
-
|
|
3170
|
-
static __inline__ __m512d __DEFAULT_FN_ATTRS512
|
|
3171
|
-
_mm512_mask_fnmadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
|
|
3172
|
-
{
|
|
3173
|
-
return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
|
|
3174
|
-
-(__v8df) __B,
|
|
3175
|
-
(__v8df) __C,
|
|
3176
|
-
(__mmask8) __U,
|
|
3177
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
3178
|
-
}
|
|
3179
|
-
|
|
3180
3008
|
#define _mm512_mask_fnmadd_round_ps(A, U, B, C, R) \
|
|
3181
3009
|
((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \
|
|
3182
3010
|
-(__v16sf)(__m512)(B), \
|
|
3183
3011
|
(__v16sf)(__m512)(C), \
|
|
3184
3012
|
(__mmask16)(U), (int)(R)))
|
|
3185
3013
|
|
|
3186
|
-
|
|
3187
|
-
static __inline__ __m512 __DEFAULT_FN_ATTRS512
|
|
3188
|
-
_mm512_mask_fnmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
|
|
3189
|
-
{
|
|
3190
|
-
return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
|
|
3191
|
-
-(__v16sf) __B,
|
|
3192
|
-
(__v16sf) __C,
|
|
3193
|
-
(__mmask16) __U,
|
|
3194
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
3195
|
-
}
|
|
3196
|
-
|
|
3197
3014
|
#define _mm512_mask_fnmsub_round_pd(A, U, B, C, R) \
|
|
3198
3015
|
((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \
|
|
3199
3016
|
-(__v8df)(__m512d)(B), \
|
|
@@ -3207,27 +3024,6 @@ _mm512_mask_fnmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
|
|
|
3207
3024
|
(__v8df)(__m512d)(C), \
|
|
3208
3025
|
(__mmask8)(U), (int)(R)))
|
|
3209
3026
|
|
|
3210
|
-
|
|
3211
|
-
static __inline__ __m512d __DEFAULT_FN_ATTRS512
|
|
3212
|
-
_mm512_mask_fnmsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
|
|
3213
|
-
{
|
|
3214
|
-
return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
|
|
3215
|
-
-(__v8df) __B,
|
|
3216
|
-
-(__v8df) __C,
|
|
3217
|
-
(__mmask8) __U,
|
|
3218
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
3219
|
-
}
|
|
3220
|
-
|
|
3221
|
-
static __inline__ __m512d __DEFAULT_FN_ATTRS512
|
|
3222
|
-
_mm512_mask3_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
|
|
3223
|
-
{
|
|
3224
|
-
return (__m512d) __builtin_ia32_vfmsubpd512_mask3 (-(__v8df) __A,
|
|
3225
|
-
(__v8df) __B,
|
|
3226
|
-
(__v8df) __C,
|
|
3227
|
-
(__mmask8) __U,
|
|
3228
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
3229
|
-
}
|
|
3230
|
-
|
|
3231
3027
|
#define _mm512_mask_fnmsub_round_ps(A, U, B, C, R) \
|
|
3232
3028
|
((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \
|
|
3233
3029
|
-(__v16sf)(__m512)(B), \
|
|
@@ -3241,94 +3037,63 @@ _mm512_mask3_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
|
|
|
3241
3037
|
(__v16sf)(__m512)(C), \
|
|
3242
3038
|
(__mmask16)(U), (int)(R)))
|
|
3243
3039
|
|
|
3244
|
-
|
|
3245
|
-
static __inline__ __m512 __DEFAULT_FN_ATTRS512
|
|
3246
|
-
_mm512_mask_fnmsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
|
|
3247
|
-
{
|
|
3248
|
-
return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
|
|
3249
|
-
-(__v16sf) __B,
|
|
3250
|
-
-(__v16sf) __C,
|
|
3251
|
-
(__mmask16) __U,
|
|
3252
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
3253
|
-
}
|
|
3254
|
-
|
|
3255
|
-
static __inline__ __m512 __DEFAULT_FN_ATTRS512
|
|
3256
|
-
_mm512_mask3_fnmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
|
|
3257
|
-
{
|
|
3258
|
-
return (__m512) __builtin_ia32_vfmsubps512_mask3 (-(__v16sf) __A,
|
|
3259
|
-
(__v16sf) __B,
|
|
3260
|
-
(__v16sf) __C,
|
|
3261
|
-
(__mmask16) __U,
|
|
3262
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
3263
|
-
}
|
|
3264
|
-
|
|
3265
|
-
|
|
3266
|
-
|
|
3267
3040
|
/* Vector permutations */
|
|
3268
3041
|
|
|
3269
|
-
static __inline __m512i
|
|
3270
|
-
_mm512_permutex2var_epi32(__m512i __A, __m512i __I, __m512i __B)
|
|
3271
|
-
{
|
|
3042
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3043
|
+
_mm512_permutex2var_epi32(__m512i __A, __m512i __I, __m512i __B) {
|
|
3272
3044
|
return (__m512i)__builtin_ia32_vpermi2vard512((__v16si)__A, (__v16si) __I,
|
|
3273
3045
|
(__v16si) __B);
|
|
3274
3046
|
}
|
|
3275
3047
|
|
|
3276
|
-
static __inline__ __m512i
|
|
3048
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3277
3049
|
_mm512_mask_permutex2var_epi32(__m512i __A, __mmask16 __U, __m512i __I,
|
|
3278
|
-
__m512i __B)
|
|
3279
|
-
{
|
|
3050
|
+
__m512i __B) {
|
|
3280
3051
|
return (__m512i)__builtin_ia32_selectd_512(__U,
|
|
3281
3052
|
(__v16si)_mm512_permutex2var_epi32(__A, __I, __B),
|
|
3282
3053
|
(__v16si)__A);
|
|
3283
3054
|
}
|
|
3284
3055
|
|
|
3285
|
-
static __inline__ __m512i
|
|
3056
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3286
3057
|
_mm512_mask2_permutex2var_epi32(__m512i __A, __m512i __I, __mmask16 __U,
|
|
3287
|
-
__m512i __B)
|
|
3288
|
-
{
|
|
3058
|
+
__m512i __B) {
|
|
3289
3059
|
return (__m512i)__builtin_ia32_selectd_512(__U,
|
|
3290
3060
|
(__v16si)_mm512_permutex2var_epi32(__A, __I, __B),
|
|
3291
3061
|
(__v16si)__I);
|
|
3292
3062
|
}
|
|
3293
3063
|
|
|
3294
|
-
static __inline__ __m512i
|
|
3064
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3295
3065
|
_mm512_maskz_permutex2var_epi32(__mmask16 __U, __m512i __A, __m512i __I,
|
|
3296
|
-
__m512i __B)
|
|
3297
|
-
{
|
|
3066
|
+
__m512i __B) {
|
|
3298
3067
|
return (__m512i)__builtin_ia32_selectd_512(__U,
|
|
3299
3068
|
(__v16si)_mm512_permutex2var_epi32(__A, __I, __B),
|
|
3300
3069
|
(__v16si)_mm512_setzero_si512());
|
|
3301
3070
|
}
|
|
3302
3071
|
|
|
3303
|
-
static __inline __m512i
|
|
3304
|
-
_mm512_permutex2var_epi64(__m512i __A, __m512i __I, __m512i __B)
|
|
3305
|
-
{
|
|
3072
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3073
|
+
_mm512_permutex2var_epi64(__m512i __A, __m512i __I, __m512i __B) {
|
|
3306
3074
|
return (__m512i)__builtin_ia32_vpermi2varq512((__v8di)__A, (__v8di) __I,
|
|
3307
3075
|
(__v8di) __B);
|
|
3308
3076
|
}
|
|
3309
3077
|
|
|
3310
|
-
static __inline__ __m512i
|
|
3078
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3311
3079
|
_mm512_mask_permutex2var_epi64(__m512i __A, __mmask8 __U, __m512i __I,
|
|
3312
|
-
__m512i __B)
|
|
3313
|
-
{
|
|
3080
|
+
__m512i __B) {
|
|
3314
3081
|
return (__m512i)__builtin_ia32_selectq_512(__U,
|
|
3315
3082
|
(__v8di)_mm512_permutex2var_epi64(__A, __I, __B),
|
|
3316
3083
|
(__v8di)__A);
|
|
3317
3084
|
}
|
|
3318
3085
|
|
|
3319
|
-
static __inline__ __m512i
|
|
3086
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3320
3087
|
_mm512_mask2_permutex2var_epi64(__m512i __A, __m512i __I, __mmask8 __U,
|
|
3321
|
-
__m512i __B)
|
|
3322
|
-
{
|
|
3088
|
+
__m512i __B) {
|
|
3323
3089
|
return (__m512i)__builtin_ia32_selectq_512(__U,
|
|
3324
3090
|
(__v8di)_mm512_permutex2var_epi64(__A, __I, __B),
|
|
3325
3091
|
(__v8di)__I);
|
|
3326
3092
|
}
|
|
3327
3093
|
|
|
3328
|
-
static __inline__ __m512i
|
|
3094
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3329
3095
|
_mm512_maskz_permutex2var_epi64(__mmask8 __U, __m512i __A, __m512i __I,
|
|
3330
|
-
__m512i __B)
|
|
3331
|
-
{
|
|
3096
|
+
__m512i __B) {
|
|
3332
3097
|
return (__m512i)__builtin_ia32_selectq_512(__U,
|
|
3333
3098
|
(__v8di)_mm512_permutex2var_epi64(__A, __I, __B),
|
|
3334
3099
|
(__v8di)_mm512_setzero_si512());
|
|
@@ -3363,10 +3128,10 @@ _mm512_maskz_permutex2var_epi64(__mmask8 __U, __m512i __A, __m512i __I,
|
|
|
3363
3128
|
(__v16si)_mm512_setzero_si512()))
|
|
3364
3129
|
/* Vector Extract */
|
|
3365
3130
|
|
|
3366
|
-
#define _mm512_extractf64x4_pd(A, I)
|
|
3367
|
-
((__m256d)__builtin_ia32_extractf64x4_mask((__v8df)(__m512d)(A), (int)(I),
|
|
3368
|
-
(__v4df)
|
|
3369
|
-
(__mmask8)-1))
|
|
3131
|
+
#define _mm512_extractf64x4_pd(A, I) \
|
|
3132
|
+
((__m256d)__builtin_ia32_extractf64x4_mask((__v8df)(__m512d)(A), (int)(I), \
|
|
3133
|
+
(__v4df)_mm256_setzero_pd(), \
|
|
3134
|
+
(__mmask8) - 1))
|
|
3370
3135
|
|
|
3371
3136
|
#define _mm512_mask_extractf64x4_pd(W, U, A, imm) \
|
|
3372
3137
|
((__m256d)__builtin_ia32_extractf64x4_mask((__v8df)(__m512d)(A), (int)(imm), \
|
|
@@ -3378,10 +3143,10 @@ _mm512_maskz_permutex2var_epi64(__mmask8 __U, __m512i __A, __m512i __I,
|
|
|
3378
3143
|
(__v4df)_mm256_setzero_pd(), \
|
|
3379
3144
|
(__mmask8)(U)))
|
|
3380
3145
|
|
|
3381
|
-
#define _mm512_extractf32x4_ps(A, I)
|
|
3382
|
-
((__m128)__builtin_ia32_extractf32x4_mask((__v16sf)(__m512)(A), (int)(I),
|
|
3383
|
-
(__v4sf)
|
|
3384
|
-
(__mmask8)-1))
|
|
3146
|
+
#define _mm512_extractf32x4_ps(A, I) \
|
|
3147
|
+
((__m128)__builtin_ia32_extractf32x4_mask((__v16sf)(__m512)(A), (int)(I), \
|
|
3148
|
+
(__v4sf)_mm_setzero_ps(), \
|
|
3149
|
+
(__mmask8) - 1))
|
|
3385
3150
|
|
|
3386
3151
|
#define _mm512_mask_extractf32x4_ps(W, U, A, imm) \
|
|
3387
3152
|
((__m128)__builtin_ia32_extractf32x4_mask((__v16sf)(__m512)(A), (int)(imm), \
|
|
@@ -3395,33 +3160,29 @@ _mm512_maskz_permutex2var_epi64(__mmask8 __U, __m512i __A, __m512i __I,
|
|
|
3395
3160
|
|
|
3396
3161
|
/* Vector Blend */
|
|
3397
3162
|
|
|
3398
|
-
static __inline __m512d
|
|
3399
|
-
_mm512_mask_blend_pd(__mmask8 __U, __m512d __A, __m512d __W)
|
|
3400
|
-
{
|
|
3163
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3164
|
+
_mm512_mask_blend_pd(__mmask8 __U, __m512d __A, __m512d __W) {
|
|
3401
3165
|
return (__m512d) __builtin_ia32_selectpd_512 ((__mmask8) __U,
|
|
3402
3166
|
(__v8df) __W,
|
|
3403
3167
|
(__v8df) __A);
|
|
3404
3168
|
}
|
|
3405
3169
|
|
|
3406
|
-
static __inline __m512
|
|
3407
|
-
_mm512_mask_blend_ps(__mmask16 __U, __m512 __A, __m512 __W)
|
|
3408
|
-
{
|
|
3170
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3171
|
+
_mm512_mask_blend_ps(__mmask16 __U, __m512 __A, __m512 __W) {
|
|
3409
3172
|
return (__m512) __builtin_ia32_selectps_512 ((__mmask16) __U,
|
|
3410
3173
|
(__v16sf) __W,
|
|
3411
3174
|
(__v16sf) __A);
|
|
3412
3175
|
}
|
|
3413
3176
|
|
|
3414
|
-
static __inline __m512i
|
|
3415
|
-
_mm512_mask_blend_epi64(__mmask8 __U, __m512i __A, __m512i __W)
|
|
3416
|
-
{
|
|
3177
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3178
|
+
_mm512_mask_blend_epi64(__mmask8 __U, __m512i __A, __m512i __W) {
|
|
3417
3179
|
return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __U,
|
|
3418
3180
|
(__v8di) __W,
|
|
3419
3181
|
(__v8di) __A);
|
|
3420
3182
|
}
|
|
3421
3183
|
|
|
3422
|
-
static __inline __m512i
|
|
3423
|
-
_mm512_mask_blend_epi32(__mmask16 __U, __m512i __A, __m512i __W)
|
|
3424
|
-
{
|
|
3184
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3185
|
+
_mm512_mask_blend_epi32(__mmask16 __U, __m512i __A, __m512i __W) {
|
|
3425
3186
|
return (__m512i) __builtin_ia32_selectd_512 ((__mmask16) __U,
|
|
3426
3187
|
(__v16si) __W,
|
|
3427
3188
|
(__v16si) __A);
|
|
@@ -3615,115 +3376,99 @@ _mm512_maskz_cvttps_epu32 (__mmask16 __U, __m512 __A)
|
|
|
3615
3376
|
(__v16sf)_mm512_setzero_ps(), \
|
|
3616
3377
|
(__mmask16)(U), (int)(R)))
|
|
3617
3378
|
|
|
3618
|
-
static __inline__ __m512
|
|
3619
|
-
_mm512_cvtepu32_ps
|
|
3620
|
-
{
|
|
3379
|
+
static __inline__ __m512
|
|
3380
|
+
__DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_cvtepu32_ps(__m512i __A) {
|
|
3621
3381
|
return (__m512)__builtin_convertvector((__v16su)__A, __v16sf);
|
|
3622
3382
|
}
|
|
3623
3383
|
|
|
3624
|
-
static __inline__ __m512
|
|
3625
|
-
_mm512_mask_cvtepu32_ps
|
|
3626
|
-
{
|
|
3384
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3385
|
+
_mm512_mask_cvtepu32_ps(__m512 __W, __mmask16 __U, __m512i __A) {
|
|
3627
3386
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
3628
3387
|
(__v16sf)_mm512_cvtepu32_ps(__A),
|
|
3629
3388
|
(__v16sf)__W);
|
|
3630
3389
|
}
|
|
3631
3390
|
|
|
3632
|
-
static __inline__ __m512
|
|
3633
|
-
_mm512_maskz_cvtepu32_ps
|
|
3634
|
-
{
|
|
3391
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3392
|
+
_mm512_maskz_cvtepu32_ps(__mmask16 __U, __m512i __A) {
|
|
3635
3393
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
3636
3394
|
(__v16sf)_mm512_cvtepu32_ps(__A),
|
|
3637
3395
|
(__v16sf)_mm512_setzero_ps());
|
|
3638
3396
|
}
|
|
3639
3397
|
|
|
3640
|
-
static __inline __m512d
|
|
3641
|
-
_mm512_cvtepi32_pd(__m256i __A)
|
|
3642
|
-
{
|
|
3398
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3399
|
+
_mm512_cvtepi32_pd(__m256i __A) {
|
|
3643
3400
|
return (__m512d)__builtin_convertvector((__v8si)__A, __v8df);
|
|
3644
3401
|
}
|
|
3645
3402
|
|
|
3646
|
-
static __inline__ __m512d
|
|
3647
|
-
_mm512_mask_cvtepi32_pd
|
|
3648
|
-
{
|
|
3403
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3404
|
+
_mm512_mask_cvtepi32_pd(__m512d __W, __mmask8 __U, __m256i __A) {
|
|
3649
3405
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U,
|
|
3650
3406
|
(__v8df)_mm512_cvtepi32_pd(__A),
|
|
3651
3407
|
(__v8df)__W);
|
|
3652
3408
|
}
|
|
3653
3409
|
|
|
3654
|
-
static __inline__ __m512d
|
|
3655
|
-
_mm512_maskz_cvtepi32_pd
|
|
3656
|
-
{
|
|
3410
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3411
|
+
_mm512_maskz_cvtepi32_pd(__mmask8 __U, __m256i __A) {
|
|
3657
3412
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U,
|
|
3658
3413
|
(__v8df)_mm512_cvtepi32_pd(__A),
|
|
3659
3414
|
(__v8df)_mm512_setzero_pd());
|
|
3660
3415
|
}
|
|
3661
3416
|
|
|
3662
|
-
static __inline__ __m512d
|
|
3663
|
-
_mm512_cvtepi32lo_pd(__m512i __A)
|
|
3664
|
-
{
|
|
3417
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3418
|
+
_mm512_cvtepi32lo_pd(__m512i __A) {
|
|
3665
3419
|
return (__m512d) _mm512_cvtepi32_pd(_mm512_castsi512_si256(__A));
|
|
3666
3420
|
}
|
|
3667
3421
|
|
|
3668
|
-
static __inline__ __m512d
|
|
3669
|
-
_mm512_mask_cvtepi32lo_pd(__m512d __W, __mmask8 __U,__m512i __A)
|
|
3670
|
-
{
|
|
3422
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3423
|
+
_mm512_mask_cvtepi32lo_pd(__m512d __W, __mmask8 __U, __m512i __A) {
|
|
3671
3424
|
return (__m512d) _mm512_mask_cvtepi32_pd(__W, __U, _mm512_castsi512_si256(__A));
|
|
3672
3425
|
}
|
|
3673
3426
|
|
|
3674
|
-
static __inline__ __m512
|
|
3675
|
-
_mm512_cvtepi32_ps
|
|
3676
|
-
{
|
|
3427
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3428
|
+
_mm512_cvtepi32_ps(__m512i __A) {
|
|
3677
3429
|
return (__m512)__builtin_convertvector((__v16si)__A, __v16sf);
|
|
3678
3430
|
}
|
|
3679
3431
|
|
|
3680
|
-
static __inline__ __m512
|
|
3681
|
-
_mm512_mask_cvtepi32_ps
|
|
3682
|
-
{
|
|
3432
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3433
|
+
_mm512_mask_cvtepi32_ps(__m512 __W, __mmask16 __U, __m512i __A) {
|
|
3683
3434
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
3684
3435
|
(__v16sf)_mm512_cvtepi32_ps(__A),
|
|
3685
3436
|
(__v16sf)__W);
|
|
3686
3437
|
}
|
|
3687
3438
|
|
|
3688
|
-
static __inline__ __m512
|
|
3689
|
-
_mm512_maskz_cvtepi32_ps
|
|
3690
|
-
{
|
|
3439
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3440
|
+
_mm512_maskz_cvtepi32_ps(__mmask16 __U, __m512i __A) {
|
|
3691
3441
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
3692
3442
|
(__v16sf)_mm512_cvtepi32_ps(__A),
|
|
3693
3443
|
(__v16sf)_mm512_setzero_ps());
|
|
3694
3444
|
}
|
|
3695
3445
|
|
|
3696
|
-
static __inline __m512d
|
|
3697
|
-
_mm512_cvtepu32_pd(__m256i __A)
|
|
3698
|
-
{
|
|
3446
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3447
|
+
_mm512_cvtepu32_pd(__m256i __A) {
|
|
3699
3448
|
return (__m512d)__builtin_convertvector((__v8su)__A, __v8df);
|
|
3700
3449
|
}
|
|
3701
3450
|
|
|
3702
|
-
static __inline__ __m512d
|
|
3703
|
-
_mm512_mask_cvtepu32_pd
|
|
3704
|
-
{
|
|
3451
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3452
|
+
_mm512_mask_cvtepu32_pd(__m512d __W, __mmask8 __U, __m256i __A) {
|
|
3705
3453
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U,
|
|
3706
3454
|
(__v8df)_mm512_cvtepu32_pd(__A),
|
|
3707
3455
|
(__v8df)__W);
|
|
3708
3456
|
}
|
|
3709
3457
|
|
|
3710
|
-
static __inline__ __m512d
|
|
3711
|
-
_mm512_maskz_cvtepu32_pd
|
|
3712
|
-
{
|
|
3458
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3459
|
+
_mm512_maskz_cvtepu32_pd(__mmask8 __U, __m256i __A) {
|
|
3713
3460
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U,
|
|
3714
3461
|
(__v8df)_mm512_cvtepu32_pd(__A),
|
|
3715
3462
|
(__v8df)_mm512_setzero_pd());
|
|
3716
3463
|
}
|
|
3717
3464
|
|
|
3718
|
-
static __inline__ __m512d
|
|
3719
|
-
_mm512_cvtepu32lo_pd(__m512i __A)
|
|
3720
|
-
{
|
|
3465
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3466
|
+
_mm512_cvtepu32lo_pd(__m512i __A) {
|
|
3721
3467
|
return (__m512d) _mm512_cvtepu32_pd(_mm512_castsi512_si256(__A));
|
|
3722
3468
|
}
|
|
3723
3469
|
|
|
3724
|
-
static __inline__ __m512d
|
|
3725
|
-
_mm512_mask_cvtepu32lo_pd(__m512d __W, __mmask8 __U,__m512i __A)
|
|
3726
|
-
{
|
|
3470
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3471
|
+
_mm512_mask_cvtepu32lo_pd(__m512d __W, __mmask8 __U, __m512i __A) {
|
|
3727
3472
|
return (__m512d) _mm512_mask_cvtepu32_pd(__W, __U, _mm512_castsi512_si256(__A));
|
|
3728
3473
|
}
|
|
3729
3474
|
|
|
@@ -3742,44 +3487,38 @@ _mm512_mask_cvtepu32lo_pd(__m512d __W, __mmask8 __U,__m512i __A)
|
|
|
3742
3487
|
(__v8sf)_mm256_setzero_ps(), \
|
|
3743
3488
|
(__mmask8)(U), (int)(R)))
|
|
3744
3489
|
|
|
3745
|
-
static __inline__ __m256
|
|
3746
|
-
_mm512_cvtpd_ps
|
|
3747
|
-
|
|
3748
|
-
|
|
3749
|
-
|
|
3750
|
-
(__mmask8) -1,
|
|
3751
|
-
_MM_FROUND_CUR_DIRECTION);
|
|
3490
|
+
static __inline__ __m256
|
|
3491
|
+
__DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_cvtpd_ps(__m512d __A) {
|
|
3492
|
+
return (__m256)__builtin_ia32_cvtpd2ps512_mask(
|
|
3493
|
+
(__v8df)__A, (__v8sf)_mm256_setzero_ps(), (__mmask8)-1,
|
|
3494
|
+
_MM_FROUND_CUR_DIRECTION);
|
|
3752
3495
|
}
|
|
3753
3496
|
|
|
3754
|
-
static __inline__ __m256
|
|
3755
|
-
_mm512_mask_cvtpd_ps
|
|
3756
|
-
{
|
|
3497
|
+
static __inline__ __m256 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3498
|
+
_mm512_mask_cvtpd_ps(__m256 __W, __mmask8 __U, __m512d __A) {
|
|
3757
3499
|
return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
|
|
3758
3500
|
(__v8sf) __W,
|
|
3759
3501
|
(__mmask8) __U,
|
|
3760
3502
|
_MM_FROUND_CUR_DIRECTION);
|
|
3761
3503
|
}
|
|
3762
3504
|
|
|
3763
|
-
static __inline__ __m256
|
|
3764
|
-
_mm512_maskz_cvtpd_ps
|
|
3765
|
-
{
|
|
3505
|
+
static __inline__ __m256 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3506
|
+
_mm512_maskz_cvtpd_ps(__mmask8 __U, __m512d __A) {
|
|
3766
3507
|
return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
|
|
3767
3508
|
(__v8sf) _mm256_setzero_ps (),
|
|
3768
3509
|
(__mmask8) __U,
|
|
3769
3510
|
_MM_FROUND_CUR_DIRECTION);
|
|
3770
3511
|
}
|
|
3771
3512
|
|
|
3772
|
-
static __inline__ __m512
|
|
3773
|
-
_mm512_cvtpd_pslo
|
|
3774
|
-
{
|
|
3513
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3514
|
+
_mm512_cvtpd_pslo(__m512d __A) {
|
|
3775
3515
|
return (__m512) __builtin_shufflevector((__v8sf) _mm512_cvtpd_ps(__A),
|
|
3776
3516
|
(__v8sf) _mm256_setzero_ps (),
|
|
3777
3517
|
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
|
|
3778
3518
|
}
|
|
3779
3519
|
|
|
3780
|
-
static __inline__ __m512
|
|
3781
|
-
_mm512_mask_cvtpd_pslo
|
|
3782
|
-
{
|
|
3520
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3521
|
+
_mm512_mask_cvtpd_pslo(__m512 __W, __mmask8 __U, __m512d __A) {
|
|
3783
3522
|
return (__m512) __builtin_shufflevector (
|
|
3784
3523
|
(__v8sf) _mm512_mask_cvtpd_ps (_mm512_castps512_ps256(__W),
|
|
3785
3524
|
__U, __A),
|
|
@@ -4123,9 +3862,8 @@ _mm512_cvtss_f32(__m512 __a)
|
|
|
4123
3862
|
|
|
4124
3863
|
/* Unpack and Interleave */
|
|
4125
3864
|
|
|
4126
|
-
static __inline __m512d
|
|
4127
|
-
_mm512_unpackhi_pd(__m512d __a, __m512d __b)
|
|
4128
|
-
{
|
|
3865
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3866
|
+
_mm512_unpackhi_pd(__m512d __a, __m512d __b) {
|
|
4129
3867
|
return (__m512d)__builtin_shufflevector((__v8df)__a, (__v8df)__b,
|
|
4130
3868
|
1, 9, 1+2, 9+2, 1+4, 9+4, 1+6, 9+6);
|
|
4131
3869
|
}
|
|
@@ -4146,9 +3884,8 @@ _mm512_maskz_unpackhi_pd(__mmask8 __U, __m512d __A, __m512d __B)
|
|
|
4146
3884
|
(__v8df)_mm512_setzero_pd());
|
|
4147
3885
|
}
|
|
4148
3886
|
|
|
4149
|
-
static __inline __m512d
|
|
4150
|
-
_mm512_unpacklo_pd(__m512d __a, __m512d __b)
|
|
4151
|
-
{
|
|
3887
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3888
|
+
_mm512_unpacklo_pd(__m512d __a, __m512d __b) {
|
|
4152
3889
|
return (__m512d)__builtin_shufflevector((__v8df)__a, (__v8df)__b,
|
|
4153
3890
|
0, 8, 0+2, 8+2, 0+4, 8+4, 0+6, 8+6);
|
|
4154
3891
|
}
|
|
@@ -4169,9 +3906,8 @@ _mm512_maskz_unpacklo_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
|
4169
3906
|
(__v8df)_mm512_setzero_pd());
|
|
4170
3907
|
}
|
|
4171
3908
|
|
|
4172
|
-
static __inline __m512
|
|
4173
|
-
_mm512_unpackhi_ps(__m512 __a, __m512 __b)
|
|
4174
|
-
{
|
|
3909
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3910
|
+
_mm512_unpackhi_ps(__m512 __a, __m512 __b) {
|
|
4175
3911
|
return (__m512)__builtin_shufflevector((__v16sf)__a, (__v16sf)__b,
|
|
4176
3912
|
2, 18, 3, 19,
|
|
4177
3913
|
2+4, 18+4, 3+4, 19+4,
|
|
@@ -4195,9 +3931,8 @@ _mm512_maskz_unpackhi_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
|
4195
3931
|
(__v16sf)_mm512_setzero_ps());
|
|
4196
3932
|
}
|
|
4197
3933
|
|
|
4198
|
-
static __inline __m512
|
|
4199
|
-
_mm512_unpacklo_ps(__m512 __a, __m512 __b)
|
|
4200
|
-
{
|
|
3934
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3935
|
+
_mm512_unpacklo_ps(__m512 __a, __m512 __b) {
|
|
4201
3936
|
return (__m512)__builtin_shufflevector((__v16sf)__a, (__v16sf)__b,
|
|
4202
3937
|
0, 16, 1, 17,
|
|
4203
3938
|
0+4, 16+4, 1+4, 17+4,
|
|
@@ -4221,9 +3956,8 @@ _mm512_maskz_unpacklo_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
|
4221
3956
|
(__v16sf)_mm512_setzero_ps());
|
|
4222
3957
|
}
|
|
4223
3958
|
|
|
4224
|
-
static __inline__ __m512i
|
|
4225
|
-
_mm512_unpackhi_epi32(__m512i __A, __m512i __B)
|
|
4226
|
-
{
|
|
3959
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3960
|
+
_mm512_unpackhi_epi32(__m512i __A, __m512i __B) {
|
|
4227
3961
|
return (__m512i)__builtin_shufflevector((__v16si)__A, (__v16si)__B,
|
|
4228
3962
|
2, 18, 3, 19,
|
|
4229
3963
|
2+4, 18+4, 3+4, 19+4,
|
|
@@ -4247,9 +3981,8 @@ _mm512_maskz_unpackhi_epi32(__mmask16 __U, __m512i __A, __m512i __B)
|
|
|
4247
3981
|
(__v16si)_mm512_setzero_si512());
|
|
4248
3982
|
}
|
|
4249
3983
|
|
|
4250
|
-
static __inline__ __m512i
|
|
4251
|
-
_mm512_unpacklo_epi32(__m512i __A, __m512i __B)
|
|
4252
|
-
{
|
|
3984
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
3985
|
+
_mm512_unpacklo_epi32(__m512i __A, __m512i __B) {
|
|
4253
3986
|
return (__m512i)__builtin_shufflevector((__v16si)__A, (__v16si)__B,
|
|
4254
3987
|
0, 16, 1, 17,
|
|
4255
3988
|
0+4, 16+4, 1+4, 17+4,
|
|
@@ -4273,9 +4006,8 @@ _mm512_maskz_unpacklo_epi32(__mmask16 __U, __m512i __A, __m512i __B)
|
|
|
4273
4006
|
(__v16si)_mm512_setzero_si512());
|
|
4274
4007
|
}
|
|
4275
4008
|
|
|
4276
|
-
static __inline__ __m512i
|
|
4277
|
-
_mm512_unpackhi_epi64(__m512i __A, __m512i __B)
|
|
4278
|
-
{
|
|
4009
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4010
|
+
_mm512_unpackhi_epi64(__m512i __A, __m512i __B) {
|
|
4279
4011
|
return (__m512i)__builtin_shufflevector((__v8di)__A, (__v8di)__B,
|
|
4280
4012
|
1, 9, 1+2, 9+2, 1+4, 9+4, 1+6, 9+6);
|
|
4281
4013
|
}
|
|
@@ -4296,9 +4028,8 @@ _mm512_maskz_unpackhi_epi64(__mmask8 __U, __m512i __A, __m512i __B)
|
|
|
4296
4028
|
(__v8di)_mm512_setzero_si512());
|
|
4297
4029
|
}
|
|
4298
4030
|
|
|
4299
|
-
static __inline__ __m512i
|
|
4300
|
-
_mm512_unpacklo_epi64
|
|
4301
|
-
{
|
|
4031
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4032
|
+
_mm512_unpacklo_epi64(__m512i __A, __m512i __B) {
|
|
4302
4033
|
return (__m512i)__builtin_shufflevector((__v8di)__A, (__v8di)__B,
|
|
4303
4034
|
0, 8, 0+2, 8+2, 0+4, 8+4, 0+6, 8+6);
|
|
4304
4035
|
}
|
|
@@ -4619,9 +4350,8 @@ _mm512_store_epi64 (void *__P, __m512i __A)
|
|
|
4619
4350
|
|
|
4620
4351
|
/* Mask ops */
|
|
4621
4352
|
|
|
4622
|
-
static __inline __mmask16
|
|
4623
|
-
_mm512_knot(__mmask16 __M)
|
|
4624
|
-
{
|
|
4353
|
+
static __inline __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
4354
|
+
_mm512_knot(__mmask16 __M) {
|
|
4625
4355
|
return __builtin_ia32_knothi(__M);
|
|
4626
4356
|
}
|
|
4627
4357
|
|
|
@@ -4727,237 +4457,207 @@ _mm512_knot(__mmask16 __M)
|
|
|
4727
4457
|
#define _mm512_mask_cmpneq_epu64_mask(k, A, B) \
|
|
4728
4458
|
_mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_NE)
|
|
4729
4459
|
|
|
4730
|
-
static __inline__ __m512i
|
|
4731
|
-
_mm512_cvtepi8_epi32(__m128i __A)
|
|
4732
|
-
{
|
|
4460
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4461
|
+
_mm512_cvtepi8_epi32(__m128i __A) {
|
|
4733
4462
|
/* This function always performs a signed extension, but __v16qi is a char
|
|
4734
4463
|
which may be signed or unsigned, so use __v16qs. */
|
|
4735
4464
|
return (__m512i)__builtin_convertvector((__v16qs)__A, __v16si);
|
|
4736
4465
|
}
|
|
4737
4466
|
|
|
4738
|
-
static __inline__ __m512i
|
|
4739
|
-
_mm512_mask_cvtepi8_epi32(__m512i __W, __mmask16 __U, __m128i __A)
|
|
4740
|
-
{
|
|
4467
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4468
|
+
_mm512_mask_cvtepi8_epi32(__m512i __W, __mmask16 __U, __m128i __A) {
|
|
4741
4469
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
4742
4470
|
(__v16si)_mm512_cvtepi8_epi32(__A),
|
|
4743
4471
|
(__v16si)__W);
|
|
4744
4472
|
}
|
|
4745
4473
|
|
|
4746
|
-
static __inline__ __m512i
|
|
4747
|
-
_mm512_maskz_cvtepi8_epi32(__mmask16 __U, __m128i __A)
|
|
4748
|
-
{
|
|
4474
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4475
|
+
_mm512_maskz_cvtepi8_epi32(__mmask16 __U, __m128i __A) {
|
|
4749
4476
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
4750
4477
|
(__v16si)_mm512_cvtepi8_epi32(__A),
|
|
4751
4478
|
(__v16si)_mm512_setzero_si512());
|
|
4752
4479
|
}
|
|
4753
4480
|
|
|
4754
|
-
static __inline__ __m512i
|
|
4755
|
-
_mm512_cvtepi8_epi64(__m128i __A)
|
|
4756
|
-
{
|
|
4481
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4482
|
+
_mm512_cvtepi8_epi64(__m128i __A) {
|
|
4757
4483
|
/* This function always performs a signed extension, but __v16qi is a char
|
|
4758
4484
|
which may be signed or unsigned, so use __v16qs. */
|
|
4759
4485
|
return (__m512i)__builtin_convertvector(__builtin_shufflevector((__v16qs)__A, (__v16qs)__A, 0, 1, 2, 3, 4, 5, 6, 7), __v8di);
|
|
4760
4486
|
}
|
|
4761
4487
|
|
|
4762
|
-
static __inline__ __m512i
|
|
4763
|
-
_mm512_mask_cvtepi8_epi64(__m512i __W, __mmask8 __U, __m128i __A)
|
|
4764
|
-
{
|
|
4488
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4489
|
+
_mm512_mask_cvtepi8_epi64(__m512i __W, __mmask8 __U, __m128i __A) {
|
|
4765
4490
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
4766
4491
|
(__v8di)_mm512_cvtepi8_epi64(__A),
|
|
4767
4492
|
(__v8di)__W);
|
|
4768
4493
|
}
|
|
4769
4494
|
|
|
4770
|
-
static __inline__ __m512i
|
|
4771
|
-
_mm512_maskz_cvtepi8_epi64(__mmask8 __U, __m128i __A)
|
|
4772
|
-
{
|
|
4495
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4496
|
+
_mm512_maskz_cvtepi8_epi64(__mmask8 __U, __m128i __A) {
|
|
4773
4497
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
4774
4498
|
(__v8di)_mm512_cvtepi8_epi64(__A),
|
|
4775
4499
|
(__v8di)_mm512_setzero_si512 ());
|
|
4776
4500
|
}
|
|
4777
4501
|
|
|
4778
|
-
static __inline__ __m512i
|
|
4779
|
-
_mm512_cvtepi32_epi64(__m256i __X)
|
|
4780
|
-
{
|
|
4502
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4503
|
+
_mm512_cvtepi32_epi64(__m256i __X) {
|
|
4781
4504
|
return (__m512i)__builtin_convertvector((__v8si)__X, __v8di);
|
|
4782
4505
|
}
|
|
4783
4506
|
|
|
4784
|
-
static __inline__ __m512i
|
|
4785
|
-
_mm512_mask_cvtepi32_epi64(__m512i __W, __mmask8 __U, __m256i __X)
|
|
4786
|
-
{
|
|
4507
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4508
|
+
_mm512_mask_cvtepi32_epi64(__m512i __W, __mmask8 __U, __m256i __X) {
|
|
4787
4509
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
4788
4510
|
(__v8di)_mm512_cvtepi32_epi64(__X),
|
|
4789
4511
|
(__v8di)__W);
|
|
4790
4512
|
}
|
|
4791
4513
|
|
|
4792
|
-
static __inline__ __m512i
|
|
4793
|
-
_mm512_maskz_cvtepi32_epi64(__mmask8 __U, __m256i __X)
|
|
4794
|
-
{
|
|
4514
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4515
|
+
_mm512_maskz_cvtepi32_epi64(__mmask8 __U, __m256i __X) {
|
|
4795
4516
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
4796
4517
|
(__v8di)_mm512_cvtepi32_epi64(__X),
|
|
4797
4518
|
(__v8di)_mm512_setzero_si512());
|
|
4798
4519
|
}
|
|
4799
4520
|
|
|
4800
|
-
static __inline__ __m512i
|
|
4801
|
-
_mm512_cvtepi16_epi32(__m256i __A)
|
|
4802
|
-
{
|
|
4521
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4522
|
+
_mm512_cvtepi16_epi32(__m256i __A) {
|
|
4803
4523
|
return (__m512i)__builtin_convertvector((__v16hi)__A, __v16si);
|
|
4804
4524
|
}
|
|
4805
4525
|
|
|
4806
|
-
static __inline__ __m512i
|
|
4807
|
-
_mm512_mask_cvtepi16_epi32(__m512i __W, __mmask16 __U, __m256i __A)
|
|
4808
|
-
{
|
|
4526
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4527
|
+
_mm512_mask_cvtepi16_epi32(__m512i __W, __mmask16 __U, __m256i __A) {
|
|
4809
4528
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
4810
4529
|
(__v16si)_mm512_cvtepi16_epi32(__A),
|
|
4811
4530
|
(__v16si)__W);
|
|
4812
4531
|
}
|
|
4813
4532
|
|
|
4814
|
-
static __inline__ __m512i
|
|
4815
|
-
_mm512_maskz_cvtepi16_epi32(__mmask16 __U, __m256i __A)
|
|
4816
|
-
{
|
|
4533
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4534
|
+
_mm512_maskz_cvtepi16_epi32(__mmask16 __U, __m256i __A) {
|
|
4817
4535
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
4818
4536
|
(__v16si)_mm512_cvtepi16_epi32(__A),
|
|
4819
4537
|
(__v16si)_mm512_setzero_si512 ());
|
|
4820
4538
|
}
|
|
4821
4539
|
|
|
4822
|
-
static __inline__ __m512i
|
|
4823
|
-
_mm512_cvtepi16_epi64(__m128i __A)
|
|
4824
|
-
{
|
|
4540
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4541
|
+
_mm512_cvtepi16_epi64(__m128i __A) {
|
|
4825
4542
|
return (__m512i)__builtin_convertvector((__v8hi)__A, __v8di);
|
|
4826
4543
|
}
|
|
4827
4544
|
|
|
4828
|
-
static __inline__ __m512i
|
|
4829
|
-
_mm512_mask_cvtepi16_epi64(__m512i __W, __mmask8 __U, __m128i __A)
|
|
4830
|
-
{
|
|
4545
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4546
|
+
_mm512_mask_cvtepi16_epi64(__m512i __W, __mmask8 __U, __m128i __A) {
|
|
4831
4547
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
4832
4548
|
(__v8di)_mm512_cvtepi16_epi64(__A),
|
|
4833
4549
|
(__v8di)__W);
|
|
4834
4550
|
}
|
|
4835
4551
|
|
|
4836
|
-
static __inline__ __m512i
|
|
4837
|
-
_mm512_maskz_cvtepi16_epi64(__mmask8 __U, __m128i __A)
|
|
4838
|
-
{
|
|
4552
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4553
|
+
_mm512_maskz_cvtepi16_epi64(__mmask8 __U, __m128i __A) {
|
|
4839
4554
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
4840
4555
|
(__v8di)_mm512_cvtepi16_epi64(__A),
|
|
4841
4556
|
(__v8di)_mm512_setzero_si512());
|
|
4842
4557
|
}
|
|
4843
4558
|
|
|
4844
|
-
static __inline__ __m512i
|
|
4845
|
-
_mm512_cvtepu8_epi32(__m128i __A)
|
|
4846
|
-
{
|
|
4559
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4560
|
+
_mm512_cvtepu8_epi32(__m128i __A) {
|
|
4847
4561
|
return (__m512i)__builtin_convertvector((__v16qu)__A, __v16si);
|
|
4848
4562
|
}
|
|
4849
4563
|
|
|
4850
|
-
static __inline__ __m512i
|
|
4851
|
-
_mm512_mask_cvtepu8_epi32(__m512i __W, __mmask16 __U, __m128i __A)
|
|
4852
|
-
{
|
|
4564
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4565
|
+
_mm512_mask_cvtepu8_epi32(__m512i __W, __mmask16 __U, __m128i __A) {
|
|
4853
4566
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
4854
4567
|
(__v16si)_mm512_cvtepu8_epi32(__A),
|
|
4855
4568
|
(__v16si)__W);
|
|
4856
4569
|
}
|
|
4857
4570
|
|
|
4858
|
-
static __inline__ __m512i
|
|
4859
|
-
_mm512_maskz_cvtepu8_epi32(__mmask16 __U, __m128i __A)
|
|
4860
|
-
{
|
|
4571
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4572
|
+
_mm512_maskz_cvtepu8_epi32(__mmask16 __U, __m128i __A) {
|
|
4861
4573
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
4862
4574
|
(__v16si)_mm512_cvtepu8_epi32(__A),
|
|
4863
4575
|
(__v16si)_mm512_setzero_si512());
|
|
4864
4576
|
}
|
|
4865
4577
|
|
|
4866
|
-
static __inline__ __m512i
|
|
4867
|
-
_mm512_cvtepu8_epi64(__m128i __A)
|
|
4868
|
-
{
|
|
4578
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4579
|
+
_mm512_cvtepu8_epi64(__m128i __A) {
|
|
4869
4580
|
return (__m512i)__builtin_convertvector(__builtin_shufflevector((__v16qu)__A, (__v16qu)__A, 0, 1, 2, 3, 4, 5, 6, 7), __v8di);
|
|
4870
4581
|
}
|
|
4871
4582
|
|
|
4872
|
-
static __inline__ __m512i
|
|
4873
|
-
_mm512_mask_cvtepu8_epi64(__m512i __W, __mmask8 __U, __m128i __A)
|
|
4874
|
-
{
|
|
4583
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4584
|
+
_mm512_mask_cvtepu8_epi64(__m512i __W, __mmask8 __U, __m128i __A) {
|
|
4875
4585
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
4876
4586
|
(__v8di)_mm512_cvtepu8_epi64(__A),
|
|
4877
4587
|
(__v8di)__W);
|
|
4878
4588
|
}
|
|
4879
4589
|
|
|
4880
|
-
static __inline__ __m512i
|
|
4881
|
-
_mm512_maskz_cvtepu8_epi64(__mmask8 __U, __m128i __A)
|
|
4882
|
-
{
|
|
4590
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4591
|
+
_mm512_maskz_cvtepu8_epi64(__mmask8 __U, __m128i __A) {
|
|
4883
4592
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
4884
4593
|
(__v8di)_mm512_cvtepu8_epi64(__A),
|
|
4885
4594
|
(__v8di)_mm512_setzero_si512());
|
|
4886
4595
|
}
|
|
4887
4596
|
|
|
4888
|
-
static __inline__ __m512i
|
|
4889
|
-
_mm512_cvtepu32_epi64(__m256i __X)
|
|
4890
|
-
{
|
|
4597
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4598
|
+
_mm512_cvtepu32_epi64(__m256i __X) {
|
|
4891
4599
|
return (__m512i)__builtin_convertvector((__v8su)__X, __v8di);
|
|
4892
4600
|
}
|
|
4893
4601
|
|
|
4894
|
-
static __inline__ __m512i
|
|
4895
|
-
_mm512_mask_cvtepu32_epi64(__m512i __W, __mmask8 __U, __m256i __X)
|
|
4896
|
-
{
|
|
4602
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4603
|
+
_mm512_mask_cvtepu32_epi64(__m512i __W, __mmask8 __U, __m256i __X) {
|
|
4897
4604
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
4898
4605
|
(__v8di)_mm512_cvtepu32_epi64(__X),
|
|
4899
4606
|
(__v8di)__W);
|
|
4900
4607
|
}
|
|
4901
4608
|
|
|
4902
|
-
static __inline__ __m512i
|
|
4903
|
-
_mm512_maskz_cvtepu32_epi64(__mmask8 __U, __m256i __X)
|
|
4904
|
-
{
|
|
4609
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4610
|
+
_mm512_maskz_cvtepu32_epi64(__mmask8 __U, __m256i __X) {
|
|
4905
4611
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
4906
4612
|
(__v8di)_mm512_cvtepu32_epi64(__X),
|
|
4907
4613
|
(__v8di)_mm512_setzero_si512());
|
|
4908
4614
|
}
|
|
4909
4615
|
|
|
4910
|
-
static __inline__ __m512i
|
|
4911
|
-
_mm512_cvtepu16_epi32(__m256i __A)
|
|
4912
|
-
{
|
|
4616
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4617
|
+
_mm512_cvtepu16_epi32(__m256i __A) {
|
|
4913
4618
|
return (__m512i)__builtin_convertvector((__v16hu)__A, __v16si);
|
|
4914
4619
|
}
|
|
4915
4620
|
|
|
4916
|
-
static __inline__ __m512i
|
|
4917
|
-
_mm512_mask_cvtepu16_epi32(__m512i __W, __mmask16 __U, __m256i __A)
|
|
4918
|
-
{
|
|
4621
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4622
|
+
_mm512_mask_cvtepu16_epi32(__m512i __W, __mmask16 __U, __m256i __A) {
|
|
4919
4623
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
4920
4624
|
(__v16si)_mm512_cvtepu16_epi32(__A),
|
|
4921
4625
|
(__v16si)__W);
|
|
4922
4626
|
}
|
|
4923
4627
|
|
|
4924
|
-
static __inline__ __m512i
|
|
4925
|
-
_mm512_maskz_cvtepu16_epi32(__mmask16 __U, __m256i __A)
|
|
4926
|
-
{
|
|
4628
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4629
|
+
_mm512_maskz_cvtepu16_epi32(__mmask16 __U, __m256i __A) {
|
|
4927
4630
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
4928
4631
|
(__v16si)_mm512_cvtepu16_epi32(__A),
|
|
4929
4632
|
(__v16si)_mm512_setzero_si512());
|
|
4930
4633
|
}
|
|
4931
4634
|
|
|
4932
|
-
static __inline__ __m512i
|
|
4933
|
-
_mm512_cvtepu16_epi64(__m128i __A)
|
|
4934
|
-
{
|
|
4635
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4636
|
+
_mm512_cvtepu16_epi64(__m128i __A) {
|
|
4935
4637
|
return (__m512i)__builtin_convertvector((__v8hu)__A, __v8di);
|
|
4936
4638
|
}
|
|
4937
4639
|
|
|
4938
|
-
static __inline__ __m512i
|
|
4939
|
-
_mm512_mask_cvtepu16_epi64(__m512i __W, __mmask8 __U, __m128i __A)
|
|
4940
|
-
{
|
|
4640
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4641
|
+
_mm512_mask_cvtepu16_epi64(__m512i __W, __mmask8 __U, __m128i __A) {
|
|
4941
4642
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
4942
4643
|
(__v8di)_mm512_cvtepu16_epi64(__A),
|
|
4943
4644
|
(__v8di)__W);
|
|
4944
4645
|
}
|
|
4945
4646
|
|
|
4946
|
-
static __inline__ __m512i
|
|
4947
|
-
_mm512_maskz_cvtepu16_epi64(__mmask8 __U, __m128i __A)
|
|
4948
|
-
{
|
|
4647
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4648
|
+
_mm512_maskz_cvtepu16_epi64(__mmask8 __U, __m128i __A) {
|
|
4949
4649
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
4950
4650
|
(__v8di)_mm512_cvtepu16_epi64(__A),
|
|
4951
4651
|
(__v8di)_mm512_setzero_si512());
|
|
4952
4652
|
}
|
|
4953
4653
|
|
|
4954
|
-
static __inline__ __m512i
|
|
4654
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4955
4655
|
_mm512_rorv_epi32 (__m512i __A, __m512i __B)
|
|
4956
4656
|
{
|
|
4957
|
-
return (__m512i)
|
|
4657
|
+
return (__m512i)__builtin_elementwise_fshr((__v16su)__A,(__v16su)__A, (__v16su)__B);
|
|
4958
4658
|
}
|
|
4959
4659
|
|
|
4960
|
-
static __inline__ __m512i
|
|
4660
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4961
4661
|
_mm512_mask_rorv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
4962
4662
|
{
|
|
4963
4663
|
return (__m512i)__builtin_ia32_selectd_512(__U,
|
|
@@ -4965,7 +4665,7 @@ _mm512_mask_rorv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
|
4965
4665
|
(__v16si)__W);
|
|
4966
4666
|
}
|
|
4967
4667
|
|
|
4968
|
-
static __inline__ __m512i
|
|
4668
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4969
4669
|
_mm512_maskz_rorv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
4970
4670
|
{
|
|
4971
4671
|
return (__m512i)__builtin_ia32_selectd_512(__U,
|
|
@@ -4973,13 +4673,13 @@ _mm512_maskz_rorv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
|
4973
4673
|
(__v16si)_mm512_setzero_si512());
|
|
4974
4674
|
}
|
|
4975
4675
|
|
|
4976
|
-
static __inline__ __m512i
|
|
4676
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4977
4677
|
_mm512_rorv_epi64 (__m512i __A, __m512i __B)
|
|
4978
4678
|
{
|
|
4979
|
-
return (__m512i)
|
|
4679
|
+
return (__m512i)__builtin_elementwise_fshr((__v8du)__A, (__v8du)__A, (__v8du)__B);
|
|
4980
4680
|
}
|
|
4981
4681
|
|
|
4982
|
-
static __inline__ __m512i
|
|
4682
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4983
4683
|
_mm512_mask_rorv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
4984
4684
|
{
|
|
4985
4685
|
return (__m512i)__builtin_ia32_selectq_512(__U,
|
|
@@ -4987,7 +4687,7 @@ _mm512_mask_rorv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
|
4987
4687
|
(__v8di)__W);
|
|
4988
4688
|
}
|
|
4989
4689
|
|
|
4990
|
-
static __inline__ __m512i
|
|
4690
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4991
4691
|
_mm512_maskz_rorv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
4992
4692
|
{
|
|
4993
4693
|
return (__m512i)__builtin_ia32_selectq_512(__U,
|
|
@@ -5063,13 +4763,13 @@ _mm512_maskz_rorv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
|
5063
4763
|
(__v8di)_mm512_rol_epi64((a), (b)), \
|
|
5064
4764
|
(__v8di)_mm512_setzero_si512()))
|
|
5065
4765
|
|
|
5066
|
-
static __inline__ __m512i
|
|
4766
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5067
4767
|
_mm512_rolv_epi32 (__m512i __A, __m512i __B)
|
|
5068
4768
|
{
|
|
5069
|
-
return (__m512i)
|
|
4769
|
+
return (__m512i)__builtin_elementwise_fshl((__v16su)__A, (__v16su)__A, (__v16su)__B);
|
|
5070
4770
|
}
|
|
5071
4771
|
|
|
5072
|
-
static __inline__ __m512i
|
|
4772
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5073
4773
|
_mm512_mask_rolv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
5074
4774
|
{
|
|
5075
4775
|
return (__m512i)__builtin_ia32_selectd_512(__U,
|
|
@@ -5077,7 +4777,7 @@ _mm512_mask_rolv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
|
5077
4777
|
(__v16si)__W);
|
|
5078
4778
|
}
|
|
5079
4779
|
|
|
5080
|
-
static __inline__ __m512i
|
|
4780
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5081
4781
|
_mm512_maskz_rolv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
5082
4782
|
{
|
|
5083
4783
|
return (__m512i)__builtin_ia32_selectd_512(__U,
|
|
@@ -5085,13 +4785,13 @@ _mm512_maskz_rolv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
|
5085
4785
|
(__v16si)_mm512_setzero_si512());
|
|
5086
4786
|
}
|
|
5087
4787
|
|
|
5088
|
-
static __inline__ __m512i
|
|
4788
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5089
4789
|
_mm512_rolv_epi64 (__m512i __A, __m512i __B)
|
|
5090
4790
|
{
|
|
5091
|
-
return (__m512i)
|
|
4791
|
+
return (__m512i)__builtin_elementwise_fshl((__v8du)__A, (__v8du)__A, (__v8du)__B);
|
|
5092
4792
|
}
|
|
5093
4793
|
|
|
5094
|
-
static __inline__ __m512i
|
|
4794
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5095
4795
|
_mm512_mask_rolv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
5096
4796
|
{
|
|
5097
4797
|
return (__m512i)__builtin_ia32_selectq_512(__U,
|
|
@@ -5099,7 +4799,7 @@ _mm512_mask_rolv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
|
5099
4799
|
(__v8di)__W);
|
|
5100
4800
|
}
|
|
5101
4801
|
|
|
5102
|
-
static __inline__ __m512i
|
|
4802
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5103
4803
|
_mm512_maskz_rolv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
5104
4804
|
{
|
|
5105
4805
|
return (__m512i)__builtin_ia32_selectq_512(__U,
|
|
@@ -5133,91 +4833,81 @@ _mm512_maskz_rolv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
|
5133
4833
|
(__v8di)_mm512_ror_epi64((A), (B)), \
|
|
5134
4834
|
(__v8di)_mm512_setzero_si512()))
|
|
5135
4835
|
|
|
5136
|
-
static __inline__ __m512i
|
|
5137
|
-
_mm512_slli_epi32(__m512i __A, unsigned int __B)
|
|
5138
|
-
{
|
|
4836
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4837
|
+
_mm512_slli_epi32(__m512i __A, unsigned int __B) {
|
|
5139
4838
|
return (__m512i)__builtin_ia32_pslldi512((__v16si)__A, (int)__B);
|
|
5140
4839
|
}
|
|
5141
4840
|
|
|
5142
|
-
static __inline__ __m512i
|
|
4841
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5143
4842
|
_mm512_mask_slli_epi32(__m512i __W, __mmask16 __U, __m512i __A,
|
|
5144
|
-
unsigned int __B)
|
|
5145
|
-
{
|
|
4843
|
+
unsigned int __B) {
|
|
5146
4844
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5147
4845
|
(__v16si)_mm512_slli_epi32(__A, __B),
|
|
5148
4846
|
(__v16si)__W);
|
|
5149
4847
|
}
|
|
5150
4848
|
|
|
5151
|
-
static __inline__ __m512i
|
|
4849
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5152
4850
|
_mm512_maskz_slli_epi32(__mmask16 __U, __m512i __A, unsigned int __B) {
|
|
5153
4851
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5154
4852
|
(__v16si)_mm512_slli_epi32(__A, __B),
|
|
5155
4853
|
(__v16si)_mm512_setzero_si512());
|
|
5156
4854
|
}
|
|
5157
4855
|
|
|
5158
|
-
static __inline__ __m512i
|
|
5159
|
-
_mm512_slli_epi64(__m512i __A, unsigned int __B)
|
|
5160
|
-
{
|
|
4856
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4857
|
+
_mm512_slli_epi64(__m512i __A, unsigned int __B) {
|
|
5161
4858
|
return (__m512i)__builtin_ia32_psllqi512((__v8di)__A, (int)__B);
|
|
5162
4859
|
}
|
|
5163
4860
|
|
|
5164
|
-
static __inline__ __m512i
|
|
5165
|
-
_mm512_mask_slli_epi64(__m512i __W, __mmask8 __U, __m512i __A,
|
|
5166
|
-
{
|
|
4861
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4862
|
+
_mm512_mask_slli_epi64(__m512i __W, __mmask8 __U, __m512i __A,
|
|
4863
|
+
unsigned int __B) {
|
|
5167
4864
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
5168
4865
|
(__v8di)_mm512_slli_epi64(__A, __B),
|
|
5169
4866
|
(__v8di)__W);
|
|
5170
4867
|
}
|
|
5171
4868
|
|
|
5172
|
-
static __inline__ __m512i
|
|
5173
|
-
_mm512_maskz_slli_epi64(__mmask8 __U, __m512i __A, unsigned int __B)
|
|
5174
|
-
{
|
|
4869
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4870
|
+
_mm512_maskz_slli_epi64(__mmask8 __U, __m512i __A, unsigned int __B) {
|
|
5175
4871
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
5176
4872
|
(__v8di)_mm512_slli_epi64(__A, __B),
|
|
5177
4873
|
(__v8di)_mm512_setzero_si512());
|
|
5178
4874
|
}
|
|
5179
4875
|
|
|
5180
|
-
static __inline__ __m512i
|
|
5181
|
-
_mm512_srli_epi32(__m512i __A, unsigned int __B)
|
|
5182
|
-
{
|
|
4876
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4877
|
+
_mm512_srli_epi32(__m512i __A, unsigned int __B) {
|
|
5183
4878
|
return (__m512i)__builtin_ia32_psrldi512((__v16si)__A, (int)__B);
|
|
5184
4879
|
}
|
|
5185
4880
|
|
|
5186
|
-
static __inline__ __m512i
|
|
4881
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5187
4882
|
_mm512_mask_srli_epi32(__m512i __W, __mmask16 __U, __m512i __A,
|
|
5188
|
-
unsigned int __B)
|
|
5189
|
-
{
|
|
4883
|
+
unsigned int __B) {
|
|
5190
4884
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5191
4885
|
(__v16si)_mm512_srli_epi32(__A, __B),
|
|
5192
4886
|
(__v16si)__W);
|
|
5193
4887
|
}
|
|
5194
4888
|
|
|
5195
|
-
static __inline__ __m512i
|
|
4889
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5196
4890
|
_mm512_maskz_srli_epi32(__mmask16 __U, __m512i __A, unsigned int __B) {
|
|
5197
4891
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5198
4892
|
(__v16si)_mm512_srli_epi32(__A, __B),
|
|
5199
4893
|
(__v16si)_mm512_setzero_si512());
|
|
5200
4894
|
}
|
|
5201
4895
|
|
|
5202
|
-
static __inline__ __m512i
|
|
5203
|
-
_mm512_srli_epi64(__m512i __A, unsigned int __B)
|
|
5204
|
-
{
|
|
4896
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4897
|
+
_mm512_srli_epi64(__m512i __A, unsigned int __B) {
|
|
5205
4898
|
return (__m512i)__builtin_ia32_psrlqi512((__v8di)__A, (int)__B);
|
|
5206
4899
|
}
|
|
5207
4900
|
|
|
5208
|
-
static __inline__ __m512i
|
|
4901
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5209
4902
|
_mm512_mask_srli_epi64(__m512i __W, __mmask8 __U, __m512i __A,
|
|
5210
|
-
unsigned int __B)
|
|
5211
|
-
{
|
|
4903
|
+
unsigned int __B) {
|
|
5212
4904
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
5213
4905
|
(__v8di)_mm512_srli_epi64(__A, __B),
|
|
5214
4906
|
(__v8di)__W);
|
|
5215
4907
|
}
|
|
5216
4908
|
|
|
5217
|
-
static __inline__ __m512i
|
|
5218
|
-
_mm512_maskz_srli_epi64(__mmask8 __U, __m512i __A,
|
|
5219
|
-
unsigned int __B)
|
|
5220
|
-
{
|
|
4909
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
4910
|
+
_mm512_maskz_srli_epi64(__mmask8 __U, __m512i __A, unsigned int __B) {
|
|
5221
4911
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
5222
4912
|
(__v8di)_mm512_srli_epi64(__A, __B),
|
|
5223
4913
|
(__v8di)_mm512_setzero_si512());
|
|
@@ -5303,7 +4993,7 @@ _mm512_mask_store_epi64 (void *__P, __mmask8 __U, __m512i __A)
|
|
|
5303
4993
|
(__mmask8) __U);
|
|
5304
4994
|
}
|
|
5305
4995
|
|
|
5306
|
-
static __inline__ __m512d
|
|
4996
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5307
4997
|
_mm512_movedup_pd (__m512d __A)
|
|
5308
4998
|
{
|
|
5309
4999
|
return (__m512d)__builtin_shufflevector((__v8df)__A, (__v8df)__A,
|
|
@@ -5664,10 +5354,9 @@ _mm_maskz_getexp_ss (__mmask8 __U, __m128 __A, __m128 __B)
|
|
|
5664
5354
|
(int)(((D)<<2) | (C)), \
|
|
5665
5355
|
(__v4sf)_mm_setzero_ps(), \
|
|
5666
5356
|
(__mmask8)(U), (int)(R)))
|
|
5667
|
-
|
|
5668
|
-
static __inline__ __mmask16
|
|
5669
|
-
_mm512_kmov
|
|
5670
|
-
{
|
|
5357
|
+
|
|
5358
|
+
static __inline__ __mmask16
|
|
5359
|
+
__DEFAULT_FN_ATTRS_CONSTEXPR _mm512_kmov(__mmask16 __A) {
|
|
5671
5360
|
return __A;
|
|
5672
5361
|
}
|
|
5673
5362
|
|
|
@@ -5684,79 +5373,70 @@ _mm512_kmov (__mmask16 __A)
|
|
|
5684
5373
|
((long long)__builtin_ia32_vcvtsd2si64((__v2df)(__m128d)(A), (int)(R)))
|
|
5685
5374
|
#endif
|
|
5686
5375
|
|
|
5687
|
-
static __inline__ __m512i
|
|
5688
|
-
_mm512_sll_epi32(__m512i __A, __m128i __B)
|
|
5689
|
-
{
|
|
5376
|
+
static __inline__ __m512i
|
|
5377
|
+
__DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_sll_epi32(__m512i __A, __m128i __B) {
|
|
5690
5378
|
return (__m512i)__builtin_ia32_pslld512((__v16si) __A, (__v4si)__B);
|
|
5691
5379
|
}
|
|
5692
5380
|
|
|
5693
|
-
static __inline__ __m512i
|
|
5694
|
-
_mm512_mask_sll_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
|
|
5695
|
-
{
|
|
5381
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5382
|
+
_mm512_mask_sll_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B) {
|
|
5696
5383
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5697
5384
|
(__v16si)_mm512_sll_epi32(__A, __B),
|
|
5698
5385
|
(__v16si)__W);
|
|
5699
5386
|
}
|
|
5700
5387
|
|
|
5701
|
-
static __inline__ __m512i
|
|
5702
|
-
_mm512_maskz_sll_epi32(__mmask16 __U, __m512i __A, __m128i __B)
|
|
5703
|
-
{
|
|
5388
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5389
|
+
_mm512_maskz_sll_epi32(__mmask16 __U, __m512i __A, __m128i __B) {
|
|
5704
5390
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5705
5391
|
(__v16si)_mm512_sll_epi32(__A, __B),
|
|
5706
5392
|
(__v16si)_mm512_setzero_si512());
|
|
5707
5393
|
}
|
|
5708
5394
|
|
|
5709
|
-
static __inline__ __m512i
|
|
5710
|
-
_mm512_sll_epi64(__m512i __A, __m128i __B)
|
|
5711
|
-
{
|
|
5395
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5396
|
+
_mm512_sll_epi64(__m512i __A, __m128i __B) {
|
|
5712
5397
|
return (__m512i)__builtin_ia32_psllq512((__v8di)__A, (__v2di)__B);
|
|
5713
5398
|
}
|
|
5714
5399
|
|
|
5715
|
-
static __inline__ __m512i
|
|
5716
|
-
_mm512_mask_sll_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
|
|
5717
|
-
{
|
|
5400
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5401
|
+
_mm512_mask_sll_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B) {
|
|
5718
5402
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
5719
5403
|
(__v8di)_mm512_sll_epi64(__A, __B),
|
|
5720
5404
|
(__v8di)__W);
|
|
5721
5405
|
}
|
|
5722
5406
|
|
|
5723
|
-
static __inline__ __m512i
|
|
5724
|
-
_mm512_maskz_sll_epi64(__mmask8 __U, __m512i __A, __m128i __B)
|
|
5725
|
-
{
|
|
5407
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5408
|
+
_mm512_maskz_sll_epi64(__mmask8 __U, __m512i __A, __m128i __B) {
|
|
5726
5409
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
5727
5410
|
(__v8di)_mm512_sll_epi64(__A, __B),
|
|
5728
5411
|
(__v8di)_mm512_setzero_si512());
|
|
5729
5412
|
}
|
|
5730
5413
|
|
|
5731
|
-
static __inline__ __m512i
|
|
5732
|
-
_mm512_sllv_epi32(__m512i __X, __m512i __Y)
|
|
5733
|
-
{
|
|
5414
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5415
|
+
_mm512_sllv_epi32(__m512i __X, __m512i __Y) {
|
|
5734
5416
|
return (__m512i)__builtin_ia32_psllv16si((__v16si)__X, (__v16si)__Y);
|
|
5735
5417
|
}
|
|
5736
5418
|
|
|
5737
|
-
static __inline__ __m512i
|
|
5738
|
-
_mm512_mask_sllv_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
|
|
5739
|
-
{
|
|
5419
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5420
|
+
_mm512_mask_sllv_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y) {
|
|
5740
5421
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5741
5422
|
(__v16si)_mm512_sllv_epi32(__X, __Y),
|
|
5742
5423
|
(__v16si)__W);
|
|
5743
5424
|
}
|
|
5744
5425
|
|
|
5745
|
-
static __inline__ __m512i
|
|
5746
|
-
_mm512_maskz_sllv_epi32(__mmask16 __U, __m512i __X, __m512i __Y)
|
|
5747
|
-
{
|
|
5426
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5427
|
+
_mm512_maskz_sllv_epi32(__mmask16 __U, __m512i __X, __m512i __Y) {
|
|
5748
5428
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5749
5429
|
(__v16si)_mm512_sllv_epi32(__X, __Y),
|
|
5750
5430
|
(__v16si)_mm512_setzero_si512());
|
|
5751
5431
|
}
|
|
5752
5432
|
|
|
5753
|
-
static __inline__ __m512i
|
|
5433
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5754
5434
|
_mm512_sllv_epi64(__m512i __X, __m512i __Y)
|
|
5755
5435
|
{
|
|
5756
5436
|
return (__m512i)__builtin_ia32_psllv8di((__v8di)__X, (__v8di)__Y);
|
|
5757
5437
|
}
|
|
5758
5438
|
|
|
5759
|
-
static __inline__ __m512i
|
|
5439
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5760
5440
|
_mm512_mask_sllv_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
|
|
5761
5441
|
{
|
|
5762
5442
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
@@ -5764,7 +5444,7 @@ _mm512_mask_sllv_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
|
|
|
5764
5444
|
(__v8di)__W);
|
|
5765
5445
|
}
|
|
5766
5446
|
|
|
5767
|
-
static __inline__ __m512i
|
|
5447
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5768
5448
|
_mm512_maskz_sllv_epi64(__mmask8 __U, __m512i __X, __m512i __Y)
|
|
5769
5449
|
{
|
|
5770
5450
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
@@ -5772,79 +5452,70 @@ _mm512_maskz_sllv_epi64(__mmask8 __U, __m512i __X, __m512i __Y)
|
|
|
5772
5452
|
(__v8di)_mm512_setzero_si512());
|
|
5773
5453
|
}
|
|
5774
5454
|
|
|
5775
|
-
static __inline__ __m512i
|
|
5776
|
-
_mm512_sra_epi32(__m512i __A, __m128i __B)
|
|
5777
|
-
{
|
|
5455
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5456
|
+
_mm512_sra_epi32(__m512i __A, __m128i __B) {
|
|
5778
5457
|
return (__m512i)__builtin_ia32_psrad512((__v16si) __A, (__v4si)__B);
|
|
5779
5458
|
}
|
|
5780
5459
|
|
|
5781
|
-
static __inline__ __m512i
|
|
5782
|
-
_mm512_mask_sra_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
|
|
5783
|
-
{
|
|
5460
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5461
|
+
_mm512_mask_sra_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B) {
|
|
5784
5462
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5785
5463
|
(__v16si)_mm512_sra_epi32(__A, __B),
|
|
5786
5464
|
(__v16si)__W);
|
|
5787
5465
|
}
|
|
5788
5466
|
|
|
5789
|
-
static __inline__ __m512i
|
|
5790
|
-
_mm512_maskz_sra_epi32(__mmask16 __U, __m512i __A, __m128i __B)
|
|
5791
|
-
{
|
|
5467
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5468
|
+
_mm512_maskz_sra_epi32(__mmask16 __U, __m512i __A, __m128i __B) {
|
|
5792
5469
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5793
5470
|
(__v16si)_mm512_sra_epi32(__A, __B),
|
|
5794
5471
|
(__v16si)_mm512_setzero_si512());
|
|
5795
5472
|
}
|
|
5796
5473
|
|
|
5797
|
-
static __inline__ __m512i
|
|
5798
|
-
_mm512_sra_epi64(__m512i __A, __m128i __B)
|
|
5799
|
-
{
|
|
5474
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5475
|
+
_mm512_sra_epi64(__m512i __A, __m128i __B) {
|
|
5800
5476
|
return (__m512i)__builtin_ia32_psraq512((__v8di)__A, (__v2di)__B);
|
|
5801
5477
|
}
|
|
5802
5478
|
|
|
5803
|
-
static __inline__ __m512i
|
|
5804
|
-
_mm512_mask_sra_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
|
|
5805
|
-
{
|
|
5479
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5480
|
+
_mm512_mask_sra_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B) {
|
|
5806
5481
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
5807
5482
|
(__v8di)_mm512_sra_epi64(__A, __B),
|
|
5808
5483
|
(__v8di)__W);
|
|
5809
5484
|
}
|
|
5810
5485
|
|
|
5811
|
-
static __inline__ __m512i
|
|
5812
|
-
_mm512_maskz_sra_epi64(__mmask8 __U, __m512i __A, __m128i __B)
|
|
5813
|
-
{
|
|
5486
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5487
|
+
_mm512_maskz_sra_epi64(__mmask8 __U, __m512i __A, __m128i __B) {
|
|
5814
5488
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
5815
5489
|
(__v8di)_mm512_sra_epi64(__A, __B),
|
|
5816
5490
|
(__v8di)_mm512_setzero_si512());
|
|
5817
5491
|
}
|
|
5818
5492
|
|
|
5819
|
-
static __inline__ __m512i
|
|
5820
|
-
_mm512_srav_epi32(__m512i __X, __m512i __Y)
|
|
5821
|
-
{
|
|
5493
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5494
|
+
_mm512_srav_epi32(__m512i __X, __m512i __Y) {
|
|
5822
5495
|
return (__m512i)__builtin_ia32_psrav16si((__v16si)__X, (__v16si)__Y);
|
|
5823
5496
|
}
|
|
5824
5497
|
|
|
5825
|
-
static __inline__ __m512i
|
|
5826
|
-
_mm512_mask_srav_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
|
|
5827
|
-
{
|
|
5498
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5499
|
+
_mm512_mask_srav_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y) {
|
|
5828
5500
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5829
5501
|
(__v16si)_mm512_srav_epi32(__X, __Y),
|
|
5830
5502
|
(__v16si)__W);
|
|
5831
5503
|
}
|
|
5832
5504
|
|
|
5833
|
-
static __inline__ __m512i
|
|
5834
|
-
_mm512_maskz_srav_epi32(__mmask16 __U, __m512i __X, __m512i __Y)
|
|
5835
|
-
{
|
|
5505
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5506
|
+
_mm512_maskz_srav_epi32(__mmask16 __U, __m512i __X, __m512i __Y) {
|
|
5836
5507
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5837
5508
|
(__v16si)_mm512_srav_epi32(__X, __Y),
|
|
5838
5509
|
(__v16si)_mm512_setzero_si512());
|
|
5839
5510
|
}
|
|
5840
5511
|
|
|
5841
|
-
static __inline__ __m512i
|
|
5512
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5842
5513
|
_mm512_srav_epi64(__m512i __X, __m512i __Y)
|
|
5843
5514
|
{
|
|
5844
5515
|
return (__m512i)__builtin_ia32_psrav8di((__v8di)__X, (__v8di)__Y);
|
|
5845
5516
|
}
|
|
5846
5517
|
|
|
5847
|
-
static __inline__ __m512i
|
|
5518
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5848
5519
|
_mm512_mask_srav_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
|
|
5849
5520
|
{
|
|
5850
5521
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
@@ -5852,7 +5523,7 @@ _mm512_mask_srav_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
|
|
|
5852
5523
|
(__v8di)__W);
|
|
5853
5524
|
}
|
|
5854
5525
|
|
|
5855
|
-
static __inline__ __m512i
|
|
5526
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5856
5527
|
_mm512_maskz_srav_epi64(__mmask8 __U, __m512i __X, __m512i __Y)
|
|
5857
5528
|
{
|
|
5858
5529
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
@@ -5860,79 +5531,70 @@ _mm512_maskz_srav_epi64(__mmask8 __U, __m512i __X, __m512i __Y)
|
|
|
5860
5531
|
(__v8di)_mm512_setzero_si512());
|
|
5861
5532
|
}
|
|
5862
5533
|
|
|
5863
|
-
static __inline__ __m512i
|
|
5864
|
-
_mm512_srl_epi32(__m512i __A, __m128i __B)
|
|
5865
|
-
{
|
|
5534
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5535
|
+
_mm512_srl_epi32(__m512i __A, __m128i __B) {
|
|
5866
5536
|
return (__m512i)__builtin_ia32_psrld512((__v16si) __A, (__v4si)__B);
|
|
5867
5537
|
}
|
|
5868
5538
|
|
|
5869
|
-
static __inline__ __m512i
|
|
5870
|
-
_mm512_mask_srl_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
|
|
5871
|
-
{
|
|
5539
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5540
|
+
_mm512_mask_srl_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B) {
|
|
5872
5541
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5873
5542
|
(__v16si)_mm512_srl_epi32(__A, __B),
|
|
5874
5543
|
(__v16si)__W);
|
|
5875
5544
|
}
|
|
5876
5545
|
|
|
5877
|
-
static __inline__ __m512i
|
|
5878
|
-
_mm512_maskz_srl_epi32(__mmask16 __U, __m512i __A, __m128i __B)
|
|
5879
|
-
{
|
|
5546
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5547
|
+
_mm512_maskz_srl_epi32(__mmask16 __U, __m512i __A, __m128i __B) {
|
|
5880
5548
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5881
5549
|
(__v16si)_mm512_srl_epi32(__A, __B),
|
|
5882
5550
|
(__v16si)_mm512_setzero_si512());
|
|
5883
5551
|
}
|
|
5884
5552
|
|
|
5885
|
-
static __inline__ __m512i
|
|
5886
|
-
_mm512_srl_epi64(__m512i __A, __m128i __B)
|
|
5887
|
-
{
|
|
5553
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5554
|
+
_mm512_srl_epi64(__m512i __A, __m128i __B) {
|
|
5888
5555
|
return (__m512i)__builtin_ia32_psrlq512((__v8di)__A, (__v2di)__B);
|
|
5889
5556
|
}
|
|
5890
5557
|
|
|
5891
|
-
static __inline__ __m512i
|
|
5892
|
-
_mm512_mask_srl_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
|
|
5893
|
-
{
|
|
5558
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5559
|
+
_mm512_mask_srl_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B) {
|
|
5894
5560
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
5895
5561
|
(__v8di)_mm512_srl_epi64(__A, __B),
|
|
5896
5562
|
(__v8di)__W);
|
|
5897
5563
|
}
|
|
5898
5564
|
|
|
5899
|
-
static __inline__ __m512i
|
|
5900
|
-
_mm512_maskz_srl_epi64(__mmask8 __U, __m512i __A, __m128i __B)
|
|
5901
|
-
{
|
|
5565
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5566
|
+
_mm512_maskz_srl_epi64(__mmask8 __U, __m512i __A, __m128i __B) {
|
|
5902
5567
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
5903
5568
|
(__v8di)_mm512_srl_epi64(__A, __B),
|
|
5904
5569
|
(__v8di)_mm512_setzero_si512());
|
|
5905
5570
|
}
|
|
5906
5571
|
|
|
5907
|
-
static __inline__ __m512i
|
|
5908
|
-
_mm512_srlv_epi32(__m512i __X, __m512i __Y)
|
|
5909
|
-
{
|
|
5572
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5573
|
+
_mm512_srlv_epi32(__m512i __X, __m512i __Y) {
|
|
5910
5574
|
return (__m512i)__builtin_ia32_psrlv16si((__v16si)__X, (__v16si)__Y);
|
|
5911
5575
|
}
|
|
5912
5576
|
|
|
5913
|
-
static __inline__ __m512i
|
|
5914
|
-
_mm512_mask_srlv_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
|
|
5915
|
-
{
|
|
5577
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5578
|
+
_mm512_mask_srlv_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y) {
|
|
5916
5579
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5917
5580
|
(__v16si)_mm512_srlv_epi32(__X, __Y),
|
|
5918
5581
|
(__v16si)__W);
|
|
5919
5582
|
}
|
|
5920
5583
|
|
|
5921
|
-
static __inline__ __m512i
|
|
5922
|
-
_mm512_maskz_srlv_epi32(__mmask16 __U, __m512i __X, __m512i __Y)
|
|
5923
|
-
{
|
|
5584
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5585
|
+
_mm512_maskz_srlv_epi32(__mmask16 __U, __m512i __X, __m512i __Y) {
|
|
5924
5586
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
5925
5587
|
(__v16si)_mm512_srlv_epi32(__X, __Y),
|
|
5926
5588
|
(__v16si)_mm512_setzero_si512());
|
|
5927
5589
|
}
|
|
5928
5590
|
|
|
5929
|
-
static __inline__ __m512i
|
|
5591
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5930
5592
|
_mm512_srlv_epi64 (__m512i __X, __m512i __Y)
|
|
5931
5593
|
{
|
|
5932
5594
|
return (__m512i)__builtin_ia32_psrlv8di((__v8di)__X, (__v8di)__Y);
|
|
5933
5595
|
}
|
|
5934
5596
|
|
|
5935
|
-
static __inline__ __m512i
|
|
5597
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5936
5598
|
_mm512_mask_srlv_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
|
|
5937
5599
|
{
|
|
5938
5600
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
@@ -5940,7 +5602,7 @@ _mm512_mask_srlv_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
|
|
|
5940
5602
|
(__v8di)__W);
|
|
5941
5603
|
}
|
|
5942
5604
|
|
|
5943
|
-
static __inline__ __m512i
|
|
5605
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5944
5606
|
_mm512_maskz_srlv_epi64(__mmask8 __U, __m512i __X, __m512i __Y)
|
|
5945
5607
|
{
|
|
5946
5608
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
@@ -6190,115 +5852,104 @@ _mm_cvttss_u64 (__m128 __A)
|
|
|
6190
5852
|
(__v16sf)_mm512_permute_ps((X), (C)), \
|
|
6191
5853
|
(__v16sf)_mm512_setzero_ps()))
|
|
6192
5854
|
|
|
6193
|
-
static __inline__ __m512d
|
|
6194
|
-
_mm512_permutevar_pd(__m512d __A, __m512i __C)
|
|
6195
|
-
{
|
|
5855
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5856
|
+
_mm512_permutevar_pd(__m512d __A, __m512i __C) {
|
|
6196
5857
|
return (__m512d)__builtin_ia32_vpermilvarpd512((__v8df)__A, (__v8di)__C);
|
|
6197
5858
|
}
|
|
6198
5859
|
|
|
6199
|
-
static __inline__ __m512d
|
|
6200
|
-
_mm512_mask_permutevar_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512i __C)
|
|
6201
|
-
{
|
|
5860
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5861
|
+
_mm512_mask_permutevar_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512i __C) {
|
|
6202
5862
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
6203
5863
|
(__v8df)_mm512_permutevar_pd(__A, __C),
|
|
6204
5864
|
(__v8df)__W);
|
|
6205
5865
|
}
|
|
6206
5866
|
|
|
6207
|
-
static __inline__ __m512d
|
|
6208
|
-
_mm512_maskz_permutevar_pd(__mmask8 __U, __m512d __A, __m512i __C)
|
|
6209
|
-
{
|
|
5867
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5868
|
+
_mm512_maskz_permutevar_pd(__mmask8 __U, __m512d __A, __m512i __C) {
|
|
6210
5869
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
6211
5870
|
(__v8df)_mm512_permutevar_pd(__A, __C),
|
|
6212
5871
|
(__v8df)_mm512_setzero_pd());
|
|
6213
5872
|
}
|
|
6214
5873
|
|
|
6215
|
-
static __inline__ __m512
|
|
6216
|
-
_mm512_permutevar_ps(__m512 __A, __m512i __C)
|
|
6217
|
-
{
|
|
5874
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5875
|
+
_mm512_permutevar_ps(__m512 __A, __m512i __C) {
|
|
6218
5876
|
return (__m512)__builtin_ia32_vpermilvarps512((__v16sf)__A, (__v16si)__C);
|
|
6219
5877
|
}
|
|
6220
5878
|
|
|
6221
|
-
static __inline__ __m512
|
|
6222
|
-
_mm512_mask_permutevar_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512i __C)
|
|
6223
|
-
{
|
|
5879
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5880
|
+
_mm512_mask_permutevar_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512i __C) {
|
|
6224
5881
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
6225
5882
|
(__v16sf)_mm512_permutevar_ps(__A, __C),
|
|
6226
5883
|
(__v16sf)__W);
|
|
6227
5884
|
}
|
|
6228
5885
|
|
|
6229
|
-
static __inline__ __m512
|
|
6230
|
-
_mm512_maskz_permutevar_ps(__mmask16 __U, __m512 __A, __m512i __C)
|
|
6231
|
-
{
|
|
5886
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5887
|
+
_mm512_maskz_permutevar_ps(__mmask16 __U, __m512 __A, __m512i __C) {
|
|
6232
5888
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
6233
5889
|
(__v16sf)_mm512_permutevar_ps(__A, __C),
|
|
6234
5890
|
(__v16sf)_mm512_setzero_ps());
|
|
6235
5891
|
}
|
|
6236
5892
|
|
|
6237
|
-
static __inline __m512d
|
|
6238
|
-
_mm512_permutex2var_pd(__m512d __A, __m512i __I, __m512d __B)
|
|
6239
|
-
{
|
|
5893
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5894
|
+
_mm512_permutex2var_pd(__m512d __A, __m512i __I, __m512d __B) {
|
|
6240
5895
|
return (__m512d)__builtin_ia32_vpermi2varpd512((__v8df)__A, (__v8di)__I,
|
|
6241
5896
|
(__v8df)__B);
|
|
6242
5897
|
}
|
|
6243
5898
|
|
|
6244
|
-
static __inline__ __m512d
|
|
6245
|
-
_mm512_mask_permutex2var_pd(__m512d __A, __mmask8 __U, __m512i __I,
|
|
6246
|
-
{
|
|
5899
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5900
|
+
_mm512_mask_permutex2var_pd(__m512d __A, __mmask8 __U, __m512i __I,
|
|
5901
|
+
__m512d __B) {
|
|
6247
5902
|
return (__m512d)__builtin_ia32_selectpd_512(__U,
|
|
6248
5903
|
(__v8df)_mm512_permutex2var_pd(__A, __I, __B),
|
|
6249
5904
|
(__v8df)__A);
|
|
6250
5905
|
}
|
|
6251
5906
|
|
|
6252
|
-
static __inline__ __m512d
|
|
5907
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6253
5908
|
_mm512_mask2_permutex2var_pd(__m512d __A, __m512i __I, __mmask8 __U,
|
|
6254
|
-
__m512d __B)
|
|
6255
|
-
{
|
|
5909
|
+
__m512d __B) {
|
|
6256
5910
|
return (__m512d)__builtin_ia32_selectpd_512(__U,
|
|
6257
5911
|
(__v8df)_mm512_permutex2var_pd(__A, __I, __B),
|
|
6258
5912
|
(__v8df)(__m512d)__I);
|
|
6259
5913
|
}
|
|
6260
5914
|
|
|
6261
|
-
static __inline__ __m512d
|
|
5915
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6262
5916
|
_mm512_maskz_permutex2var_pd(__mmask8 __U, __m512d __A, __m512i __I,
|
|
6263
|
-
__m512d __B)
|
|
6264
|
-
{
|
|
5917
|
+
__m512d __B) {
|
|
6265
5918
|
return (__m512d)__builtin_ia32_selectpd_512(__U,
|
|
6266
5919
|
(__v8df)_mm512_permutex2var_pd(__A, __I, __B),
|
|
6267
5920
|
(__v8df)_mm512_setzero_pd());
|
|
6268
5921
|
}
|
|
6269
5922
|
|
|
6270
|
-
static __inline __m512
|
|
6271
|
-
_mm512_permutex2var_ps(__m512 __A, __m512i __I, __m512 __B)
|
|
6272
|
-
{
|
|
5923
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5924
|
+
_mm512_permutex2var_ps(__m512 __A, __m512i __I, __m512 __B) {
|
|
6273
5925
|
return (__m512)__builtin_ia32_vpermi2varps512((__v16sf)__A, (__v16si)__I,
|
|
6274
5926
|
(__v16sf) __B);
|
|
6275
5927
|
}
|
|
6276
5928
|
|
|
6277
|
-
static __inline__ __m512
|
|
6278
|
-
_mm512_mask_permutex2var_ps(__m512 __A, __mmask16 __U, __m512i __I,
|
|
6279
|
-
{
|
|
5929
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5930
|
+
_mm512_mask_permutex2var_ps(__m512 __A, __mmask16 __U, __m512i __I,
|
|
5931
|
+
__m512 __B) {
|
|
6280
5932
|
return (__m512)__builtin_ia32_selectps_512(__U,
|
|
6281
5933
|
(__v16sf)_mm512_permutex2var_ps(__A, __I, __B),
|
|
6282
5934
|
(__v16sf)__A);
|
|
6283
5935
|
}
|
|
6284
5936
|
|
|
6285
|
-
static __inline__ __m512
|
|
6286
|
-
_mm512_mask2_permutex2var_ps(__m512 __A, __m512i __I, __mmask16 __U,
|
|
6287
|
-
{
|
|
5937
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5938
|
+
_mm512_mask2_permutex2var_ps(__m512 __A, __m512i __I, __mmask16 __U,
|
|
5939
|
+
__m512 __B) {
|
|
6288
5940
|
return (__m512)__builtin_ia32_selectps_512(__U,
|
|
6289
5941
|
(__v16sf)_mm512_permutex2var_ps(__A, __I, __B),
|
|
6290
5942
|
(__v16sf)(__m512)__I);
|
|
6291
5943
|
}
|
|
6292
5944
|
|
|
6293
|
-
static __inline__ __m512
|
|
6294
|
-
_mm512_maskz_permutex2var_ps(__mmask16 __U, __m512 __A, __m512i __I,
|
|
6295
|
-
{
|
|
5945
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
5946
|
+
_mm512_maskz_permutex2var_ps(__mmask16 __U, __m512 __A, __m512i __I,
|
|
5947
|
+
__m512 __B) {
|
|
6296
5948
|
return (__m512)__builtin_ia32_selectps_512(__U,
|
|
6297
5949
|
(__v16sf)_mm512_permutex2var_ps(__A, __I, __B),
|
|
6298
5950
|
(__v16sf)_mm512_setzero_ps());
|
|
6299
5951
|
}
|
|
6300
5952
|
|
|
6301
|
-
|
|
6302
5953
|
#define _mm512_cvtt_roundpd_epu32(A, R) \
|
|
6303
5954
|
((__m256i)__builtin_ia32_cvttpd2udq512_mask((__v8df)(__m512d)(A), \
|
|
6304
5955
|
(__v8si)_mm256_undefined_si256(), \
|
|
@@ -6622,46 +6273,41 @@ _mm_maskz_scalef_ss (__mmask8 __U, __m128 __A, __m128 __B)
|
|
|
6622
6273
|
(__mmask8)(U), \
|
|
6623
6274
|
(int)(R)))
|
|
6624
6275
|
|
|
6625
|
-
static __inline__ __m512i
|
|
6626
|
-
_mm512_srai_epi32(__m512i __A, unsigned int __B)
|
|
6627
|
-
{
|
|
6276
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6277
|
+
_mm512_srai_epi32(__m512i __A, unsigned int __B) {
|
|
6628
6278
|
return (__m512i)__builtin_ia32_psradi512((__v16si)__A, (int)__B);
|
|
6629
6279
|
}
|
|
6630
6280
|
|
|
6631
|
-
static __inline__ __m512i
|
|
6281
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6632
6282
|
_mm512_mask_srai_epi32(__m512i __W, __mmask16 __U, __m512i __A,
|
|
6633
|
-
unsigned int __B)
|
|
6634
|
-
{
|
|
6283
|
+
unsigned int __B) {
|
|
6635
6284
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
6636
6285
|
(__v16si)_mm512_srai_epi32(__A, __B),
|
|
6637
6286
|
(__v16si)__W);
|
|
6638
6287
|
}
|
|
6639
6288
|
|
|
6640
|
-
static __inline__ __m512i
|
|
6641
|
-
_mm512_maskz_srai_epi32(__mmask16 __U, __m512i __A,
|
|
6642
|
-
unsigned int __B) {
|
|
6289
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6290
|
+
_mm512_maskz_srai_epi32(__mmask16 __U, __m512i __A, unsigned int __B) {
|
|
6643
6291
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
|
|
6644
6292
|
(__v16si)_mm512_srai_epi32(__A, __B),
|
|
6645
6293
|
(__v16si)_mm512_setzero_si512());
|
|
6646
6294
|
}
|
|
6647
6295
|
|
|
6648
|
-
static __inline__ __m512i
|
|
6649
|
-
_mm512_srai_epi64(__m512i __A, unsigned int __B)
|
|
6650
|
-
{
|
|
6296
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6297
|
+
_mm512_srai_epi64(__m512i __A, unsigned int __B) {
|
|
6651
6298
|
return (__m512i)__builtin_ia32_psraqi512((__v8di)__A, (int)__B);
|
|
6652
6299
|
}
|
|
6653
6300
|
|
|
6654
|
-
static __inline__ __m512i
|
|
6655
|
-
_mm512_mask_srai_epi64(__m512i __W, __mmask8 __U, __m512i __A,
|
|
6656
|
-
{
|
|
6301
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6302
|
+
_mm512_mask_srai_epi64(__m512i __W, __mmask8 __U, __m512i __A,
|
|
6303
|
+
unsigned int __B) {
|
|
6657
6304
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
6658
6305
|
(__v8di)_mm512_srai_epi64(__A, __B),
|
|
6659
6306
|
(__v8di)__W);
|
|
6660
6307
|
}
|
|
6661
6308
|
|
|
6662
|
-
static __inline__ __m512i
|
|
6663
|
-
_mm512_maskz_srai_epi64(__mmask8 __U, __m512i __A, unsigned int __B)
|
|
6664
|
-
{
|
|
6309
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6310
|
+
_mm512_maskz_srai_epi64(__mmask8 __U, __m512i __A, unsigned int __B) {
|
|
6665
6311
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
|
|
6666
6312
|
(__v8di)_mm512_srai_epi64(__A, __B),
|
|
6667
6313
|
(__v8di)_mm512_setzero_si512());
|
|
@@ -6827,33 +6473,29 @@ _mm_maskz_sqrt_ss (__mmask8 __U, __m128 __A, __m128 __B)
|
|
|
6827
6473
|
(__v4sf)_mm_setzero_ps(), \
|
|
6828
6474
|
(__mmask8)(U), (int)(R)))
|
|
6829
6475
|
|
|
6830
|
-
static __inline__ __m512
|
|
6831
|
-
_mm512_broadcast_f32x4(__m128 __A)
|
|
6832
|
-
{
|
|
6476
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6477
|
+
_mm512_broadcast_f32x4(__m128 __A) {
|
|
6833
6478
|
return (__m512)__builtin_shufflevector((__v4sf)__A, (__v4sf)__A,
|
|
6834
6479
|
0, 1, 2, 3, 0, 1, 2, 3,
|
|
6835
6480
|
0, 1, 2, 3, 0, 1, 2, 3);
|
|
6836
6481
|
}
|
|
6837
6482
|
|
|
6838
|
-
static __inline__ __m512
|
|
6839
|
-
_mm512_mask_broadcast_f32x4(__m512 __O, __mmask16 __M, __m128 __A)
|
|
6840
|
-
{
|
|
6483
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6484
|
+
_mm512_mask_broadcast_f32x4(__m512 __O, __mmask16 __M, __m128 __A) {
|
|
6841
6485
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__M,
|
|
6842
6486
|
(__v16sf)_mm512_broadcast_f32x4(__A),
|
|
6843
6487
|
(__v16sf)__O);
|
|
6844
6488
|
}
|
|
6845
6489
|
|
|
6846
|
-
static __inline__ __m512
|
|
6847
|
-
_mm512_maskz_broadcast_f32x4(__mmask16 __M, __m128 __A)
|
|
6848
|
-
{
|
|
6490
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6491
|
+
_mm512_maskz_broadcast_f32x4(__mmask16 __M, __m128 __A) {
|
|
6849
6492
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__M,
|
|
6850
6493
|
(__v16sf)_mm512_broadcast_f32x4(__A),
|
|
6851
6494
|
(__v16sf)_mm512_setzero_ps());
|
|
6852
6495
|
}
|
|
6853
6496
|
|
|
6854
|
-
static __inline__ __m512d
|
|
6855
|
-
_mm512_broadcast_f64x4(__m256d __A)
|
|
6856
|
-
{
|
|
6497
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6498
|
+
_mm512_broadcast_f64x4(__m256d __A) {
|
|
6857
6499
|
return (__m512d)__builtin_shufflevector((__v4df)__A, (__v4df)__A,
|
|
6858
6500
|
0, 1, 2, 3, 0, 1, 2, 3);
|
|
6859
6501
|
}
|
|
@@ -6874,33 +6516,29 @@ _mm512_maskz_broadcast_f64x4(__mmask8 __M, __m256d __A)
|
|
|
6874
6516
|
(__v8df)_mm512_setzero_pd());
|
|
6875
6517
|
}
|
|
6876
6518
|
|
|
6877
|
-
static __inline__ __m512i
|
|
6878
|
-
_mm512_broadcast_i32x4(__m128i __A)
|
|
6879
|
-
{
|
|
6519
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6520
|
+
_mm512_broadcast_i32x4(__m128i __A) {
|
|
6880
6521
|
return (__m512i)__builtin_shufflevector((__v4si)__A, (__v4si)__A,
|
|
6881
6522
|
0, 1, 2, 3, 0, 1, 2, 3,
|
|
6882
6523
|
0, 1, 2, 3, 0, 1, 2, 3);
|
|
6883
6524
|
}
|
|
6884
6525
|
|
|
6885
|
-
static __inline__ __m512i
|
|
6886
|
-
_mm512_mask_broadcast_i32x4(__m512i __O, __mmask16 __M, __m128i __A)
|
|
6887
|
-
{
|
|
6526
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6527
|
+
_mm512_mask_broadcast_i32x4(__m512i __O, __mmask16 __M, __m128i __A) {
|
|
6888
6528
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
6889
6529
|
(__v16si)_mm512_broadcast_i32x4(__A),
|
|
6890
6530
|
(__v16si)__O);
|
|
6891
6531
|
}
|
|
6892
6532
|
|
|
6893
|
-
static __inline__ __m512i
|
|
6894
|
-
_mm512_maskz_broadcast_i32x4(__mmask16 __M, __m128i __A)
|
|
6895
|
-
{
|
|
6533
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6534
|
+
_mm512_maskz_broadcast_i32x4(__mmask16 __M, __m128i __A) {
|
|
6896
6535
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
6897
6536
|
(__v16si)_mm512_broadcast_i32x4(__A),
|
|
6898
6537
|
(__v16si)_mm512_setzero_si512());
|
|
6899
6538
|
}
|
|
6900
6539
|
|
|
6901
|
-
static __inline__ __m512i
|
|
6902
|
-
_mm512_broadcast_i64x4(__m256i __A)
|
|
6903
|
-
{
|
|
6540
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6541
|
+
_mm512_broadcast_i64x4(__m256i __A) {
|
|
6904
6542
|
return (__m512i)__builtin_shufflevector((__v4di)__A, (__v4di)__A,
|
|
6905
6543
|
0, 1, 2, 3, 0, 1, 2, 3);
|
|
6906
6544
|
}
|
|
@@ -6921,33 +6559,29 @@ _mm512_maskz_broadcast_i64x4(__mmask8 __M, __m256i __A)
|
|
|
6921
6559
|
(__v8di)_mm512_setzero_si512());
|
|
6922
6560
|
}
|
|
6923
6561
|
|
|
6924
|
-
static __inline__ __m512d
|
|
6925
|
-
_mm512_mask_broadcastsd_pd
|
|
6926
|
-
{
|
|
6562
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6563
|
+
_mm512_mask_broadcastsd_pd(__m512d __O, __mmask8 __M, __m128d __A) {
|
|
6927
6564
|
return (__m512d)__builtin_ia32_selectpd_512(__M,
|
|
6928
6565
|
(__v8df) _mm512_broadcastsd_pd(__A),
|
|
6929
6566
|
(__v8df) __O);
|
|
6930
6567
|
}
|
|
6931
6568
|
|
|
6932
|
-
static __inline__ __m512d
|
|
6933
|
-
_mm512_maskz_broadcastsd_pd
|
|
6934
|
-
{
|
|
6569
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6570
|
+
_mm512_maskz_broadcastsd_pd(__mmask8 __M, __m128d __A) {
|
|
6935
6571
|
return (__m512d)__builtin_ia32_selectpd_512(__M,
|
|
6936
6572
|
(__v8df) _mm512_broadcastsd_pd(__A),
|
|
6937
6573
|
(__v8df) _mm512_setzero_pd());
|
|
6938
6574
|
}
|
|
6939
6575
|
|
|
6940
|
-
static __inline__ __m512
|
|
6941
|
-
_mm512_mask_broadcastss_ps
|
|
6942
|
-
{
|
|
6576
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6577
|
+
_mm512_mask_broadcastss_ps(__m512 __O, __mmask16 __M, __m128 __A) {
|
|
6943
6578
|
return (__m512)__builtin_ia32_selectps_512(__M,
|
|
6944
6579
|
(__v16sf) _mm512_broadcastss_ps(__A),
|
|
6945
6580
|
(__v16sf) __O);
|
|
6946
6581
|
}
|
|
6947
6582
|
|
|
6948
|
-
static __inline__ __m512
|
|
6949
|
-
_mm512_maskz_broadcastss_ps
|
|
6950
|
-
{
|
|
6583
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
6584
|
+
_mm512_maskz_broadcastss_ps(__mmask16 __M, __m128 __A) {
|
|
6951
6585
|
return (__m512)__builtin_ia32_selectps_512(__M,
|
|
6952
6586
|
(__v16sf) _mm512_broadcastss_ps(__A),
|
|
6953
6587
|
(__v16sf) _mm512_setzero_ps());
|
|
@@ -7391,10 +7025,10 @@ _mm512_mask_cvtepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A)
|
|
|
7391
7025
|
__builtin_ia32_pmovqw512mem_mask ((__v8hi *) __P, (__v8di) __A, __M);
|
|
7392
7026
|
}
|
|
7393
7027
|
|
|
7394
|
-
#define _mm512_extracti32x4_epi32(A, imm)
|
|
7395
|
-
((__m128i)__builtin_ia32_extracti32x4_mask(
|
|
7396
|
-
|
|
7397
|
-
|
|
7028
|
+
#define _mm512_extracti32x4_epi32(A, imm) \
|
|
7029
|
+
((__m128i)__builtin_ia32_extracti32x4_mask( \
|
|
7030
|
+
(__v16si)(__m512i)(A), (int)(imm), (__v4si)_mm_setzero_si128(), \
|
|
7031
|
+
(__mmask8) - 1))
|
|
7398
7032
|
|
|
7399
7033
|
#define _mm512_mask_extracti32x4_epi32(W, U, A, imm) \
|
|
7400
7034
|
((__m128i)__builtin_ia32_extracti32x4_mask((__v16si)(__m512i)(A), (int)(imm), \
|
|
@@ -7406,10 +7040,10 @@ _mm512_mask_cvtepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A)
|
|
|
7406
7040
|
(__v4si)_mm_setzero_si128(), \
|
|
7407
7041
|
(__mmask8)(U)))
|
|
7408
7042
|
|
|
7409
|
-
#define _mm512_extracti64x4_epi64(A, imm)
|
|
7043
|
+
#define _mm512_extracti64x4_epi64(A, imm) \
|
|
7410
7044
|
((__m256i)__builtin_ia32_extracti64x4_mask((__v8di)(__m512i)(A), (int)(imm), \
|
|
7411
|
-
(__v4di)
|
|
7412
|
-
(__mmask8)-1))
|
|
7045
|
+
(__v4di)_mm256_setzero_si256(), \
|
|
7046
|
+
(__mmask8) - 1))
|
|
7413
7047
|
|
|
7414
7048
|
#define _mm512_mask_extracti64x4_epi64(W, U, A, imm) \
|
|
7415
7049
|
((__m256i)__builtin_ia32_extracti64x4_mask((__v8di)(__m512i)(A), (int)(imm), \
|
|
@@ -8274,93 +7908,82 @@ _mm_mask3_fnmsub_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U)
|
|
|
8274
7908
|
(__v8di)_mm512_permutex_epi64((X), (C)), \
|
|
8275
7909
|
(__v8di)_mm512_setzero_si512()))
|
|
8276
7910
|
|
|
8277
|
-
static __inline__ __m512d
|
|
8278
|
-
_mm512_permutexvar_pd
|
|
8279
|
-
{
|
|
7911
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
7912
|
+
_mm512_permutexvar_pd(__m512i __X, __m512d __Y) {
|
|
8280
7913
|
return (__m512d)__builtin_ia32_permvardf512((__v8df) __Y, (__v8di) __X);
|
|
8281
7914
|
}
|
|
8282
7915
|
|
|
8283
|
-
static __inline__ __m512d
|
|
8284
|
-
_mm512_mask_permutexvar_pd
|
|
8285
|
-
{
|
|
7916
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
7917
|
+
_mm512_mask_permutexvar_pd(__m512d __W, __mmask8 __U, __m512i __X,
|
|
7918
|
+
__m512d __Y) {
|
|
8286
7919
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
8287
7920
|
(__v8df)_mm512_permutexvar_pd(__X, __Y),
|
|
8288
7921
|
(__v8df)__W);
|
|
8289
7922
|
}
|
|
8290
7923
|
|
|
8291
|
-
static __inline__ __m512d
|
|
8292
|
-
_mm512_maskz_permutexvar_pd
|
|
8293
|
-
{
|
|
7924
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
7925
|
+
_mm512_maskz_permutexvar_pd(__mmask8 __U, __m512i __X, __m512d __Y) {
|
|
8294
7926
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
8295
7927
|
(__v8df)_mm512_permutexvar_pd(__X, __Y),
|
|
8296
7928
|
(__v8df)_mm512_setzero_pd());
|
|
8297
7929
|
}
|
|
8298
7930
|
|
|
8299
|
-
static __inline__ __m512i
|
|
8300
|
-
_mm512_permutexvar_epi64
|
|
8301
|
-
{
|
|
7931
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
7932
|
+
_mm512_permutexvar_epi64(__m512i __X, __m512i __Y) {
|
|
8302
7933
|
return (__m512i)__builtin_ia32_permvardi512((__v8di)__Y, (__v8di)__X);
|
|
8303
7934
|
}
|
|
8304
7935
|
|
|
8305
|
-
static __inline__ __m512i
|
|
8306
|
-
_mm512_maskz_permutexvar_epi64
|
|
8307
|
-
{
|
|
7936
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
7937
|
+
_mm512_maskz_permutexvar_epi64(__mmask8 __M, __m512i __X, __m512i __Y) {
|
|
8308
7938
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
8309
7939
|
(__v8di)_mm512_permutexvar_epi64(__X, __Y),
|
|
8310
7940
|
(__v8di)_mm512_setzero_si512());
|
|
8311
7941
|
}
|
|
8312
7942
|
|
|
8313
|
-
static __inline__ __m512i
|
|
8314
|
-
_mm512_mask_permutexvar_epi64
|
|
8315
|
-
|
|
8316
|
-
{
|
|
7943
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
7944
|
+
_mm512_mask_permutexvar_epi64(__m512i __W, __mmask8 __M, __m512i __X,
|
|
7945
|
+
__m512i __Y) {
|
|
8317
7946
|
return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
|
|
8318
7947
|
(__v8di)_mm512_permutexvar_epi64(__X, __Y),
|
|
8319
7948
|
(__v8di)__W);
|
|
8320
7949
|
}
|
|
8321
7950
|
|
|
8322
|
-
static __inline__ __m512
|
|
8323
|
-
_mm512_permutexvar_ps
|
|
8324
|
-
{
|
|
7951
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
7952
|
+
_mm512_permutexvar_ps(__m512i __X, __m512 __Y) {
|
|
8325
7953
|
return (__m512)__builtin_ia32_permvarsf512((__v16sf)__Y, (__v16si)__X);
|
|
8326
7954
|
}
|
|
8327
7955
|
|
|
8328
|
-
static __inline__ __m512
|
|
8329
|
-
_mm512_mask_permutexvar_ps
|
|
8330
|
-
{
|
|
7956
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
7957
|
+
_mm512_mask_permutexvar_ps(__m512 __W, __mmask16 __U, __m512i __X, __m512 __Y) {
|
|
8331
7958
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
8332
7959
|
(__v16sf)_mm512_permutexvar_ps(__X, __Y),
|
|
8333
7960
|
(__v16sf)__W);
|
|
8334
7961
|
}
|
|
8335
7962
|
|
|
8336
|
-
static __inline__ __m512
|
|
8337
|
-
_mm512_maskz_permutexvar_ps
|
|
8338
|
-
{
|
|
7963
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
7964
|
+
_mm512_maskz_permutexvar_ps(__mmask16 __U, __m512i __X, __m512 __Y) {
|
|
8339
7965
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
8340
7966
|
(__v16sf)_mm512_permutexvar_ps(__X, __Y),
|
|
8341
7967
|
(__v16sf)_mm512_setzero_ps());
|
|
8342
7968
|
}
|
|
8343
7969
|
|
|
8344
|
-
static __inline__ __m512i
|
|
8345
|
-
_mm512_permutexvar_epi32
|
|
8346
|
-
{
|
|
7970
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
7971
|
+
_mm512_permutexvar_epi32(__m512i __X, __m512i __Y) {
|
|
8347
7972
|
return (__m512i)__builtin_ia32_permvarsi512((__v16si)__Y, (__v16si)__X);
|
|
8348
7973
|
}
|
|
8349
7974
|
|
|
8350
7975
|
#define _mm512_permutevar_epi32 _mm512_permutexvar_epi32
|
|
8351
7976
|
|
|
8352
|
-
static __inline__ __m512i
|
|
8353
|
-
_mm512_maskz_permutexvar_epi32
|
|
8354
|
-
{
|
|
7977
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
7978
|
+
_mm512_maskz_permutexvar_epi32(__mmask16 __M, __m512i __X, __m512i __Y) {
|
|
8355
7979
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
8356
7980
|
(__v16si)_mm512_permutexvar_epi32(__X, __Y),
|
|
8357
7981
|
(__v16si)_mm512_setzero_si512());
|
|
8358
7982
|
}
|
|
8359
7983
|
|
|
8360
|
-
static __inline__ __m512i
|
|
8361
|
-
_mm512_mask_permutexvar_epi32
|
|
8362
|
-
|
|
8363
|
-
{
|
|
7984
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
7985
|
+
_mm512_mask_permutexvar_epi32(__m512i __W, __mmask16 __M, __m512i __X,
|
|
7986
|
+
__m512i __Y) {
|
|
8364
7987
|
return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
|
|
8365
7988
|
(__v16si)_mm512_permutexvar_epi32(__X, __Y),
|
|
8366
7989
|
(__v16si)__W);
|
|
@@ -8368,69 +7991,59 @@ _mm512_mask_permutexvar_epi32 (__m512i __W, __mmask16 __M, __m512i __X,
|
|
|
8368
7991
|
|
|
8369
7992
|
#define _mm512_mask_permutevar_epi32 _mm512_mask_permutexvar_epi32
|
|
8370
7993
|
|
|
8371
|
-
static __inline__ __mmask16
|
|
8372
|
-
_mm512_kand
|
|
8373
|
-
{
|
|
7994
|
+
static __inline__ __mmask16
|
|
7995
|
+
__DEFAULT_FN_ATTRS_CONSTEXPR _mm512_kand(__mmask16 __A, __mmask16 __B) {
|
|
8374
7996
|
return (__mmask16) __builtin_ia32_kandhi ((__mmask16) __A, (__mmask16) __B);
|
|
8375
7997
|
}
|
|
8376
7998
|
|
|
8377
|
-
static __inline__ __mmask16
|
|
8378
|
-
_mm512_kandn
|
|
8379
|
-
{
|
|
7999
|
+
static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
8000
|
+
_mm512_kandn(__mmask16 __A, __mmask16 __B) {
|
|
8380
8001
|
return (__mmask16) __builtin_ia32_kandnhi ((__mmask16) __A, (__mmask16) __B);
|
|
8381
8002
|
}
|
|
8382
8003
|
|
|
8383
|
-
static __inline__ __mmask16
|
|
8384
|
-
_mm512_kor
|
|
8385
|
-
{
|
|
8004
|
+
static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
8005
|
+
_mm512_kor(__mmask16 __A, __mmask16 __B) {
|
|
8386
8006
|
return (__mmask16) __builtin_ia32_korhi ((__mmask16) __A, (__mmask16) __B);
|
|
8387
8007
|
}
|
|
8388
8008
|
|
|
8389
|
-
static __inline__ int
|
|
8390
|
-
_mm512_kortestc
|
|
8391
|
-
{
|
|
8009
|
+
static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
8010
|
+
_mm512_kortestc(__mmask16 __A, __mmask16 __B) {
|
|
8392
8011
|
return __builtin_ia32_kortestchi ((__mmask16) __A, (__mmask16) __B);
|
|
8393
8012
|
}
|
|
8394
8013
|
|
|
8395
|
-
static __inline__ int
|
|
8396
|
-
_mm512_kortestz
|
|
8397
|
-
{
|
|
8014
|
+
static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
8015
|
+
_mm512_kortestz(__mmask16 __A, __mmask16 __B) {
|
|
8398
8016
|
return __builtin_ia32_kortestzhi ((__mmask16) __A, (__mmask16) __B);
|
|
8399
8017
|
}
|
|
8400
8018
|
|
|
8401
|
-
static __inline__ unsigned char
|
|
8402
|
-
_kortestc_mask16_u8(__mmask16 __A, __mmask16 __B)
|
|
8403
|
-
{
|
|
8019
|
+
static __inline__ unsigned char __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
8020
|
+
_kortestc_mask16_u8(__mmask16 __A, __mmask16 __B) {
|
|
8404
8021
|
return (unsigned char)__builtin_ia32_kortestchi(__A, __B);
|
|
8405
8022
|
}
|
|
8406
8023
|
|
|
8407
|
-
static __inline__ unsigned char
|
|
8408
|
-
_kortestz_mask16_u8(__mmask16 __A, __mmask16 __B)
|
|
8409
|
-
{
|
|
8024
|
+
static __inline__ unsigned char __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
8025
|
+
_kortestz_mask16_u8(__mmask16 __A, __mmask16 __B) {
|
|
8410
8026
|
return (unsigned char)__builtin_ia32_kortestzhi(__A, __B);
|
|
8411
8027
|
}
|
|
8412
8028
|
|
|
8413
|
-
static __inline__ unsigned char
|
|
8029
|
+
static __inline__ unsigned char __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
8414
8030
|
_kortest_mask16_u8(__mmask16 __A, __mmask16 __B, unsigned char *__C) {
|
|
8415
8031
|
*__C = (unsigned char)__builtin_ia32_kortestchi(__A, __B);
|
|
8416
8032
|
return (unsigned char)__builtin_ia32_kortestzhi(__A, __B);
|
|
8417
8033
|
}
|
|
8418
8034
|
|
|
8419
|
-
static __inline__ __mmask16
|
|
8420
|
-
_mm512_kunpackb
|
|
8421
|
-
{
|
|
8035
|
+
static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
8036
|
+
_mm512_kunpackb(__mmask16 __A, __mmask16 __B) {
|
|
8422
8037
|
return (__mmask16) __builtin_ia32_kunpckhi ((__mmask16) __A, (__mmask16) __B);
|
|
8423
8038
|
}
|
|
8424
8039
|
|
|
8425
|
-
static __inline__ __mmask16
|
|
8426
|
-
_mm512_kxnor
|
|
8427
|
-
{
|
|
8040
|
+
static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
8041
|
+
_mm512_kxnor(__mmask16 __A, __mmask16 __B) {
|
|
8428
8042
|
return (__mmask16) __builtin_ia32_kxnorhi ((__mmask16) __A, (__mmask16) __B);
|
|
8429
8043
|
}
|
|
8430
8044
|
|
|
8431
|
-
static __inline__ __mmask16
|
|
8432
|
-
_mm512_kxor
|
|
8433
|
-
{
|
|
8045
|
+
static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
8046
|
+
_mm512_kxor(__mmask16 __A, __mmask16 __B) {
|
|
8434
8047
|
return (__mmask16) __builtin_ia32_kxorhi ((__mmask16) __A, (__mmask16) __B);
|
|
8435
8048
|
}
|
|
8436
8049
|
|
|
@@ -8447,12 +8060,12 @@ _mm512_kxor (__mmask16 __A, __mmask16 __B)
|
|
|
8447
8060
|
#define _kshiftri_mask16(A, I) \
|
|
8448
8061
|
((__mmask16)__builtin_ia32_kshiftrihi((__mmask16)(A), (unsigned int)(I)))
|
|
8449
8062
|
|
|
8450
|
-
static __inline__ unsigned int
|
|
8451
|
-
_cvtmask16_u32(__mmask16 __A) {
|
|
8063
|
+
static __inline__ unsigned int
|
|
8064
|
+
__DEFAULT_FN_ATTRS_CONSTEXPR _cvtmask16_u32(__mmask16 __A) {
|
|
8452
8065
|
return (unsigned int)__builtin_ia32_kmovw((__mmask16)__A);
|
|
8453
8066
|
}
|
|
8454
8067
|
|
|
8455
|
-
static __inline__ __mmask16
|
|
8068
|
+
static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
8456
8069
|
_cvtu32_mask16(unsigned int __A) {
|
|
8457
8070
|
return (__mmask16)__builtin_ia32_kmovw((__mmask16)__A);
|
|
8458
8071
|
}
|
|
@@ -8665,74 +8278,66 @@ _mm512_mask_testn_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B)
|
|
|
8665
8278
|
_mm512_setzero_si512());
|
|
8666
8279
|
}
|
|
8667
8280
|
|
|
8668
|
-
static __inline__ __m512
|
|
8281
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8669
8282
|
_mm512_movehdup_ps (__m512 __A)
|
|
8670
8283
|
{
|
|
8671
8284
|
return (__m512)__builtin_shufflevector((__v16sf)__A, (__v16sf)__A,
|
|
8672
8285
|
1, 1, 3, 3, 5, 5, 7, 7, 9, 9, 11, 11, 13, 13, 15, 15);
|
|
8673
8286
|
}
|
|
8674
8287
|
|
|
8675
|
-
static __inline__ __m512
|
|
8676
|
-
_mm512_mask_movehdup_ps
|
|
8677
|
-
{
|
|
8288
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8289
|
+
_mm512_mask_movehdup_ps(__m512 __W, __mmask16 __U, __m512 __A) {
|
|
8678
8290
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
8679
8291
|
(__v16sf)_mm512_movehdup_ps(__A),
|
|
8680
8292
|
(__v16sf)__W);
|
|
8681
8293
|
}
|
|
8682
8294
|
|
|
8683
|
-
static __inline__ __m512
|
|
8684
|
-
_mm512_maskz_movehdup_ps
|
|
8685
|
-
{
|
|
8295
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8296
|
+
_mm512_maskz_movehdup_ps(__mmask16 __U, __m512 __A) {
|
|
8686
8297
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
8687
8298
|
(__v16sf)_mm512_movehdup_ps(__A),
|
|
8688
8299
|
(__v16sf)_mm512_setzero_ps());
|
|
8689
8300
|
}
|
|
8690
8301
|
|
|
8691
|
-
static __inline__ __m512
|
|
8302
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8692
8303
|
_mm512_moveldup_ps (__m512 __A)
|
|
8693
8304
|
{
|
|
8694
8305
|
return (__m512)__builtin_shufflevector((__v16sf)__A, (__v16sf)__A,
|
|
8695
8306
|
0, 0, 2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 12, 12, 14, 14);
|
|
8696
8307
|
}
|
|
8697
8308
|
|
|
8698
|
-
static __inline__ __m512
|
|
8699
|
-
_mm512_mask_moveldup_ps
|
|
8700
|
-
{
|
|
8309
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8310
|
+
_mm512_mask_moveldup_ps(__m512 __W, __mmask16 __U, __m512 __A) {
|
|
8701
8311
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
8702
8312
|
(__v16sf)_mm512_moveldup_ps(__A),
|
|
8703
8313
|
(__v16sf)__W);
|
|
8704
8314
|
}
|
|
8705
8315
|
|
|
8706
|
-
static __inline__ __m512
|
|
8707
|
-
_mm512_maskz_moveldup_ps
|
|
8708
|
-
{
|
|
8316
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8317
|
+
_mm512_maskz_moveldup_ps(__mmask16 __U, __m512 __A) {
|
|
8709
8318
|
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
|
|
8710
8319
|
(__v16sf)_mm512_moveldup_ps(__A),
|
|
8711
8320
|
(__v16sf)_mm512_setzero_ps());
|
|
8712
8321
|
}
|
|
8713
8322
|
|
|
8714
|
-
static __inline__ __m128
|
|
8715
|
-
_mm_mask_move_ss
|
|
8716
|
-
{
|
|
8323
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
8324
|
+
_mm_mask_move_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
|
|
8717
8325
|
return __builtin_ia32_selectss_128(__U, _mm_move_ss(__A, __B), __W);
|
|
8718
8326
|
}
|
|
8719
8327
|
|
|
8720
|
-
static __inline__ __m128
|
|
8721
|
-
_mm_maskz_move_ss
|
|
8722
|
-
{
|
|
8328
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
8329
|
+
_mm_maskz_move_ss(__mmask8 __U, __m128 __A, __m128 __B) {
|
|
8723
8330
|
return __builtin_ia32_selectss_128(__U, _mm_move_ss(__A, __B),
|
|
8724
8331
|
_mm_setzero_ps());
|
|
8725
8332
|
}
|
|
8726
8333
|
|
|
8727
|
-
static __inline__ __m128d
|
|
8728
|
-
_mm_mask_move_sd
|
|
8729
|
-
{
|
|
8334
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
8335
|
+
_mm_mask_move_sd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
|
|
8730
8336
|
return __builtin_ia32_selectsd_128(__U, _mm_move_sd(__A, __B), __W);
|
|
8731
8337
|
}
|
|
8732
8338
|
|
|
8733
|
-
static __inline__ __m128d
|
|
8734
|
-
_mm_maskz_move_sd
|
|
8735
|
-
{
|
|
8339
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
8340
|
+
_mm_maskz_move_sd(__mmask8 __U, __m128d __A, __m128d __B) {
|
|
8736
8341
|
return __builtin_ia32_selectsd_128(__U, _mm_move_sd(__A, __B),
|
|
8737
8342
|
_mm_setzero_pd());
|
|
8738
8343
|
}
|
|
@@ -8941,70 +8546,57 @@ _mm512_maskz_expand_epi32 (__mmask16 __U, __m512i __A)
|
|
|
8941
8546
|
(__v8df)_mm512_setzero_pd(), \
|
|
8942
8547
|
(__mmask8)(U), (int)(R)))
|
|
8943
8548
|
|
|
8944
|
-
static __inline__ __m512d
|
|
8945
|
-
_mm512_cvtps_pd
|
|
8946
|
-
{
|
|
8549
|
+
static __inline__ __m512d
|
|
8550
|
+
__DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_cvtps_pd(__m256 __A) {
|
|
8947
8551
|
return (__m512d) __builtin_convertvector((__v8sf)__A, __v8df);
|
|
8948
8552
|
}
|
|
8949
8553
|
|
|
8950
|
-
static __inline__ __m512d
|
|
8951
|
-
_mm512_mask_cvtps_pd
|
|
8952
|
-
{
|
|
8554
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8555
|
+
_mm512_mask_cvtps_pd(__m512d __W, __mmask8 __U, __m256 __A) {
|
|
8953
8556
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
8954
8557
|
(__v8df)_mm512_cvtps_pd(__A),
|
|
8955
8558
|
(__v8df)__W);
|
|
8956
8559
|
}
|
|
8957
8560
|
|
|
8958
|
-
static __inline__ __m512d
|
|
8959
|
-
_mm512_maskz_cvtps_pd
|
|
8960
|
-
{
|
|
8561
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8562
|
+
_mm512_maskz_cvtps_pd(__mmask8 __U, __m256 __A) {
|
|
8961
8563
|
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
|
|
8962
8564
|
(__v8df)_mm512_cvtps_pd(__A),
|
|
8963
8565
|
(__v8df)_mm512_setzero_pd());
|
|
8964
8566
|
}
|
|
8965
8567
|
|
|
8966
|
-
static __inline__ __m512d
|
|
8967
|
-
_mm512_cvtpslo_pd
|
|
8968
|
-
{
|
|
8568
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8569
|
+
_mm512_cvtpslo_pd(__m512 __A) {
|
|
8969
8570
|
return (__m512d) _mm512_cvtps_pd(_mm512_castps512_ps256(__A));
|
|
8970
8571
|
}
|
|
8971
8572
|
|
|
8972
|
-
static __inline__ __m512d
|
|
8973
|
-
_mm512_mask_cvtpslo_pd
|
|
8974
|
-
{
|
|
8573
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8574
|
+
_mm512_mask_cvtpslo_pd(__m512d __W, __mmask8 __U, __m512 __A) {
|
|
8975
8575
|
return (__m512d) _mm512_mask_cvtps_pd(__W, __U, _mm512_castps512_ps256(__A));
|
|
8976
8576
|
}
|
|
8977
8577
|
|
|
8978
|
-
static __inline__ __m512d
|
|
8979
|
-
_mm512_mask_mov_pd
|
|
8980
|
-
|
|
8981
|
-
|
|
8982
|
-
(__v8df) __A,
|
|
8983
|
-
(__v8df) __W);
|
|
8578
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8579
|
+
_mm512_mask_mov_pd(__m512d __W, __mmask8 __U, __m512d __A) {
|
|
8580
|
+
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, (__v8df)__A,
|
|
8581
|
+
(__v8df)__W);
|
|
8984
8582
|
}
|
|
8985
8583
|
|
|
8986
|
-
static __inline__ __m512d
|
|
8987
|
-
_mm512_maskz_mov_pd
|
|
8988
|
-
|
|
8989
|
-
|
|
8990
|
-
(__v8df) __A,
|
|
8991
|
-
(__v8df) _mm512_setzero_pd ());
|
|
8584
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8585
|
+
_mm512_maskz_mov_pd(__mmask8 __U, __m512d __A) {
|
|
8586
|
+
return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, (__v8df)__A,
|
|
8587
|
+
(__v8df)_mm512_setzero_pd());
|
|
8992
8588
|
}
|
|
8993
8589
|
|
|
8994
|
-
static __inline__ __m512
|
|
8995
|
-
_mm512_mask_mov_ps
|
|
8996
|
-
|
|
8997
|
-
|
|
8998
|
-
(__v16sf) __A,
|
|
8999
|
-
(__v16sf) __W);
|
|
8590
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8591
|
+
_mm512_mask_mov_ps(__m512 __W, __mmask16 __U, __m512 __A) {
|
|
8592
|
+
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, (__v16sf)__A,
|
|
8593
|
+
(__v16sf)__W);
|
|
9000
8594
|
}
|
|
9001
8595
|
|
|
9002
|
-
static __inline__ __m512
|
|
9003
|
-
_mm512_maskz_mov_ps
|
|
9004
|
-
|
|
9005
|
-
|
|
9006
|
-
(__v16sf) __A,
|
|
9007
|
-
(__v16sf) _mm512_setzero_ps ());
|
|
8596
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8597
|
+
_mm512_maskz_mov_ps(__mmask16 __U, __m512 __A) {
|
|
8598
|
+
return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, (__v16sf)__A,
|
|
8599
|
+
(__v16sf)_mm512_setzero_ps());
|
|
9008
8600
|
}
|
|
9009
8601
|
|
|
9010
8602
|
static __inline__ void __DEFAULT_FN_ATTRS512
|
|
@@ -9053,18 +8645,16 @@ _mm512_mask_compressstoreu_epi32 (void *__P, __mmask16 __U, __m512i __A)
|
|
|
9053
8645
|
(__v4sf)_mm_setzero_ps(), \
|
|
9054
8646
|
(__mmask8)(U), (int)(R)))
|
|
9055
8647
|
|
|
9056
|
-
static __inline__ __m128
|
|
9057
|
-
_mm_mask_cvtsd_ss
|
|
9058
|
-
{
|
|
8648
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
8649
|
+
_mm_mask_cvtsd_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128d __B) {
|
|
9059
8650
|
return __builtin_ia32_cvtsd2ss_round_mask ((__v4sf)__A,
|
|
9060
8651
|
(__v2df)__B,
|
|
9061
8652
|
(__v4sf)__W,
|
|
9062
8653
|
(__mmask8)__U, _MM_FROUND_CUR_DIRECTION);
|
|
9063
8654
|
}
|
|
9064
8655
|
|
|
9065
|
-
static __inline__ __m128
|
|
9066
|
-
_mm_maskz_cvtsd_ss
|
|
9067
|
-
{
|
|
8656
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
8657
|
+
_mm_maskz_cvtsd_ss(__mmask8 __U, __m128 __A, __m128d __B) {
|
|
9068
8658
|
return __builtin_ia32_cvtsd2ss_round_mask ((__v4sf)__A,
|
|
9069
8659
|
(__v2df)__B,
|
|
9070
8660
|
(__v4sf)_mm_setzero_ps(),
|
|
@@ -9188,34 +8778,32 @@ _mm_cvtu64_ss (__m128 __A, unsigned long long __B)
|
|
|
9188
8778
|
}
|
|
9189
8779
|
#endif
|
|
9190
8780
|
|
|
9191
|
-
static __inline__ __m512i
|
|
9192
|
-
_mm512_mask_set1_epi32
|
|
9193
|
-
{
|
|
8781
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8782
|
+
_mm512_mask_set1_epi32(__m512i __O, __mmask16 __M, int __A) {
|
|
9194
8783
|
return (__m512i) __builtin_ia32_selectd_512(__M,
|
|
9195
8784
|
(__v16si) _mm512_set1_epi32(__A),
|
|
9196
8785
|
(__v16si) __O);
|
|
9197
8786
|
}
|
|
9198
8787
|
|
|
9199
|
-
static __inline__ __m512i
|
|
9200
|
-
_mm512_mask_set1_epi64
|
|
9201
|
-
{
|
|
8788
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8789
|
+
_mm512_mask_set1_epi64(__m512i __O, __mmask8 __M, long long __A) {
|
|
9202
8790
|
return (__m512i) __builtin_ia32_selectq_512(__M,
|
|
9203
8791
|
(__v8di) _mm512_set1_epi64(__A),
|
|
9204
8792
|
(__v8di) __O);
|
|
9205
8793
|
}
|
|
9206
8794
|
|
|
9207
|
-
static
|
|
9208
|
-
|
|
9209
|
-
char
|
|
9210
|
-
char
|
|
9211
|
-
char
|
|
9212
|
-
char
|
|
9213
|
-
char
|
|
9214
|
-
char
|
|
9215
|
-
char
|
|
9216
|
-
char
|
|
9217
|
-
char
|
|
9218
|
-
char
|
|
8795
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_set_epi8(
|
|
8796
|
+
char __e63, char __e62, char __e61, char __e60, char __e59, char __e58,
|
|
8797
|
+
char __e57, char __e56, char __e55, char __e54, char __e53, char __e52,
|
|
8798
|
+
char __e51, char __e50, char __e49, char __e48, char __e47, char __e46,
|
|
8799
|
+
char __e45, char __e44, char __e43, char __e42, char __e41, char __e40,
|
|
8800
|
+
char __e39, char __e38, char __e37, char __e36, char __e35, char __e34,
|
|
8801
|
+
char __e33, char __e32, char __e31, char __e30, char __e29, char __e28,
|
|
8802
|
+
char __e27, char __e26, char __e25, char __e24, char __e23, char __e22,
|
|
8803
|
+
char __e21, char __e20, char __e19, char __e18, char __e17, char __e16,
|
|
8804
|
+
char __e15, char __e14, char __e13, char __e12, char __e11, char __e10,
|
|
8805
|
+
char __e9, char __e8, char __e7, char __e6, char __e5, char __e4, char __e3,
|
|
8806
|
+
char __e2, char __e1, char __e0) {
|
|
9219
8807
|
|
|
9220
8808
|
return __extension__ (__m512i)(__v64qi)
|
|
9221
8809
|
{__e0, __e1, __e2, __e3, __e4, __e5, __e6, __e7,
|
|
@@ -9228,14 +8816,13 @@ _mm512_set_epi8 (char __e63, char __e62, char __e61, char __e60, char __e59,
|
|
|
9228
8816
|
__e56, __e57, __e58, __e59, __e60, __e61, __e62, __e63};
|
|
9229
8817
|
}
|
|
9230
8818
|
|
|
9231
|
-
static
|
|
9232
|
-
|
|
9233
|
-
short
|
|
9234
|
-
short
|
|
9235
|
-
short
|
|
9236
|
-
short
|
|
9237
|
-
short
|
|
9238
|
-
short __e2, short __e1, short __e0) {
|
|
8819
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_set_epi16(
|
|
8820
|
+
short __e31, short __e30, short __e29, short __e28, short __e27,
|
|
8821
|
+
short __e26, short __e25, short __e24, short __e23, short __e22,
|
|
8822
|
+
short __e21, short __e20, short __e19, short __e18, short __e17,
|
|
8823
|
+
short __e16, short __e15, short __e14, short __e13, short __e12,
|
|
8824
|
+
short __e11, short __e10, short __e9, short __e8, short __e7, short __e6,
|
|
8825
|
+
short __e5, short __e4, short __e3, short __e2, short __e1, short __e0) {
|
|
9239
8826
|
return __extension__ (__m512i)(__v32hi)
|
|
9240
8827
|
{__e0, __e1, __e2, __e3, __e4, __e5, __e6, __e7,
|
|
9241
8828
|
__e8, __e9, __e10, __e11, __e12, __e13, __e14, __e15,
|
|
@@ -9243,81 +8830,81 @@ _mm512_set_epi16(short __e31, short __e30, short __e29, short __e28,
|
|
|
9243
8830
|
__e24, __e25, __e26, __e27, __e28, __e29, __e30, __e31 };
|
|
9244
8831
|
}
|
|
9245
8832
|
|
|
9246
|
-
static __inline __m512i
|
|
9247
|
-
|
|
9248
|
-
|
|
9249
|
-
int __I, int __J, int __K, int __L,
|
|
9250
|
-
int __M, int __N, int __O, int __P)
|
|
9251
|
-
{
|
|
8833
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_set_epi32(
|
|
8834
|
+
int __A, int __B, int __C, int __D, int __E, int __F, int __G, int __H,
|
|
8835
|
+
int __I, int __J, int __K, int __L, int __M, int __N, int __O, int __P) {
|
|
9252
8836
|
return __extension__ (__m512i)(__v16si)
|
|
9253
8837
|
{ __P, __O, __N, __M, __L, __K, __J, __I,
|
|
9254
8838
|
__H, __G, __F, __E, __D, __C, __B, __A };
|
|
9255
8839
|
}
|
|
9256
8840
|
|
|
9257
|
-
|
|
9258
|
-
|
|
9259
|
-
|
|
9260
|
-
|
|
8841
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_setr_epi32(
|
|
8842
|
+
int e0, int e1, int e2, int e3, int e4, int e5, int e6, int e7, int e8,
|
|
8843
|
+
int e9, int e10, int e11, int e12, int e13, int e14, int e15) {
|
|
8844
|
+
return _mm512_set_epi32(e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4,
|
|
8845
|
+
e3, e2, e1, e0);
|
|
8846
|
+
}
|
|
9261
8847
|
|
|
9262
|
-
static __inline__ __m512i
|
|
9263
|
-
_mm512_set_epi64
|
|
9264
|
-
|
|
9265
|
-
long long __G, long long __H)
|
|
9266
|
-
{
|
|
8848
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8849
|
+
_mm512_set_epi64(long long __A, long long __B, long long __C, long long __D,
|
|
8850
|
+
long long __E, long long __F, long long __G, long long __H) {
|
|
9267
8851
|
return __extension__ (__m512i) (__v8di)
|
|
9268
8852
|
{ __H, __G, __F, __E, __D, __C, __B, __A };
|
|
9269
8853
|
}
|
|
9270
8854
|
|
|
9271
|
-
|
|
9272
|
-
|
|
8855
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8856
|
+
_mm512_setr_epi64(long long e0, long long e1, long long e2, long long e3,
|
|
8857
|
+
long long e4, long long e5, long long e6, long long e7) {
|
|
8858
|
+
return _mm512_set_epi64(e7, e6, e5, e4, e3, e2, e1, e0);
|
|
8859
|
+
}
|
|
9273
8860
|
|
|
9274
|
-
static __inline__ __m512d
|
|
9275
|
-
_mm512_set_pd
|
|
9276
|
-
|
|
9277
|
-
{
|
|
8861
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8862
|
+
_mm512_set_pd(double __A, double __B, double __C, double __D, double __E,
|
|
8863
|
+
double __F, double __G, double __H) {
|
|
9278
8864
|
return __extension__ (__m512d)
|
|
9279
8865
|
{ __H, __G, __F, __E, __D, __C, __B, __A };
|
|
9280
8866
|
}
|
|
9281
8867
|
|
|
9282
|
-
|
|
9283
|
-
|
|
8868
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8869
|
+
_mm512_setr_pd(double e0, double e1, double e2, double e3, double e4, double e5,
|
|
8870
|
+
double e6, double e7) {
|
|
8871
|
+
return _mm512_set_pd(e7, e6, e5, e4, e3, e2, e1, e0);
|
|
8872
|
+
}
|
|
9284
8873
|
|
|
9285
|
-
static __inline__ __m512
|
|
9286
|
-
_mm512_set_ps
|
|
9287
|
-
|
|
9288
|
-
|
|
9289
|
-
float __M, float __N, float __O, float __P)
|
|
9290
|
-
{
|
|
8874
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8875
|
+
_mm512_set_ps(float __A, float __B, float __C, float __D, float __E, float __F,
|
|
8876
|
+
float __G, float __H, float __I, float __J, float __K, float __L,
|
|
8877
|
+
float __M, float __N, float __O, float __P) {
|
|
9291
8878
|
return __extension__ (__m512)
|
|
9292
8879
|
{ __P, __O, __N, __M, __L, __K, __J, __I,
|
|
9293
8880
|
__H, __G, __F, __E, __D, __C, __B, __A };
|
|
9294
8881
|
}
|
|
9295
8882
|
|
|
9296
|
-
|
|
9297
|
-
|
|
9298
|
-
|
|
8883
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8884
|
+
_mm512_setr_ps(float e0, float e1, float e2, float e3, float e4, float e5,
|
|
8885
|
+
float e6, float e7, float e8, float e9, float e10, float e11,
|
|
8886
|
+
float e12, float e13, float e14, float e15) {
|
|
8887
|
+
return _mm512_set_ps(e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3,
|
|
8888
|
+
e2, e1, e0);
|
|
8889
|
+
}
|
|
9299
8890
|
|
|
9300
|
-
static __inline__ __m512
|
|
9301
|
-
_mm512_abs_ps(__m512 __A)
|
|
9302
|
-
{
|
|
8891
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8892
|
+
_mm512_abs_ps(__m512 __A) {
|
|
9303
8893
|
return (__m512)_mm512_and_epi32(_mm512_set1_epi32(0x7FFFFFFF),(__m512i)__A) ;
|
|
9304
8894
|
}
|
|
9305
8895
|
|
|
9306
|
-
static __inline__ __m512
|
|
9307
|
-
_mm512_mask_abs_ps(__m512 __W, __mmask16 __K, __m512 __A)
|
|
9308
|
-
{
|
|
8896
|
+
static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8897
|
+
_mm512_mask_abs_ps(__m512 __W, __mmask16 __K, __m512 __A) {
|
|
9309
8898
|
return (__m512)_mm512_mask_and_epi32((__m512i)__W, __K, _mm512_set1_epi32(0x7FFFFFFF),(__m512i)__A) ;
|
|
9310
8899
|
}
|
|
9311
8900
|
|
|
9312
|
-
static __inline__ __m512d
|
|
9313
|
-
_mm512_abs_pd(__m512d __A)
|
|
9314
|
-
{
|
|
8901
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8902
|
+
_mm512_abs_pd(__m512d __A) {
|
|
9315
8903
|
return (__m512d)_mm512_and_epi64(_mm512_set1_epi64(0x7FFFFFFFFFFFFFFF),(__v8di)__A) ;
|
|
9316
8904
|
}
|
|
9317
8905
|
|
|
9318
|
-
static __inline__ __m512d
|
|
9319
|
-
_mm512_mask_abs_pd(__m512d __W, __mmask8 __K, __m512d __A)
|
|
9320
|
-
{
|
|
8906
|
+
static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8907
|
+
_mm512_mask_abs_pd(__m512d __W, __mmask8 __K, __m512d __A) {
|
|
9321
8908
|
return (__m512d)_mm512_mask_and_epi64((__v8di)__W, __K, _mm512_set1_epi64(0x7FFFFFFFFFFFFFFF),(__v8di)__A);
|
|
9322
8909
|
}
|
|
9323
8910
|
|
|
@@ -9337,19 +8924,23 @@ _mm512_mask_abs_pd(__m512d __W, __mmask8 __K, __m512d __A)
|
|
|
9337
8924
|
* This takes log2(n) steps where n is the number of elements in the vector.
|
|
9338
8925
|
*/
|
|
9339
8926
|
|
|
9340
|
-
static __inline__ long long
|
|
8927
|
+
static __inline__ long long __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8928
|
+
_mm512_reduce_add_epi64(__m512i __W) {
|
|
9341
8929
|
return __builtin_reduce_add((__v8di)__W);
|
|
9342
8930
|
}
|
|
9343
8931
|
|
|
9344
|
-
static __inline__ long long
|
|
8932
|
+
static __inline__ long long __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8933
|
+
_mm512_reduce_mul_epi64(__m512i __W) {
|
|
9345
8934
|
return __builtin_reduce_mul((__v8di)__W);
|
|
9346
8935
|
}
|
|
9347
8936
|
|
|
9348
|
-
static __inline__ long long
|
|
8937
|
+
static __inline__ long long __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8938
|
+
_mm512_reduce_and_epi64(__m512i __W) {
|
|
9349
8939
|
return __builtin_reduce_and((__v8di)__W);
|
|
9350
8940
|
}
|
|
9351
8941
|
|
|
9352
|
-
static __inline__ long long
|
|
8942
|
+
static __inline__ long long __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
8943
|
+
_mm512_reduce_or_epi64(__m512i __W) {
|
|
9353
8944
|
return __builtin_reduce_or((__v8di)__W);
|
|
9354
8945
|
}
|
|
9355
8946
|
|
|
@@ -9400,22 +8991,22 @@ _mm512_mask_reduce_mul_pd(__mmask8 __M, __m512d __W) {
|
|
|
9400
8991
|
return __builtin_ia32_reduce_fmul_pd512(1.0, __W);
|
|
9401
8992
|
}
|
|
9402
8993
|
|
|
9403
|
-
static __inline__ int
|
|
8994
|
+
static __inline__ int __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
9404
8995
|
_mm512_reduce_add_epi32(__m512i __W) {
|
|
9405
8996
|
return __builtin_reduce_add((__v16si)__W);
|
|
9406
8997
|
}
|
|
9407
8998
|
|
|
9408
|
-
static __inline__ int
|
|
8999
|
+
static __inline__ int __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
9409
9000
|
_mm512_reduce_mul_epi32(__m512i __W) {
|
|
9410
9001
|
return __builtin_reduce_mul((__v16si)__W);
|
|
9411
9002
|
}
|
|
9412
9003
|
|
|
9413
|
-
static __inline__ int
|
|
9004
|
+
static __inline__ int __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
9414
9005
|
_mm512_reduce_and_epi32(__m512i __W) {
|
|
9415
9006
|
return __builtin_reduce_and((__v16si)__W);
|
|
9416
9007
|
}
|
|
9417
9008
|
|
|
9418
|
-
static __inline__ int
|
|
9009
|
+
static __inline__ int __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
9419
9010
|
_mm512_reduce_or_epi32(__m512i __W) {
|
|
9420
9011
|
return __builtin_reduce_or((__v16si)__W);
|
|
9421
9012
|
}
|
|
@@ -9466,22 +9057,22 @@ _mm512_mask_reduce_mul_ps(__mmask16 __M, __m512 __W) {
|
|
|
9466
9057
|
return __builtin_ia32_reduce_fmul_ps512(1.0f, __W);
|
|
9467
9058
|
}
|
|
9468
9059
|
|
|
9469
|
-
static __inline__ long long
|
|
9060
|
+
static __inline__ long long __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
9470
9061
|
_mm512_reduce_max_epi64(__m512i __V) {
|
|
9471
9062
|
return __builtin_reduce_max((__v8di)__V);
|
|
9472
9063
|
}
|
|
9473
9064
|
|
|
9474
|
-
static __inline__ unsigned long long
|
|
9065
|
+
static __inline__ unsigned long long __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
9475
9066
|
_mm512_reduce_max_epu64(__m512i __V) {
|
|
9476
9067
|
return __builtin_reduce_max((__v8du)__V);
|
|
9477
9068
|
}
|
|
9478
9069
|
|
|
9479
|
-
static __inline__ long long
|
|
9070
|
+
static __inline__ long long __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
9480
9071
|
_mm512_reduce_min_epi64(__m512i __V) {
|
|
9481
9072
|
return __builtin_reduce_min((__v8di)__V);
|
|
9482
9073
|
}
|
|
9483
9074
|
|
|
9484
|
-
static __inline__ unsigned long long
|
|
9075
|
+
static __inline__ unsigned long long __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
9485
9076
|
_mm512_reduce_min_epu64(__m512i __V) {
|
|
9486
9077
|
return __builtin_reduce_min((__v8du)__V);
|
|
9487
9078
|
}
|
|
@@ -9509,22 +9100,22 @@ _mm512_mask_reduce_min_epu64(__mmask8 __M, __m512i __V) {
|
|
|
9509
9100
|
__V = _mm512_mask_mov_epi64(_mm512_set1_epi64(-1LL), __M, __V);
|
|
9510
9101
|
return __builtin_reduce_min((__v8du)__V);
|
|
9511
9102
|
}
|
|
9512
|
-
static __inline__ int
|
|
9103
|
+
static __inline__ int __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
9513
9104
|
_mm512_reduce_max_epi32(__m512i __V) {
|
|
9514
9105
|
return __builtin_reduce_max((__v16si)__V);
|
|
9515
9106
|
}
|
|
9516
9107
|
|
|
9517
|
-
static __inline__ unsigned int
|
|
9108
|
+
static __inline__ unsigned int __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
9518
9109
|
_mm512_reduce_max_epu32(__m512i __V) {
|
|
9519
9110
|
return __builtin_reduce_max((__v16su)__V);
|
|
9520
9111
|
}
|
|
9521
9112
|
|
|
9522
|
-
static __inline__ int
|
|
9113
|
+
static __inline__ int __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
9523
9114
|
_mm512_reduce_min_epi32(__m512i __V) {
|
|
9524
9115
|
return __builtin_reduce_min((__v16si)__V);
|
|
9525
9116
|
}
|
|
9526
9117
|
|
|
9527
|
-
static __inline__ unsigned int
|
|
9118
|
+
static __inline__ unsigned int __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
9528
9119
|
_mm512_reduce_min_epu32(__m512i __V) {
|
|
9529
9120
|
return __builtin_reduce_min((__v16su)__V);
|
|
9530
9121
|
}
|