Skip to content

Commit

Permalink
initial Aarch64 support
Browse files Browse the repository at this point in the history
  • Loading branch information
WalterBright committed Aug 30, 2024
1 parent 452ebe2 commit 8caaf13
Show file tree
Hide file tree
Showing 30 changed files with 8,549 additions and 281 deletions.
28 changes: 28 additions & 0 deletions changelog/dmd.AArch64.dd
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Add code generation for AArch64 CPU

Adds the switch `-arm` which causes dmd to emit AArch64 code.

This is a work in progress. It is not a functioning compiler.

Things not implemented:

* inline assembler
* object file generation for mscoff and mach formats
* Elf object file generation does not use AArch64 fixups
* floating point
* vector operations
* op= operators
* block initialization of structs
* pic/pie
* non-trivial lvalues
* stack arguments
* alloca()
* exception handling
* correct DWARF symbolic debug info
* testing on an actual AArch64 computer
* line coverage reports
* stack stomping code
* local stack frames larger than 64Kb
* variadic arguments
* disassembler is incomplete
* ENDBR64
3 changes: 3 additions & 0 deletions compiler/src/.dscanner.ini
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,9 @@ unused_variable_check="-dmd.backend.aarray,\
-dmd.backend.cgelem,\
-dmd.backend.cgobj,\
-dmd.backend.cgsched,\
-dmd.backend.arm.cod1,\
-dmd.backend.arm.cod2,\
-dmd.backend.arm.cod3,\
-dmd.backend.arm.disasmarm,\
-dmd.backend.arm.instr,\
-dmd.backend.x86.cgxmm,\
Expand Down
1 change: 1 addition & 0 deletions compiler/src/build.d
Original file line number Diff line number Diff line change
Expand Up @@ -1623,6 +1623,7 @@ auto sourceFiles()
x86/cod3.d cv8.d dcgcv.d pdata.d util2.d var.d backconfig.d drtlsym.d dwarfeh.d ptrntab.d
dvarstats.d dwarfdbginf.d cgen.d goh.d barray.d cgcse.d elpicpie.d
machobj.d elfobj.d mscoffobj.d filespec.d cgobj.d aarray.d x86/disasm86.d arm/disasmarm.d arm/instr.d
arm/cod1.d arm/cod2.d arm/cod3.d arm/cod4.d
"
),
};
Expand Down
Loading

0 comments on commit 8caaf13

Please sign in to comment.