Current File : //usr/lib/aarch64-linux-gnu/perl/5.38/asm/sve_context.ph
require '_h2ph_pre.ph';

no warnings qw(redefine misc);

unless(defined(&__ASM_SVE_CONTEXT_H)) {
    eval 'sub __ASM_SVE_CONTEXT_H () {1;}' unless defined(&__ASM_SVE_CONTEXT_H);
    require 'linux/types.ph';
    eval 'sub __SVE_VQ_BYTES () {16;}' unless defined(&__SVE_VQ_BYTES);
    eval 'sub __SVE_VQ_MIN () {1;}' unless defined(&__SVE_VQ_MIN);
    eval 'sub __SVE_VQ_MAX () {512;}' unless defined(&__SVE_VQ_MAX);
    eval 'sub __SVE_VL_MIN () {( &__SVE_VQ_MIN *  &__SVE_VQ_BYTES);}' unless defined(&__SVE_VL_MIN);
    eval 'sub __SVE_VL_MAX () {( &__SVE_VQ_MAX *  &__SVE_VQ_BYTES);}' unless defined(&__SVE_VL_MAX);
    eval 'sub __SVE_NUM_ZREGS () {32;}' unless defined(&__SVE_NUM_ZREGS);
    eval 'sub __SVE_NUM_PREGS () {16;}' unless defined(&__SVE_NUM_PREGS);
    eval 'sub __sve_vl_valid {
        my($vl) = @_;
	    eval q((($vl) %  &__SVE_VQ_BYTES == 0 && ($vl) >=  &__SVE_VL_MIN  && ($vl) <=  &__SVE_VL_MAX));
    }' unless defined(&__sve_vl_valid);
    eval 'sub __sve_vq_from_vl {
        my($vl) = @_;
	    eval q((($vl) /  &__SVE_VQ_BYTES));
    }' unless defined(&__sve_vq_from_vl);
    eval 'sub __sve_vl_from_vq {
        my($vq) = @_;
	    eval q((($vq) *  &__SVE_VQ_BYTES));
    }' unless defined(&__sve_vl_from_vq);
    eval 'sub __SVE_ZREG_SIZE {
        my($vq) = @_;
	    eval q((( &__u32)($vq) *  &__SVE_VQ_BYTES));
    }' unless defined(&__SVE_ZREG_SIZE);
    eval 'sub __SVE_PREG_SIZE {
        my($vq) = @_;
	    eval q((( &__u32)($vq) * ( &__SVE_VQ_BYTES / 8)));
    }' unless defined(&__SVE_PREG_SIZE);
    eval 'sub __SVE_FFR_SIZE {
        my($vq) = @_;
	    eval q( &__SVE_PREG_SIZE($vq));
    }' unless defined(&__SVE_FFR_SIZE);
    eval 'sub __SVE_ZREGS_OFFSET () {0;}' unless defined(&__SVE_ZREGS_OFFSET);
    eval 'sub __SVE_ZREG_OFFSET {
        my($vq, $n) = @_;
	    eval q(( &__SVE_ZREGS_OFFSET +  &__SVE_ZREG_SIZE($vq) * ($n)));
    }' unless defined(&__SVE_ZREG_OFFSET);
    eval 'sub __SVE_ZREGS_SIZE {
        my($vq) = @_;
	    eval q(( &__SVE_ZREG_OFFSET($vq,  &__SVE_NUM_ZREGS) -  &__SVE_ZREGS_OFFSET));
    }' unless defined(&__SVE_ZREGS_SIZE);
    eval 'sub __SVE_PREGS_OFFSET {
        my($vq) = @_;
	    eval q(( &__SVE_ZREGS_OFFSET +  &__SVE_ZREGS_SIZE($vq)));
    }' unless defined(&__SVE_PREGS_OFFSET);
    eval 'sub __SVE_PREG_OFFSET {
        my($vq, $n) = @_;
	    eval q(( &__SVE_PREGS_OFFSET($vq) +  &__SVE_PREG_SIZE($vq) * ($n)));
    }' unless defined(&__SVE_PREG_OFFSET);
    eval 'sub __SVE_PREGS_SIZE {
        my($vq) = @_;
	    eval q(( &__SVE_PREG_OFFSET($vq,  &__SVE_NUM_PREGS) -  &__SVE_PREGS_OFFSET($vq)));
    }' unless defined(&__SVE_PREGS_SIZE);
    eval 'sub __SVE_FFR_OFFSET {
        my($vq) = @_;
	    eval q(( &__SVE_PREGS_OFFSET($vq) +  &__SVE_PREGS_SIZE($vq)));
    }' unless defined(&__SVE_FFR_OFFSET);
}
1;