bug0043.pp 680 B

1234567891011121314151617181920212223242526272829303132
  1. { THE OUTPUT is incorrect but the }
  2. { parsing is correct. }
  3. { under nasm output only. }
  4. { works correctly under tasm/gas }
  5. { other problems occur with other }
  6. { things in math.inc }
  7. { pp -TDOS -Ratt -Anasm bug0043.pp }
  8. procedure frac;
  9. begin
  10. asm
  11. subl $16,%esp
  12. fnstcw -4(%ebp)
  13. fwait { unknown instruction }
  14. movw -4(%ebp),%cx
  15. orw $0x0c3f,%cx
  16. movw %cx,-8(%ebp)
  17. fldcw -8(%ebp)
  18. fwait { unknown instruction }
  19. fldl 8(%ebp)
  20. frndint
  21. fsubl 8(%ebp)
  22. fabsl
  23. fclex
  24. fldcw -4(%ebp)
  25. leave
  26. ret $8
  27. end ['ECX'];
  28. end;
  29. Begin
  30. end.