From c0de856222b572574915cab9f672fa810adb3745 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ciro=20Santilli=20=E5=85=AD=E5=9B=9B=E4=BA=8B=E4=BB=B6=20?= =?UTF-8?q?=E6=B3=95=E8=BD=AE=E5=8A=9F?= Date: Wed, 14 Nov 2018 10:10:12 +0000 Subject: [PATCH] gdb test: set float --- baremetal/arch/aarch64/regs.S | 10 ++++++++++ baremetal/arch/aarch64/regs.py | 13 +++++++++++++ 2 files changed, 23 insertions(+) diff --git a/baremetal/arch/aarch64/regs.S b/baremetal/arch/aarch64/regs.S index b042e60..49df8cb 100644 --- a/baremetal/arch/aarch64/regs.S +++ b/baremetal/arch/aarch64/regs.S @@ -13,6 +13,16 @@ main: mov x30, #2 /* test-gdb-x30 */ + fmov d0, #1.5 + /* test-gdb-d0 */ + fmov d1, #2.5 + /* test-gdb-d1 */ + + fmov d30, #1.5 + /* test-gdb-d30 */ + fmov d31, #2.5 + /* test-gdb-d31 */ + /* Exit required since we meesed up with x30 which is the lr. */ mov x0, #0 bl exit diff --git a/baremetal/arch/aarch64/regs.py b/baremetal/arch/aarch64/regs.py index 51dc917..ed128e6 100644 --- a/baremetal/arch/aarch64/regs.py +++ b/baremetal/arch/aarch64/regs.py @@ -1,6 +1,7 @@ def test(self): self.sendline('tbreak main') self.sendline('continue') + self.continue_to('x0') self.sendline('set $x0 = 3') self.continue_to('x1') @@ -12,3 +13,15 @@ def test(self): assert self.get_int('$x30') == 3 self.continue_to('x30') assert self.get_int('$x30') == 2 + + self.continue_to('d0') + self.sendline('set $d0 = 3.5') + self.continue_to('d1') + assert self.get_float('$d0') == 3.5 + assert self.get_float('$d1') == 2.5 + self.sendline('set $d31 = 3.5') + self.continue_to('d30') + assert self.get_float('$d30') == 1.5 + assert self.get_float('$d31') == 3.5 + self.continue_to('d31') + assert self.get_float('$d31') == 2.5