From: Pino Toscano Date: Thu, 6 Oct 2022 21:15:30 +0000 (+0200) Subject: [PATCH] Add HPPA detection X-Git-Tag: archive/raspbian/6.4.2+dfsg-20+rpi1^2~13 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=8aa7a9d61adb48762ea6fbcbcd88abd6afa22a12;p=qt6-base.git [PATCH] Add HPPA detection - detect the HPPA architecture (PA-RISC) and define Q_PROCESSOR_HPPA - set the right machine type in QElfParser for HPPA ELF files Change-Id: I5214ce64ef1fdd0ecca3d6c1694c5db9b2852a22 Reviewed-by: Thiago Macieira Gbp-Pq: Name upstream_Add-HPPA-detection.patch --- diff --git a/src/corelib/global/archdetect.cpp b/src/corelib/global/archdetect.cpp index a0ce5baa..0bb6853f 100644 --- a/src/corelib/global/archdetect.cpp +++ b/src/corelib/global/archdetect.cpp @@ -17,6 +17,8 @@ # define ARCH_PROCESSOR "bfin" #elif defined(Q_PROCESSOR_WASM) # define ARCH_PROCESSOR "wasm" +#elif defined(Q_PROCESSOR_HPPA) +# define ARCH_PROCESSOR "hppa" #elif defined(Q_PROCESSOR_X86_32) # define ARCH_PROCESSOR "i386" #elif defined(Q_PROCESSOR_X86_64) diff --git a/src/corelib/global/qglobal.cpp b/src/corelib/global/qglobal.cpp index e9a75ba9..7f0e0104 100644 --- a/src/corelib/global/qglobal.cpp +++ b/src/corelib/global/qglobal.cpp @@ -1790,6 +1790,15 @@ bool qSharedBuild() noexcept \sa QSysInfo::buildCpuArchitecture() */ +/*! + \macro Q_PROCESSOR_HPPA + \relates + + Defined if the application is compiled for PA-RISC processors. + + \sa QSysInfo::buildCpuArchitecture() +*/ + /*! \macro Q_PROCESSOR_IA64 \relates diff --git a/src/corelib/global/qprocessordetection.h b/src/corelib/global/qprocessordetection.h index f18cbf32..1ded4583 100644 --- a/src/corelib/global/qprocessordetection.h +++ b/src/corelib/global/qprocessordetection.h @@ -139,6 +139,15 @@ // # define Q_PROCESSOR_BLACKFIN // # define Q_BYTE_ORDER Q_LITTLE_ENDIAN +/* + PA-RISC family, no revisions or variants + + PA-RISC is big-endian. +*/ +#elif defined(__hppa__) +# define Q_PROCESSOR_HPPA +# define Q_BYTE_ORDER Q_BIG_ENDIAN + /* X86 family, known variants: 32- and 64-bit diff --git a/src/corelib/plugin/qelfparser_p.cpp b/src/corelib/plugin/qelfparser_p.cpp index 6ebfaff2..62fae0d7 100644 --- a/src/corelib/plugin/qelfparser_p.cpp +++ b/src/corelib/plugin/qelfparser_p.cpp @@ -118,6 +118,8 @@ struct ElfMachineCheck EM_AARCH64 #elif defined(Q_PROCESSOR_BLACKFIN) EM_BLACKFIN +#elif defined(Q_PROCESSOR_HPPA) + EM_PARISC #elif defined(Q_PROCESSOR_IA64) EM_IA_64 #elif defined(Q_PROCESSOR_MIPS) @@ -383,6 +385,7 @@ Q_DECL_UNUSED Q_DECL_COLD_FUNCTION static QDebug &operator<<(QDebug &d, ElfHeade #endif case EM_IA_64: d << ", IA-64"; break; case EM_MIPS: d << ", MIPS"; break; + case EM_PARISC: d << ", HPPA"; break; case EM_PPC: d << ", PowerPC"; break; case EM_PPC64: d << ", PowerPC 64-bit"; break; #ifdef EM_RISCV