https://issues.dlang.org/show_bug.cgi?id=15242
Issue ID: 15242
Summary: Allow version or static if blocks in asm blocks
Product: D
Version: D2
Hardware: x86_64
OS: Windows
Status: NEW
Severity: enhancement
Priority: P1
Component: dmd
Assignee: [email protected]
Reporter: [email protected]
That would allow to write x86 asm blocks that work both in 32-bit and 64-bit
easily.
Porting asm from 32-bit to 64-bit often involved few modifications.
- general register changed when storing pointers (EAX => RAX)
- movsxd for the occasional sign-extension
- changing offsets
Currently, one is forced to duplicate instructions and keep them in sync.
--