Hasty Briefsbeta

Bilingual

Porting PuTTY to Windows on Arm

2 days ago
  • Compiling PuTTY for Windows on Arm required the _ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE macro and built smoothly.
  • Using clang-cl for WoA builds needed disabling stack protection with /GS-.
  • MSI installer issues were resolved by removing custom DLLs and setting InstallerVersion to 500 with platform Arm64.
  • AES encryption was accelerated using NEON intrinsics vaeseq_u8 and vaesmcq_u8 for round operations.
  • SHA-256 acceleration used NEON instructions vsha256su0/su1 for message schedule and vsha256h/h2 for hash update, with interleaved scheduling.
  • SHA-1 acceleration used similar NEON approach with vsha1su0/su1 and vsha1c/m/p for rounds, managing a five-word state.