itcpujas.pas 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. {
  2. Copyright (c) 1998-2002 by Florian Klaempfl
  3. This unit contains the JVM Jasmin instruction tables
  4. This program is free software; you can redistribute it and/or modify
  5. it under the terms of the GNU General Public License as published by
  6. the Free Software Foundation; either version 2 of the License, or
  7. (at your option) any later version.
  8. This program is distributed in the hope that it will be useful,
  9. but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. GNU General Public License for more details.
  12. You should have received a copy of the GNU General Public License
  13. along with this program; if not, write to the Free Software
  14. Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  15. ****************************************************************************
  16. }
  17. unit itcpujas;
  18. {$i fpcdefs.inc}
  19. interface
  20. uses
  21. cpubase,cgbase;
  22. const
  23. jas_op2str : array[tasmop] of string[15] = ('<none>',
  24. 'aaload', 'aastore', 'aconst_null',
  25. 'aload', 'aload_0', 'aload_1', 'aload_2', 'aload_3',
  26. 'anewarray', 'areturn', 'arraylength',
  27. 'astore', 'astore_0', 'astore_1', 'astore_2', 'astore_3',
  28. 'athrow', 'baload', 'bastore', 'bipush', 'breakpoint',
  29. 'caload', 'castore', 'checkcast',
  30. 'd2f', 'd2i', 'd2l', 'dadd', 'daload', 'dastore', 'dcmpg', 'dcmpl',
  31. 'dconst_0', 'dconst_1', 'ddiv',
  32. 'dload', 'dload_0', 'dload_1', 'dload_2', 'dload_3',
  33. 'dmul', 'dneg', 'drem', 'dreturn',
  34. 'dstore', 'dstore_0', 'dstore_1', 'dstore_2', 'dstore_3',
  35. 'dsub',
  36. 'dup', 'dup2', 'dup2_x1', 'dup2_x2', 'dup_x1', 'dup_x2',
  37. 'f2d', 'f2i', 'f2l', 'fadd', 'faload', 'fastore', 'fcmpg', 'fcmpl',
  38. 'fconst_0', 'fconst_1', 'fconst_2', 'fdiv',
  39. 'fload', 'fload_0', 'fload_1', 'fload_2', 'fload_3',
  40. 'fmul', 'fneg', 'frem', 'freturn',
  41. 'fstore', 'fstore_0', 'fstore_1', 'fstore_2', 'fstore_3',
  42. 'fsub',
  43. 'getfield', 'getstatic',
  44. 'goto', 'goto_w',
  45. 'i2b', 'i2c', 'i2d', 'i2f', 'i2l', 'i2s',
  46. 'iadd', 'iaload', 'iand', 'iastore',
  47. 'iconst_m1', 'iconst_0', 'iconst_1', 'iconst_2', 'iconst_3',
  48. 'iconst_4', 'iconst_5',
  49. 'idiv',
  50. 'if_acmpeq', 'if_acmpne', 'if_icmpeq', 'if_icmpge', 'if_icmpgt',
  51. 'if_icmple', 'if_icmplt', 'if_icmpne',
  52. 'ifeq', 'ifge', 'ifgt', 'ifle', 'iflt', 'ifne', 'ifnonnull', 'ifnull',
  53. 'iinc',
  54. 'iload', 'iload_0', 'iload_1', 'iload_2', 'iload_3',
  55. 'imul', 'ineg',
  56. 'instanceof',
  57. 'invokeinterface', 'invokespecial', 'invokestatic', 'invokevirtual',
  58. 'ior', 'irem', 'ireturn', 'ishl', 'ishr',
  59. 'istore', 'istore_0', 'istore_1', 'istore_2', 'istore_3',
  60. 'isub', 'iushr', 'ixor',
  61. 'jsr', 'jsr_w',
  62. 'l2d', 'l2f', 'l2i', 'ladd', 'laload', 'land', 'lastore', 'lcmp',
  63. 'lconst_0', 'lconst_1',
  64. 'ldc', 'ldc2_w', 'ldc_w', 'ldiv',
  65. 'lload', 'lload_0', 'lload_1', 'lload_2', 'lload_3',
  66. 'lmul', 'lneg',
  67. 'lookupswitch',
  68. 'lor', 'lrem',
  69. 'lreturn',
  70. 'lshl', 'lshr',
  71. 'lstore', 'lstore_0', 'lstore_1', 'lstore_2', 'lstore_3',
  72. 'lsub', 'lushr', 'lxor',
  73. 'monitorenter',
  74. 'monitorexit',
  75. 'multianewarray',
  76. 'new',
  77. 'newarray',
  78. 'nop',
  79. 'pop', 'pop2',
  80. 'putfield', 'putstatic',
  81. 'ret', 'return',
  82. 'saload', 'sastore', 'sipush',
  83. 'swap',
  84. 'tableswitch',
  85. 'wide'
  86. );
  87. implementation
  88. end.