tb0072.pp 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. { Old file: tbs0079.pp }
  2. { Shows problems with stackframe with assembler keyword OK 0.99.1 (CEC) }
  3. { This test does not really
  4. give a good result
  5. because you need to look into
  6. the assembler to see if there is an error or not :( PM }
  7. {$ifdef CPUI386}
  8. {$asmmode intel}
  9. {$endif CPUI386}
  10. procedure nothing(x,y: longint);assembler;
  11. {$ifdef CPUI386}
  12. {$define SUPPORTED}
  13. asm
  14. mov eax,x
  15. mov ebx,y
  16. end;
  17. {$endif CPUI386}
  18. {$ifdef CPU68K}
  19. {$define SUPPORTED}
  20. asm
  21. move.l x,d0
  22. move.l y,d1
  23. end;
  24. {$endif CPU68K}
  25. {$ifdef CPUPOWERPC}
  26. {$define SUPPORTED}
  27. asm
  28. mr r5,x
  29. mr r6,y
  30. end;
  31. {$endif CPUPOWERPC}
  32. {$ifdef CPUARM}
  33. {$define SUPPORTED}
  34. asm
  35. mov r2,x
  36. mov r3,y
  37. end;
  38. {$endif CPUARM}
  39. {$ifdef CPUX86_64}
  40. {$define SUPPORTED}
  41. asm
  42. movl x,%eax
  43. movl y,%ecx
  44. end;
  45. {$endif CPUX86_64}
  46. {$ifdef CPUSPARC}
  47. {$define SUPPORTED}
  48. asm
  49. mov x,%i0
  50. mov y,%i1
  51. end;
  52. {$endif CPUSPARC}
  53. {$ifdef CPUMIPS}
  54. {$define SUPPORTED}
  55. asm
  56. lw $t1,x
  57. lw $t2,y
  58. end;
  59. {$endif CPUMIPS}
  60. {$ifndef SUPPORTED}
  61. asm
  62. end;
  63. {$endif ndef SUPPORTED}
  64. {procedure nothing(x,y: longint);
  65. begin
  66. asm
  67. mov eax,x
  68. mov ebx,y
  69. end;
  70. end; }
  71. Begin
  72. {$ifndef SUPPORTED}
  73. Writeln('The CPU of this test is not supported by test tbs/tb0072.pp');
  74. Writeln('Please add assembler code corresponding to this CPU to source');
  75. halt(1);
  76. {$endif ndef SUPPORTED}
  77. end.