Skip to content

Commit 5dcd78a

Browse files
bschommerxavierleroy
authored andcommitted
Added dwarf register numbers for aarch64
1 parent 50b6f68 commit 5dcd78a

File tree

1 file changed

+18
-3
lines changed

1 file changed

+18
-3
lines changed

aarch64/Asmexpand.ml

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -408,13 +408,28 @@ let expand_instruction instr =
408408
| _ ->
409409
emit instr
410410

411-
let int_reg_to_dwarf r = 0 (* TODO *)
412-
413-
let float_reg_to_dwarf r = 0 (* TODO *)
411+
let int_reg_to_dwarf = function
412+
| X0 -> 0 | X1 -> 1 | X2 -> 2 | X3 -> 3 | X4 -> 4
413+
| X5 -> 5 | X6 -> 6 | X7 -> 7 | X8 -> 8 | X9 -> 9
414+
| X10 -> 10 | X11 -> 11 | X12 -> 12 | X13 -> 13 | X14 -> 14
415+
| X15 -> 15 | X16 -> 16 | X17 -> 17 | X18 -> 18 | X19 -> 19
416+
| X20 -> 20 | X21 -> 21 | X22 -> 22 | X23 -> 23 | X24 -> 24
417+
| X25 -> 25 | X26 -> 26 | X27 -> 27 | X28 -> 28 | X29 -> 29
418+
| X30 -> 30
419+
420+
let float_reg_to_dwarf = function
421+
| D0 -> 64 | D1 -> 65 | D2 -> 66 | D3 -> 67 | D4 -> 68
422+
| D5 -> 69 | D6 -> 70 | D7 -> 71 | D8 -> 72 | D9 -> 73
423+
| D10 -> 74 | D11 -> 75 | D12 -> 76 | D13 -> 77 | D14 -> 78
424+
| D15 -> 79 | D16 -> 80 | D17 -> 81 | D18 -> 82 | D19 -> 83
425+
| D20 -> 84 | D21 -> 85 | D22 -> 86 | D23 -> 87 | D24 -> 88
426+
| D25 -> 89 | D26 -> 90 | D27 -> 91 | D28 -> 92 | D29 -> 93
427+
| D30 -> 94 | D31 -> 95
414428

415429
let preg_to_dwarf = function
416430
| IR r -> int_reg_to_dwarf r
417431
| FR r -> float_reg_to_dwarf r
432+
| SP -> 31
418433
| _ -> assert false
419434

420435
let expand_function id fn =

0 commit comments

Comments
 (0)