cosmopolitan/libc/nt/enum
Justine Tunney 5bd22aef12
Experiment with supporting Windows Arm64 natively
So far I haven't found any way to run native Arm64 code on Windows Arm64
without using MSVC. When I build a PE binary from scratch that should be
a valid Windows Arm64 program, the OS refuses to run it. Possibly due to
requiring additional content like XML manifests or relocation or control
flow integrity data that isn't normally required on x64. I've also tried
using VirtualAlloc2() to JIT an Arm64 native function, but VirtualAlloc2
always fails with invalid parameter. I tried using MSVC to create an ARM
DLL that my x64 emulated program can link at runtime, to pass a function
pointer with ARM code, but LoadLibrary() rejects ARM DLLs as invalid exe

The only option left, is likely to write a new program like ape/ape-m1.c
which can be compiled by MSVC to load and run an AARCH64 ELF executable.
The emulated x64 binary would detect emulation using IsWow64Process2 and
then drop the loader executable in a temporary folder, and re-launch the
original executable, using the Arm64 segments of the cosmocc fat binary.
2024-08-16 06:43:59 -07:00
..
accessmask.h Make improvements 2023-09-18 21:04:47 -07:00
afd.h Add epoll and do more release readiness changes 2020-11-28 12:01:51 -08:00
bitblt.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
callback.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
color.h Get fork() working on Windows 2020-11-13 03:14:39 -08:00
computernameformat.h Reduce header complexity 2023-11-28 14:39:42 -08:00
consolemodeflags.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
consoleselectionflags.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
context.h Make improvements 2023-09-06 22:48:05 -07:00
copyfile.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
creationdisposition.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
cs.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
ctrlevent.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
cw.h Reduce header complexity 2023-11-28 14:39:42 -08:00
dialogresult.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
errormodeflags.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
event.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
eventtype.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
exceptionhandleractions.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
fileflagandattributes.h Improve ZIP filesystem and change its prefix 2021-08-22 01:11:53 -07:00
fileinfobyhandleclass.h Reduce header complexity 2023-11-28 14:39:42 -08:00
fileinformationclass.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
filelockflags.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
filemapflags.h Add epoll and do more release readiness changes 2020-11-28 12:01:51 -08:00
filemovemethod.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
filesharemode.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
filetype.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
fillattribute.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
findexinfolevels.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
findexsearchops.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
formatmessageflags.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
fsctl.h Decentralize Python native module linkage 2021-09-07 11:40:11 -07:00
fsinformationclass.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
getfileexinfolevels.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
heap.h Get Redbean fork() working on the New Technology 2022-03-20 08:01:14 -07:00
ht.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
idc.h Reduce header complexity 2023-11-28 14:39:42 -08:00
imageauxsymboltype.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
importobjectnametype.h Reduce header complexity 2023-11-28 14:39:42 -08:00
importobjecttype.h Reduce header complexity 2023-11-28 14:39:42 -08:00
io.h Make numerous improvements 2021-09-28 01:52:34 -07:00
ioctl.h Add epoll and do more release readiness changes 2020-11-28 12:01:51 -08:00
jobobjectinfoclass.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
keyaccess.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
keyedevent.h Add epoll and do more release readiness changes 2020-11-28 12:01:51 -08:00
keyinformationclass.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
kwaitreason.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
lang.h Add SSL to redbean 2021-06-24 13:20:50 -07:00
loadlibrarysearch.h Reduce header complexity 2023-11-28 14:39:42 -08:00
lockfile.h Make redbean StoreAsset() work better 2021-05-14 05:44:37 -07:00
mb.h Reduce header complexity 2023-11-28 14:39:42 -08:00
memflags.h Make some new Windows 10 memory APIs available 2024-07-19 22:26:49 -07:00
memoryinformationclass.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
mf.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
mk.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
movefileexflags.h Fix bugs and make improvements 2022-04-20 10:05:34 -07:00
objectinformationclass.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
offerpriority.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
ofn.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
pageflags.h Experiment with supporting Windows Arm64 natively 2024-08-16 06:43:59 -07:00
pdh.h Fix some win32 definitions 2022-03-22 19:54:36 -07:00
processaccess.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
processcreationflags.h Make improvements 2023-09-18 21:04:47 -07:00
processinfoclass.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
procthreadattributes.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
progress.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
pseudoconsole.h Add WIN32 pseudo console APIs 2023-12-10 01:29:25 -08:00
pwr.h Get fork() working on Windows 2020-11-13 03:14:39 -08:00
rdw.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
reggetvalueflags.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
regtype.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
replacefile.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
sc.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
sectioninformationclass.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
sectioninherit.h Reduce header complexity 2023-11-28 14:39:42 -08:00
sectionmapflags.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
securityimpersonationlevel.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
securityinformation.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
signal.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
sio.h Improve synchronization 2022-04-15 15:31:55 -07:00
size.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
startf.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
statfs.h Reduce header complexity 2023-11-28 14:39:42 -08:00
status.h Rerun clang-format on the repo (#1217) 2024-06-15 16:34:48 -04:00
sw.h Get fork() working on Windows 2020-11-13 03:14:39 -08:00
symboliclink.h Fix bugs and make improvements 2022-04-20 10:05:34 -07:00
systeminformationclass.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
th32cs.h Make fixes and improvements 2022-05-19 16:57:49 -07:00
threadaccess.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
threadinfoclass.h Reduce header complexity 2023-11-28 14:39:42 -08:00
threadpriority.h Initial import 2020-06-15 07:18:57 -07:00
threadstate.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
timezoneid.h Implement proper time zone support 2024-05-04 23:06:37 -07:00
tokeninformationclass.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
tokentype.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
tpm.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
valueinformationclass.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
vk.h Make improvements 2023-09-21 07:30:39 -07:00
wa.h Get fork() working on Windows 2020-11-13 03:14:39 -08:00
wait.h Improve Windows Console I/O 2023-08-08 05:44:40 -07:00
wm.h Get fork() working on Windows 2020-11-13 03:14:39 -08:00
ws.h Get fork() working on Windows 2020-11-13 03:14:39 -08:00
wsa.h Improve synchronization 2022-04-15 15:31:55 -07:00
wsaid.h Reduce header complexity 2023-11-28 14:39:42 -08:00
wt.h Fix some win32 definitions 2022-03-22 19:54:36 -07:00