require '_h2ph_pre.ph';

no warnings qw(redefine misc);

unless(defined(&_ARM_CDEFS_H_)) {
    eval 'sub _ARM_CDEFS_H_ () {1;}' unless defined(&_ARM_CDEFS_H_);
    unless(defined(&__lint__)) {
	if(((defined(&__GNUC__) ? &__GNUC__ : undef) == 4 && (defined(&__GNUC_MINOR__) ? &__GNUC_MINOR__ : undef) < 1) || (defined(&__GNUC__) ? &__GNUC__ : undef) < 4) {
	    die("GCC\ 4\.1\ or\ compatible\ required\.");
	}
    }
    if(defined (&__ARM_ARCH_8A__) || defined (&__ARM_ARCH_8A) || (defined(&__ARM_ARCH) ? &__ARM_ARCH : undef) == 8) {
	eval 'sub _ARM_ARCH_8 () {1;}' unless defined(&_ARM_ARCH_8);
    }
    if(defined (&_ARM_ARCH_8) || defined (&__ARM_ARCH_7__) || defined (&__ARM_ARCH_7A__) || defined (&__ARM_ARCH_7R__) || defined (&__ARM_ARCH_7M__) || defined (&__ARM_ARCH_7EM__)) {
	eval 'sub _ARM_ARCH_7 () {1;}' unless defined(&_ARM_ARCH_7);
    }
    if(defined (&_ARM_ARCH_7) || defined (&__ARM_ARCH_6T2__)) {
	eval 'sub _ARM_ARCH_T2 () {1;}' unless defined(&_ARM_ARCH_T2);
    }
    if(defined (&_ARM_ARCH_T2) || defined (&__ARM_ARCH_6__) || defined (&__ARM_ARCH_6J__) || defined (&__ARM_ARCH_6K__) || defined (&__ARM_ARCH_6KZ__) || defined (&__ARM_ARCH_6Z__) || defined (&__ARM_ARCH_6ZK__) || defined (&__ARM_ARCH_6ZM__)) {
	eval 'sub _ARM_ARCH_6 () {1;}' unless defined(&_ARM_ARCH_6);
    }
    if(defined (&_ARM_ARCH_6) || defined (&__ARM_ARCH_5T__) || defined (&__ARM_ARCH_5TE__) || defined (&__ARM_ARCH_5TEJ__)) {
	eval 'sub _ARM_ARCH_5T () {1;}' unless defined(&_ARM_ARCH_5T);
    }
    if(defined (&_ARM_ARCH_6) || defined (&_ARM_ARCH_5T) || defined (&__ARM_ARCH_5__)) {
	eval 'sub _ARM_ARCH_5 () {1;}' unless defined(&_ARM_ARCH_5);
    }
    if(defined (&_ARM_ARCH_5) || defined (&__ARM_ARCH_4T__)) {
	eval 'sub _ARM_ARCH_4T () {1;}' unless defined(&_ARM_ARCH_4T);
    }
    if(defined (&_ARM_ARCH_T2) || (!defined (&__thumb__)  && (defined (&_ARM_ARCH_6) || defined (&__ARM_ARCH_5TE__) || defined (&__ARM_ARCH_5TEJ__)))) {
	eval 'sub _ARM_ARCH_DWORD_OK () {1;}' unless defined(&_ARM_ARCH_DWORD_OK);
    }
    if(defined (&__ARMEB__)  && defined (&_ARM_ARCH_6)) {
	eval 'sub _ARM_ARCH_BE8 () {1;}' unless defined(&_ARM_ARCH_BE8);
    }
    if(defined(&__ARM_PCS_AAPCS64)) {
	eval 'sub __ALIGNBYTES () {($sizeof{ &__int128_t} - 1);}' unless defined(&__ALIGNBYTES);
    }
 elsif(defined(&__ARM_EABI__)) {
	eval 'sub __ALIGNBYTES () {($sizeof{\'long long\'} - 1);}' unless defined(&__ALIGNBYTES);
    } else {
	eval 'sub __ALIGNBYTES () {($sizeof{\'int\'} - 1);}' unless defined(&__ALIGNBYTES);
    }
}
1;
