From 268a53de823a6750d6256ee1fb1e7707b4b45740 Mon Sep 17 00:00:00 2001 From: Xavier ASUS Date: Fri, 18 Oct 2019 00:31:54 +0200 Subject: sdcc-3.9.0 fork implementing GNU assembler syntax This fork aims to provide better support for stm8-binutils --- support/regression/tests/using.c | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 support/regression/tests/using.c (limited to 'support/regression/tests/using.c') diff --git a/support/regression/tests/using.c b/support/regression/tests/using.c new file mode 100644 index 0000000..30af98f --- /dev/null +++ b/support/regression/tests/using.c @@ -0,0 +1,35 @@ +/** Test register bank allocation for the "using" keyword. + using: no_proto, impl, both +*/ +#include + +#define _{using} + +#if defined (__SDCC_mcs51) && defined (__SDCC_MODEL_SMALL) + + #ifndef _no_proto + #if defined (_both) + void my_isr (void) __interrupt (1) __using (1); + #else + void my_isr (void) __interrupt (1); + #endif + #endif + + __data char array[8]; + + void + my_isr (void) __interrupt (1) __using (1) + { + array[array[0]] = 1; //generate some register pressure + } + +#endif + +void +testUsing (void) +{ +#if defined (__SDCC_mcs51) && defined (__SDCC_MODEL_SMALL) + ASSERT ((unsigned char)(&array[0]) >= 0x10); + ASSERT ((unsigned char)&__numTests >= 0x10); +#endif +} -- cgit v1.2.3