diff options
| author | Xavier ASUS <xavi92psx@gmail.com> | 2019-10-18 00:31:54 +0200 |
|---|---|---|
| committer | Xavier ASUS <xavi92psx@gmail.com> | 2019-10-18 00:31:54 +0200 |
| commit | 268a53de823a6750d6256ee1fb1e7707b4b45740 (patch) | |
| tree | 42c1799a9a82b2f7d9790ee9fe181d72a7274751 /src/regression/inline.c | |
| download | sdcc-gas-268a53de823a6750d6256ee1fb1e7707b4b45740.tar.gz | |
sdcc-3.9.0 fork implementing GNU assembler syntax
This fork aims to provide better support for stm8-binutils
Diffstat (limited to 'src/regression/inline.c')
| -rw-r--r-- | src/regression/inline.c | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/src/regression/inline.c b/src/regression/inline.c new file mode 100644 index 0000000..bb2cb3b --- /dev/null +++ b/src/regression/inline.c @@ -0,0 +1,58 @@ +#include "gpsim_assert.h" +#include "picregs.h" + +#pragma preproc_asm - + +unsigned char failures=0; + +unsigned char test_tris=0; + +void +done() +{ + ASSERT(MANGLE(failures) == 0); + PASSED(); +} + +void +delay_1ms(void) +{ + unsigned char cnt1m = 2; + unsigned char cnt500u = 249; + + do { + do { + __asm + nop + nop + __endasm; + } while (--cnt500u > 0); + } while (--cnt1m > 0); +} + + +void main(void) +{ + TRISA = 0x0f; + +#if defined(__pic14) + __asm + BSF STATUS,RP0 + MOVF TRISA,W + BCF STATUS,RP0 + MOVWF _test_tris + __endasm; +#else // !defined(__pic14) + __asm + BANKSEL _TRISA + MOVF _TRISA,W + BANKSEL _test_tris + MOVWF _test_tris + __endasm; +#endif // !defined(__pic14) + + if(test_tris != 0x0f) + failures++; + + done(); +} |
