1# Power Architecture definition 2# Four defined ABIs, all combinations of: 3# *) Hard/Soft Floating Point 4# *) 32-bit/64-bit 5 6DEFAULTTUNE ?= "powerpc" 7 8TUNE_PKGARCH = "${TUNE_PKGARCH_tune-${DEFAULTTUNE}}" 9ABIEXTENSION ?= "" 10 11# Endian 12TUNEVALID[bigendian] = "Use PowerPC Big Endian" 13 14TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "bigendian", " -mbig-endian", " -mlittle-endian", d)}" 15 16TUNEVALID[m32] = "Power ELF32 standard ABI" 17TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'm32', ' -m32', '', d)}" 18TUNE_ARCH .= "${@bb.utils.contains('TUNE_FEATURES', 'm32', 'powerpc', '', d)}" 19 20TUNEVALID[fpu-hard] = "Use hardware FPU." 21TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'fpu-hard', ' -mhard-float', '', d)}" 22 23TUNEVALID[fpu-soft] = "Use software FPU." 24TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'fpu-soft', ' -msoft-float', '', d)}" 25TARGET_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'fpu-soft', 'soft', '', d)}" 26 27TUNEVALID[altivec] = "Altivec" 28 29# Basic tune definitions 30AVAILTUNES += "powerpc powerpc-nf powerpcle powerpcle-nf" 31 32TUNE_FEATURES_tune-powerpc-nf = "m32 fpu-soft bigendian" 33BASE_LIB_tune-powerpc-nf = "lib" 34TUNE_PKGARCH_tune-powerpc-nf = "powerpc-nf" 35PACKAGE_EXTRA_ARCHS_tune-powerpc-nf = "powerpc-nf" 36 37TUNE_FEATURES_tune-powerpc = "m32 fpu-hard bigendian" 38BASE_LIB_tune-powerpc = "lib" 39TUNE_PKGARCH_tune-powerpc = "powerpc" 40PACKAGE_EXTRA_ARCHS_tune-powerpc = "powerpc" 41 42TUNE_FEATURES_tune-powerpcle-nf = "m32 fpu-soft" 43BASE_LIB_tune-powerpcle-nf = "lib" 44TUNE_PKGARCH_tune-powerpcle-nf = "powerpcle-nf" 45PACKAGE_EXTRA_ARCHS_tune-powerpcle-nf = "powerpcle-nf" 46 47TUNE_FEATURES_tune-powerpcle = "m32 fpu-hard" 48BASE_LIB_tune-powerpcle = "lib" 49TUNE_PKGARCH_tune-powerpcle = "powerpcle" 50PACKAGE_EXTRA_ARCHS_tune-powerpcle = "powerpcle" 51