Committing many changes - most importantly: Opincaa program and simulator take number lanes, registers, etc from command line
- Committing many changes, most importantly: Opincaa program and simulator accept from command line number of lanes, number of registers, LS mem size, instruction queue length.
- See README_Alex for most recent changes:
- made Opincaa library (runtime assembler and simulator) allow for lanes other types than i16 (short) or u16, such as i32 (int) - added in arch/connex16-hm-generic/include/Architecture.h the typedef of TYPE_ELEMENT, etc.
- verified with Valgrind that the Opincaa program (not also the Opincaa simulator) does NOT have any memory leaks or invalid reads.
- worked on improving the assembly time of Opincaa kernels
- corrected operators that were NOT working properly in simulator
- added ConnexMachine::writeDataToConnexPartial() and ConnexMachine::readDataFromConnexPartial()
- added support for OpincaaLLVM compiler automatic Instruction Selection code generation from Opincaa kernels - see method Kernel::genLLVMISelManualCode()
- added a few new instructions to simulator:
- for debugging: _PRINT_REG, _PRINT_CHARS and the macrodefs PRINTREG(), PRINTCHARS() and PrintDebugMessage(), PrintRegDebug()
- experimental: _SETLC_REDUCE, _BIT_REVERSE and the macrosdefs REPEAT_REDUCE and BITREVERSE
- better indentation for the source files
- various other small corrections
Edited by Alexandru Șușu