Revision 775435

Go back to digest for 17th February 2008

Features in KDE Base

Maks Orlovich committed changes in /branches/work/kjs-frostbyte/kjs:

- Rework conversion descriptors again. New version gives me nice inline conversions, which are used both for immediate conversion adjustment and for tiles. Autogenerated conversion code for inline arguments.

- Rework the cost model to make sense. Inline conversions inside tiles have cost, at codegen are free, and register/outline conversions have a different cost. Also, give impls a base cost --- since different impls of the same operation may cost differently; a cost of a tile is hence the base cost of the impl plus the cost of any conversions inlined into tile. This is stashed inside the opcode descriptor, of course.

- Start sketching out the actual code generator, and stop, realizing I still need register management infrastructure. Not sure what the mostrobust way of doing it yet.

File Changes

Added 2 files
  • /branches/work/kjs-frostbyte/kjs
  •   /nodes2bytecode.cpp
  •   /nodes2bytecode.h
Modified 12 files
  • /branches/work/kjs-frostbyte/kjs
  •   /CMakeLists.txt
  •   /nodes.cpp
  •   /nodes.h
  •   /bytecode/codes.def
  •   /bytecode/machine.cpp.in
  •   /bytecode/opcodes.cpp.in
  •   /bytecode/opcodes.h.in
  •   /bytecode/generator/lexer.cpp
  •   /bytecode/generator/parser.cpp
  •   /bytecode/generator/parser.h
  •   /bytecode/generator/tablebuilder.cpp
  •   /bytecode/generator/tablebuilder.h
14 files changed in total