Here is try #3, I've pasted the commit message below as it tells the story, let me know what you think:libsel4 with no libc dependency.The primary changes are introducing sel4_types.h and removing std* typesplus porting assert and printf code from the kernel to libsel4. All ofthis means the code within libsel4 does not overload any typical libcentities. So now libsel4 uses types like seL4_Uint32 ... instead ofuint32_t. And printf is now seL4_Printf and assert is seL4_Assert ....I'm also using sel4_ prefixes for various files as I felt it was moreconsistent with the names of the entities within the files.The only new library is libsel4_benchmark and since it consists of justsel4_benchmark.h we might want to move that back into libsel4. I wouldhave liked to move out libsel4_assert, libsel4_printf and libsel4_putcharbut since asserts are used by low level generated code I couldn't come upwith a good way of doing that.Finally, the only file modified that effects kernel code iskernel/tools/bitfield_gen.py. It needed to be modified as it generatesfiles for both kernel and user space. And for user space the generated code(types_gen.h) needed to use the new types and asserts. The changes shouldnot change what is generated for the kernel and I did a comparison ofkernel_final.{c|s} before and after my change and the only differenceswere time stamps-- WinkOn Mon, Jun 29, 2015 at 7:07 PM Wink Saville <wink@saville.com> wrote:Will do.
On Mon, Jun 29, 2015, 7:05 PM Anna Lyons <Anna.Lyons@nicta.com.au> wrote:
Hi,
>
> Currently there is at least one known problem, I modified
> bitfield_gen.py so types_gen.h has no asserts since at the moment the
> kernel uses assert and userspace is libsel4_assert. We could either do
> something like I've done and remove them or change the kernel to use
> libsel4_assert or something else.
>
The asserts are really important to avoid horrible bugs when using
functions created by the bitfield generator, so if we go ahead with this
let's make sure they survive in some form.
Cheers,
Anna.
________________________________
The information in this e-mail may be confidential and subject to legal professional privilege and/or copyright. National ICT Australia Limited accepts no liability for any damage caused by this email or its attachments.
_______________________________________________
Devel mailing list
Devel@sel4.systems
https://sel4.systems/lists/listinfo/devel