Custom Query (93 matches)
Results (13 - 15 of 93)
Ticket | Resolution | Summary | Owner | Reporter |
---|---|---|---|---|
#13 | fixed | bad template type generation | ||
Description |
in function getType of specialization.py, a space may be missing if last character of tp is '>'. For example: Port('word_in', 'p_my_port', word_t='sc_uint<16>') |
|||
#14 | fixed | Change ElfLoader to BinaryFileLoader | ||
Description |
Once upon a time when binary file loading was easy, only ELF was supported and used with the ElfLoader module. This evolved. Some want (and implemented) COFF support, which means we now have a CoffLoader module, and I know some asked for raw binary support. I assume there wont be long before a.out, MachO, intel hex or <insert your prefed blob here> support is asked for too. In a C++ world, the most straightforward way to implement a loader for anything would be to have a Loader abstract class, and implement classes inheriting the loading functionnality. But as I think we will sooner or later need support for loading more than one binary file in a platform (like one for a DSP and one for a GP-CPU), this may be a problem. So here is my proposal for an evolving API:
That means a BinaryFileLoader doesn't directly parse files, but uses registered handlers for this task. This way, API is always stable, new file types can be added transparently. This change could be done transparently, just making the internals of ElfLoader change. Unfortunately, the module name itself, "ElfLoader", will become misleading. It would be more accurate to have a "BinaryFileLoader", with "BinaryFileSection" and "BinaryFileSymbol" inside it. I propose the following approach
In topcells and platform_desc, and DSX usage, all that needs to be changed is the following sed: s/ElfLoader/Loader/g s/common:elf_loader/common:loader/g
and add a |
|||
#15 | fixed | add computable parameter to soclib-cc | ||
Description |
This patch add the ability to compute a parameter value from a parameter.Reference. At the moment only template construction and value multiplication are implemented. Here is an example: Port('caba:fifo_input', 'p_input', 2,
|