Commit Graph

73 Commits

Author SHA1 Message Date
Drew Galbraith 3114ac110a [Glacier] Fix string memory deletion (thanks valgrind)../scripts/qemu.sh 2024-01-17 14:14:33 -08:00
Drew Galbraith fecaa387b0 [Yunq] Add a basic yunq test into libyunq. 2024-01-16 18:58:03 -08:00
Drew Galbraith 9c860dd6a4 [Yunq] Add support for repeated nested fields 2024-01-11 22:09:42 -08:00
Drew Galbraith be392252a4 [Glacier] Add HashMap move semantics. 2024-01-11 18:29:29 -08:00
Drew Galbraith 5eb72da9c8 Move glcr::Array & glcr::ArrayView loops to range-based. 2024-01-11 17:39:55 -08:00
Drew Galbraith 0a57d149b6 [Glacier] Add iterator to Array and ArrayView. 2024-01-11 17:39:31 -08:00
Drew Galbraith 66e7e95855 [Glacier] Factor Vector iterator logic into standalone class. 2024-01-11 17:32:06 -08:00
Drew Galbraith b2354ae341 Move many loops over glcr::Vector to range-based loops. 2024-01-11 17:13:35 -08:00
Drew Galbraith c06d1741f3 [Glacier] Add a vector iterator. 2024-01-11 16:59:10 -08:00
Drew Galbraith 36a09f98c9 [Glacier] Add a vector move contructor test. 2024-01-11 16:50:27 -08:00
Drew Galbraith 5f1053cf17 [Glacier] Add Vector tests with memory check. 2024-01-11 16:42:43 -08:00
Drew Galbraith 09d902dfb5 [Glacier] Add a basic unit testing framework. 2024-01-11 16:09:37 -08:00
Drew Galbraith 5a18d7d559 [Denali] Update HBA pointers to volatile. Store CommandList in arrayview. 2023-12-07 22:41:15 -08:00
Drew Galbraith 66e94ac41b [Glacier] Allow removing from an intrusive list. 2023-12-07 00:18:33 -08:00
Drew Galbraith 8c5dd00443 [Glacier] Add debug methods for HashMap and RefPtr. 2023-12-02 13:25:28 -08:00
Drew Galbraith c209925a3c [Yunq] Return status from client calls. 2023-12-01 10:35:42 -08:00
Drew Galbraith 700f3f94cb [Yunq] Return status in server code. 2023-12-01 10:26:03 -08:00
Drew Galbraith 7d9f9a7ae9 [Yunq] Create libyunq and move parsing code to it. 2023-12-01 09:30:52 -08:00
Drew Galbraith c8e5441c7f [Glacier] Add the ability to remove a character from a StringBuilder. 2023-11-26 13:39:18 -08:00
Drew Galbraith d9a936db09 [Glacier] Fix div0 bug when calling .Contains on empty hashmap. 2023-11-25 11:13:09 -08:00
Drew Galbraith 2a3d384336 [Glacier] Don't move const-refs in hashmap. 2023-11-24 14:10:16 -08:00
Drew Galbraith 9f0e87b51d [Glacier] Add proper string formatting for ErrorCodes. 2023-11-22 12:17:10 -08:00
Drew Galbraith 2efa13ab43 [Glacier] Add a status object to hold error and a message. 2023-11-22 11:34:02 -08:00
Drew Galbraith 28d9e37b87 [Glacier] Move hashmap to a real hash implementation. 2023-11-22 11:19:21 -08:00
Drew Galbraith fe44804dd9 [Teton] Load a font file and write a character to the screen. 2023-11-21 19:14:02 -08:00
Drew Galbraith 96063126cb [Zion] Add task switching for SSE registers and enable them in userspace. 2023-11-21 15:52:17 -08:00
Drew Galbraith 8e827a5dfb [Mammoth] Move all callers of FromCapability to OwnedMemoryObject. 2023-11-19 20:33:15 -08:00
Drew Galbraith 337126cabb [Glacier] Update String to be non-copyable by default. 2023-11-19 19:14:37 -08:00
Drew Galbraith 30b6511467 [Zion] Add a AddressSpaceUnmap syscall to free memory. 2023-11-19 18:55:44 -08:00
Drew Galbraith e668428d9d [Zion] Move Memory Mappings to a dedicated tree impl. 2023-11-19 18:45:13 -08:00
Drew Galbraith 6e227e1cf6 [Zion/Glacier] Add a HashMap to store process capabilities. 2023-11-16 22:12:00 -08:00
Drew Galbraith 28719ac726 [Glacier] Format LinkedList code. 2023-11-15 18:59:12 -08:00
Drew Galbraith 569945f06d [Glacier] Cleanup formatting for Array and Vector. 2023-11-15 18:43:35 -08:00
Drew Galbraith 8e95a11907 [Zion] Move the physical memory manager to the LinkedList class. 2023-11-15 14:44:16 -08:00
Drew Galbraith 792e5155ba [Glacier] When resizing vector use the proper T constructor.
Previously when we static_casted from uint8_t[] to T[] we ended
up not properly initializing the objects in the array. This caused
issues where garbage memory provided by new was treated as a legitimate
object.

Potentially in the future it would make sense to back vectors with
a simple byte array and do memcpys to move objects in and out as
needed.
2023-11-15 12:00:53 -08:00
Drew Galbraith 8d10f19312 [Glacier][Zion] Add a fix sized string builder to allow non-alloc debug. 2023-11-09 09:07:32 -08:00
Drew Galbraith 601f29c324 [Glacier] Add a specific VariableStringBuilder for StrFormat. 2023-11-09 08:52:30 -08:00
Drew Galbraith 69aced2220 [Zion] Move to StrFormat for debug line. 2023-11-05 09:24:09 -08:00
Drew Galbraith 9ba26195d2 [Glacier] Implement delete for binary tree. 2023-11-03 21:59:57 -07:00
Drew Galbraith 98f029ae23 [Glacier] Add a binary tree implementation.
Additionally add an optional class to return found values
in the tree. And a reference container (Ref) similar to
std::reference_wrapper to allow storing references in containers.
2023-11-03 19:46:30 -07:00
Drew Galbraith 26b61db021 Move userspace to a templated StrFormat. 2023-11-03 02:48:21 -07:00
Drew Galbraith d2c77e1d18 [Zion] Move away from storing pointers to IpcMessages. 2023-11-02 23:51:52 -07:00
Drew Galbraith 6feb13d042 [Glacier] Add a basic Array and ArrayView class. 2023-11-02 23:30:44 -07:00
Drew Galbraith f8f839d8e7 [Glacier] Call an object's destructor in an ErrorOr 2023-11-02 22:16:06 -07:00
Drew Galbraith e66706d381 [Glacier] Convert ErrorCode into an Enum. 2023-11-02 21:55:12 -07:00
Drew Galbraith d7050ff19f [VictoriaFalls] Implement Read File. 2023-11-02 20:57:28 -07:00
Drew Galbraith a2e80952c8 [Glacier] Add a StringView class and StrSplit method. 2023-11-02 20:23:28 -07:00
Drew Galbraith b516087922 [Zion] Add the ability to pass capabilities via endpoint call. 2023-10-24 23:32:05 -07:00
Drew Galbraith 9c9fd167cd [Yunq] Clean up codegen issues for client and server. 2023-10-24 18:19:12 -07:00
Drew Galbraith 71e3521b87 [yunq] Add codegen for clients and servers (untested). 2023-10-24 15:57:35 -07:00