clarify ARM64EC support (#169)

This commit is contained in:
Cyano Hao 2023-12-22 18:08:00 +08:00 committed by GitHub
parent 6a168cfd16
commit edf1424ce3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 7 deletions

View File

@ -80,9 +80,8 @@ For Windows 7 or later:
Notes for Windows on ARM:
- Red Panda C++ can be built for ARM64 ABI only on Windows 11 ARM64, while it is supposed (but not tested) to run on Windows 10 ARM64.
- The ARM64EC (“emulation compatible”) ABI, which highlights interoperability with x64, is currently not supported.
- ARM64EC does not bring significant benefit, since Red Panda C++ can be built to ARM64 classic ABI.
- However, ARM64EC will allow users to use their favorite input methods, fancy Qt styles.
- ARM64EC (“emulation compatible”) host is not supported, i.e., Red Panda C++ cannot be built with ARM64EC toolchain.
- ARM64EC target is (theoretically) supported, i.e. Red Panda C++ will build ARM64EC binaries if upstream toolchain supports ARM64EC.
- With the [ARM32 deprecation in Windows 11 Insider Preview Build 25905](https://blogs.windows.com/windows-insider/2023/07/12/announcing-windows-11-insider-preview-build-25905/), ARM32 support will never be added.
For legacy Windows (NT 5.1 6.0):

View File

@ -80,9 +80,8 @@
关于 ARM 上的 Windows 的注记:
- 小熊猫 C++ 只能在 Windows 11 ARM64 上构建 ARM64 版,成品应该能在 Windows 10 ARM64 上运行(但没有测试过)。
- 暂不支持以 x64 互操作性著称的 ARM64EC“仿真兼容”ABI。
- 既然小熊猫 C++ 已经可以构建到 ARM64 经典 ABIARM64EC 就不能带来明显的好处。
- 但是 ARM64EC 可以支持用户习惯的输入法和喜欢的 Qt 样式。
- 不支持 ARM64EC“仿真兼容”主机即不能用 ARM64EC 工具链构建小熊猫 C++。
- (理论上)支持 ARM64EC 目标,也就是说,如果上游工具链支持 ARM64EC那么小熊猫 C++ 可以构建 ARM64EC 程序和库。
- 随着 [Windows 11 Insider Preview Build 25905 弃用 ARM32](https://blogs.windows.com/windows-insider/2023/07/12/announcing-windows-11-insider-preview-build-25905/),小熊猫 C++ 今后也不会添加 ARM32 支持了。
适用于旧版 WindowsNT 5.1 6.0

View File

@ -3624,7 +3624,7 @@ void Settings::Environment::doLoad()
}
#ifdef Q_OS_WINDOWS
# if defined (__aarch64__) || defined(_M_ARM64) || defined (_M_ARM64EC)
# if defined (__aarch64__) || defined(_M_ARM64)
// the only native MinGW toolchain (LLVM-MinGW) does not have local codepage support
// prefer UTF-8 compatible OpenConsole.exe
mUseCustomTerminal = boolValue("use_custom_terminal", true);