tw37130.pp 701 B

1234567891011121314151617181920212223242526
  1. { %cpu=xtensa }
  2. { %norun }
  3. unit mac16test;
  4. interface
  5. procedure testMAC16;
  6. implementation
  7. procedure testMAC16; assembler;
  8. asm
  9. mula.aa.ll a3, a4
  10. mula.ad.ll a3, m2 // my in [m2, m3]
  11. mula.da.ll m1, a3 // mx in [m0, m1]
  12. mula.dd.ll m1, m3 // mx in [m0, m1], my in [m2, m3]
  13. mula.da.ll.lddec m1, a5, m3, a6 // mw in [m0..m3], mx in [m0, m1], my in [m2, m3]
  14. mula.dd.ll.ldinc m3, a5, m0, m2 // mw in [m0..m3], mx in [m0, m1], my in [m2, m3]
  15. muls.aa.hh a4, a5
  16. muls.ad.hl a4, m2 // my in [m2, m3]
  17. muls.da.lh m0, a4 // mx in [m0, m1]
  18. muls.dd.hl m0, m2 // mx in [m0, m1], my in [m2, m3]
  19. end;
  20. end.