]> git.sur5r.net Git - freertos/blobdiff - Demo/MSP430X_MSP430F5438_IAR/RegTest.s43
Start to adjust to support both small and large memory models in the MSP430X IAR...
[freertos] / Demo / MSP430X_MSP430F5438_IAR / RegTest.s43
index 98478adc668ae3a08b61723195a1f4c01df6d88a..bbebf160452dc6d25ca5b562af01f8b682a16eb8 100644 (file)
@@ -52,6 +52,7 @@
 */\r
 #include "msp430.h"\r
 #include "FreeRTOSConfig.h"\r
+#include "data_model.h"\r
 \r
 /*\r
  * The definition of the "register test" tasks, as described at the top of\r
 vRegTest1Task:\r
 \r
        /* Fill each general purpose register with a known value. */\r
-       movx.a  #0x44444, r4\r
-       movx.a  #0x55555, r5\r
-       movx.a  #0x66666, r6\r
-       movx.a  #0x77777, r7\r
-       movx.a  #0x88888, r8\r
-       movx.a  #0x99999, r9\r
-       movx.a  #0xaaaaa, r10\r
-       movx.a  #0xbbbbb, r11\r
-       movx.a  #0xccccc, r12\r
-       movx.a  #0xddddd, r13\r
-       movx.a  #0xeeeee, r14\r
-       movx.a  #0xfffff, r15\r
+       mov_x   #0x4444, r4\r
+       mov_x   #0x5555, r5\r
+       mov_x   #0x6666, r6\r
+       mov_x   #0x7777, r7\r
+       mov_x   #0x8888, r8\r
+       mov_x   #0x9999, r9\r
+       mov_x   #0xaaaa, r10\r
+       mov_x   #0xbbbb, r11\r
+       mov_x   #0xcccc, r12\r
+       mov_x   #0xdddd, r13\r
+       mov_x   #0xeeee, r14\r
+       mov_x   #0xffff, r15\r
        \r
 prvRegTest1Loop:\r
 \r
        /* Test each general purpose register to check that it still contains the\r
        expected known value, jumping to vRegTest1Error if any register contains\r
        an unexpected value. */\r
-       cmpx.a  #0x44444, r4\r
+       cmp_x   #0x4444, r4\r
        jne             vRegTest1Error\r
-       cmpx.a  #0x55555, r5\r
+       cmp_x   #0x5555, r5\r
        jne             vRegTest1Error\r
-       cmpx.a  #0x66666, r6\r
+       cmp_x   #0x6666, r6\r
        jne             vRegTest1Error\r
-       cmpx.a  #0x77777, r7\r
+       cmp_x   #0x7777, r7\r
        jne             vRegTest1Error\r
-       cmpx.a  #0x88888, r8\r
+       cmp_x   #0x8888, r8\r
        jne             vRegTest1Error\r
-       cmpx.a  #0x99999, r9\r
+       cmp_x   #0x9999, r9\r
        jne             vRegTest1Error\r
-       cmpx.a  #0xaaaaa, r10\r
+       cmp_x   #0xaaaa, r10\r
        jne             vRegTest1Error\r
-       cmpx.a  #0xbbbbb, r11\r
+       cmp_x   #0xbbbb, r11\r
        jne             vRegTest1Error\r
-       cmpx.a  #0xccccc, r12\r
+       cmp_x   #0xcccc, r12\r
        jne             vRegTest1Error\r
-       cmpx.a  #0xddddd, r13\r
+       cmp_x   #0xdddd, r13\r
        jne             vRegTest1Error\r
-       cmpx.a  #0xeeeee, r14\r
+       cmp_x   #0xeeee, r14\r
        jne             vRegTest1Error\r
-       cmpx.a  #0xfffff, r15\r
+       cmp_x   #0xffff, r15\r
        jne             vRegTest1Error\r
        \r
        /* This task is still running without jumping to vRegTest1Error, so increment\r
@@ -134,44 +135,44 @@ vRegTest1Error:
 different values in its registers. */\r
 vRegTest2Task:\r
 \r
-       movx.a  #0x14441, r4\r
-       movx.a  #0x15551, r5\r
-       movx.a  #0x16661, r6\r
-       movx.a  #0x17771, r7\r
-       movx.a  #0x18881, r8\r
-       movx.a  #0x19991, r9\r
-       movx.a  #0x1aaa1, r10\r
-       movx.a  #0x1bbb1, r11\r
-       movx.a  #0x1ccc1, r12\r
-       movx.a  #0x1ddd1, r13\r
-       movx.a  #0x1eee1, r14\r
-       movx.a  #0x1fff1, r15\r
+       mov_x   #0x4441, r4\r
+       mov_x   #0x5551, r5\r
+       mov_x   #0x6661, r6\r
+       mov_x   #0x7771, r7\r
+       mov_x   #0x8881, r8\r
+       mov_x   #0x9991, r9\r
+       mov_x   #0xaaa1, r10\r
+       mov_x   #0xbbb1, r11\r
+       mov_x   #0xccc1, r12\r
+       mov_x   #0xddd1, r13\r
+       mov_x   #0xeee1, r14\r
+       mov_x   #0xfff1, r15\r
        \r
 prvRegTest2Loop:\r
 \r
-       cmpx.a  #0x14441, r4\r
+       cmp_x   #0x4441, r4\r
        jne             vRegTest2Error\r
-       cmpx.a  #0x15551, r5\r
+       cmp_x   #0x5551, r5\r
        jne             vRegTest2Error\r
-       cmpx.a  #0x16661, r6\r
+       cmp_x   #0x6661, r6\r
        jne             vRegTest2Error\r
-       cmpx.a  #0x17771, r7\r
+       cmp_x   #0x7771, r7\r
        jne             vRegTest2Error\r
-       cmpx.a  #0x18881, r8\r
+       cmp_x   #0x8881, r8\r
        jne             vRegTest2Error\r
-       cmpx.a  #0x19991, r9\r
+       cmp_x   #0x9991, r9\r
        jne             vRegTest2Error\r
-       cmpx.a  #0x1aaa1, r10\r
+       cmp_x   #0xaaa1, r10\r
        jne             vRegTest2Error\r
-       cmpx.a  #0x1bbb1, r11\r
+       cmp_x   #0xbbb1, r11\r
        jne             vRegTest2Error\r
-       cmpx.a  #0x1ccc1, r12\r
+       cmp_x   #0xccc1, r12\r
        jne             vRegTest2Error\r
-       cmpx.a  #0x1ddd1, r13\r
+       cmp_x   #0xddd1, r13\r
        jne             vRegTest2Error\r
-       cmpx.a  #0x1eee1, r14\r
+       cmp_x   #0xeee1, r14\r
        jne             vRegTest2Error\r
-       cmpx.a  #0x1fff1, r15\r
+       cmp_x   #0xfff1, r15\r
        jne             vRegTest2Error\r
        \r
        /* Also perform a manual yield, just to increase the scope of the test. */\r