#
bdd32ffa |
|
28-Jan-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
templates,rpc-connector: Nitpick generation style Tweak the newline character generation in the rpc templates to make the outputted code more readable. It is expected that the output files are formatted by clang-format as part of the build process.
|
#
792a1449 |
|
28-Jan-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
templates,rpc-connector-common: Remove c_symbol() Use more readable symbol names than those generated by c_symbol().
|
#
5dc6c9f2 |
|
28-Jan-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
templates,marshal: Pass buf and size in function Allow the target buffer to marshal data into to be passed into the marshal functions. This will make it easier to support buffers that aren't the IPC buffer or a global buffer.
|
#
49c0e1cf |
|
28-Jan-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
templates, marshal: Remove dead macro parameters The `instance`, `interface` and `error_handler` arguments are no longer used by the marshalling template macros as they are used by the C preprocessor macros instead.
|
#
b4252287 |
|
28-Jan-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
templates: Convert repeated marshal code to macros Add camkes/marshal_macros.h which provides a series of marshal and unmarshal macros for different RPC parameter types (array, string array, string, regular) into a fixed size buffer. Refactor the marshal.c template code to use the macros. This refactor doesn't change any behavior.
|
#
cecf8a37 |
|
28-Jan-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
templates: Remove TLS usage from rpc connectors The TLS macro implementation was used to manually manage thread local variables in the .data and .bss sections instead of on the stack. This mechanism was used for glue code verification and shouldn't be used in connectors that are free to use the stack.
|
#
f03df4ec |
|
19-Jan-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
Remove array_check implementation Lot of complexity to provide an error/warning for something that the compiler now won't let you do.
|
#
58762359 |
|
17-Jan-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
Remove maybe_perform_optimized_empty_call Also remove related configuration options for this optimization This optimisation is so narrow that it is never used.
|
#
0e3b19c2 |
|
31-Jul-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Fix namespace typo
|
#
0a994d4e |
|
17-Jul-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Rewrite seL4RPCCall to use an abstract 'connector' This is a substantial refactor that is meant to make it easier to change how different templated connections work without having to duplicate a template and change it. In theory the seL4RPCCall template could be instantiated with a different 'connector' to give it different behaviours, although the mechanism to change the used connector is not done in this change. Whilst intended to be a semantics preserving refactor there are some minor changes. Some code gets trivial changes of being split into multiple statements or moved into different blocks. The largest change is some error handling is changed to be 'less helpful' due to difficulties in getting precise information to the point where the error code now has to be generated and having nice abstractions.
|
#
f1347346 |
|
18-Jul-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Remove size that is not used
|
#
ad5d6e8f |
|
17-Jul-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Move call-unmarshal-outputs into helpers/marshal.c as macro
|
#
c0f9e6cb |
|
17-Jul-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Move unmarshal-outputs into helpers.marshal.c as macro
|
#
2e5d81ca |
|
17-Jul-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Deduplicate logic for showing input parameter lists
|
#
b958c5cb |
|
17-Jul-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Use 'show_type' macro for string types Handling the 'string' case of a type separately is not needed as show_type already handles this case in the expected way.
|
#
d33fb9bb |
|
16-Jul-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Move input marshalling into macros
|
#
deab6ded |
|
16-Jul-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Move thread local generation into macros
|
#
e4bd3dda |
|
16-Jul-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Move array typedef check generation into macros
|
#
9bc857aa |
|
16-Jul-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Make error-handler.c a macro Moves the 'error-handler.c' template logic into a 'helpers' template as a macro with arguments, instead of a template file that is 'include'd and relies on peeking at global variables to simulate argument passing.
|
#
8b2ec3e6 |
|
20-Jun-2017 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
Fix licenses
|
#
5f025fda |
|
13-Feb-2017 |
Kofi Doku Atuah <kofidoku.atuah@data61.csiro.au> |
CAMKES-560: Add support for new-rt APIs to next Replace instances of seL4_Recv, seL4_SignalRecv, seL4_Send, with RT-compliant versions that operate on reply object caps.
|
#
82572448 |
|
26-Jan-2017 |
Stephen Sherratt <Stephen.Sherratt@data61.csiro.au> |
Error checking on badge attribute in rpc template
|
#
8eef4381 |
|
02-Jan-2017 |
Stephen Sherratt <Stephen.Sherratt@data61.csiro.au> |
Permit rpc ep badges being specified as strings
|
#
53665bfe |
|
23-Jun-2016 |
Stephen Sherratt <Stephen.Sherratt@nicta.com.au> |
Removed call-leave-reply-cap options These flags were used to tell camkes to only protect reply caps right before they were about to be overwritten, rather than protecting reply caps unconditionally. It is now redundant, as this is the only behaviour in camkes next.
|
#
73795ea0 |
|
06-Jun-2016 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Remove unused marshalling helpers. This commit cherry-picks 88ca414746834fe03037b9ae18ba500d32fef91b from ssh://github.inside.nicta.com.au/mfernandez/project.
|
#
8dff1c71 |
|
06-Jun-2016 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
s/unsigned int/unsigned; Why use 12 characters when 8 will do? This commit cherry-picks 6f50d5e0ebf0d97665edc77a23c5f280d9dd8e6d from ssh://github.inside.nicta.com.au/mfernandez/project.
|
#
180e4dda |
|
10-Dec-2015 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Remove marshalling helpers. This commit removes the following API functions: * `camkes_marshal` * `camkes_marshal_string` * `camkes_unmarshal` * `camkes_unmarshal_string` None of these functions are used in template code any more.
|
#
bacfebce |
|
27-Oct-2015 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Refactored parser init commit.
|
#
90edb92b |
|
13-Jul-2015 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Be more permissive with string parameters in some templates. This commit allows unicode in a couple of places, where they were not allowed previously. Support is still lacking currently, but upcoming changes to the parser introduce full unicode support here.
|
#
8bcc6063 |
|
02-Jun-2015 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Stop defining `_POSIX_SOURCE`. I think this was just legacy stuff as we never actually call `stpcpy` currently.
|
#
0156094a |
|
31-May-2015 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Remove support for arrays as return types. This commit effectively backs out part of 20f4072ac25eeb707f4e17c4a26501d4b59308ee. The motivation for removing support for this is that array return types are not representable in the upcoming refactored AST. Note that there is currently no grammar for describing an array return type anyway, so no end users are relying on this support. The only way to use an array return type was to programmatically construct a method with one and I am not currently aware of any uses of this.
|
#
5c756a69 |
|
20-May-2015 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Fix comment typo.
|
#
df8b6ad9 |
|
20-May-2015 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
seL4RPCCall: Simplify syscall optimisation judgement. Both checks that guarded the syscall specialisation in seL4RPCCall have been tightened previously and the inner one now subsumed the outer one. To simplify it, this commit reduces it to a single check. Should have no user-visible effect, though note that this optimisation almost never comes into play anyway.
|
#
b79167a9 |
|
20-May-2015 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Templates: Use explicit comparison when testing against `None`. This is slightly clearer and safer.
|
#
4ff636b6 |
|
20-May-2015 |
Adrian Danis <Adrian.Danis@nicta.com.au> |
Refactor RPCCall template Move most of the functionality of the RPCCall template into common stubs that are included into the existing RPCCall template. These common stubs can eventually be refactored and used by the other existing RPC templates as well as other custom RPC templates
|