cpupi.pas 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. {
  2. $Id$
  3. Copyright (c) 2002 by Florian Klaempfl
  4. This unit contains the CPU specific part of tprocinfo
  5. This program is free software; you can redistribute it and/or modify
  6. it under the terms of the GNU General Public License as published by
  7. the Free Software Foundation; either version 2 of the License, or
  8. (at your option) any later version.
  9. This program is distributed in the hope that it will be useful,
  10. but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. GNU General Public License for more details.
  13. You should have received a copy of the GNU General Public License
  14. along with this program; if not, write to the Free Software
  15. Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  16. ****************************************************************************
  17. }
  18. { This unit contains the CPU specific part of tprocinfo. }
  19. unit cpupi;
  20. {$i fpcdefs.inc}
  21. interface
  22. uses
  23. cgbase;
  24. type
  25. ti386procinfo = class(tprocinfo)
  26. procedure allocate_interrupt_stackframe;override;
  27. end;
  28. implementation
  29. procedure ti386procinfo.allocate_interrupt_stackframe;
  30. begin
  31. { we push Flags and CS as long
  32. to cope with the IRETD
  33. and we save 6 register + 4 selectors }
  34. inc(procdef.parast.datasize,8+6*4+4*2);
  35. end;
  36. begin
  37. cprocinfo:=ti386procinfo;
  38. end.
  39. {
  40. $Log$
  41. Revision 1.3 2003-04-27 11:21:35 peter
  42. * aktprocdef renamed to current_procdef
  43. * procinfo renamed to current_procinfo
  44. * procinfo will now be stored in current_module so it can be
  45. cleaned up properly
  46. * gen_main_procsym changed to create_main_proc and release_main_proc
  47. to also generate a tprocinfo structure
  48. * fixed unit implicit initfinal
  49. Revision 1.2 2003/04/27 07:48:05 peter
  50. * updated for removed lexlevel
  51. Revision 1.1 2002/08/17 09:23:44 florian
  52. * first part of procinfo rewrite
  53. }