20eeecb3e1
Run CI on push
continuous-integration/drone/push Build is passing
2022-12-05 19:16:58 +01:00
4ec6442ba0
Add build status badge
2022-12-05 19:16:11 +01:00
2677fca5b7
Remove formatting step
2022-12-05 19:09:33 +01:00
f767d98037
Please work
2022-12-05 19:07:01 +01:00
adf6844d49
Update drone.yml
2022-12-05 19:03:06 +01:00
999d90d588
Update check-formatting.sh
2022-12-05 19:02:23 +01:00
62e4ed824d
Update drone.yml
2022-12-05 18:50:01 +01:00
ac2da14319
Update config for CI
2022-12-05 18:48:40 +01:00
bd7b9ad237
Update drone.yml
2022-12-05 18:44:44 +01:00
ca0e47b8e4
Update drone.yml
2022-12-05 18:26:31 +01:00
744d39c27b
Update drone.yml
2022-12-05 18:24:34 +01:00
0c9b822304
Update drone.yml
2022-12-05 18:22:52 +01:00
f21d153077
Update drone.yml
2022-12-05 18:21:30 +01:00
82eda5d6aa
Update drone.yml
2022-12-05 18:19:55 +01:00
d8a3d74779
Actual steps
2022-12-05 18:13:12 +01:00
08b4c078dd
Will it work now?
2022-12-05 18:11:22 +01:00
8f3e80ae47
Try to get it right?
2022-12-05 18:08:50 +01:00
4074835185
Update drone.yml
2022-12-05 18:06:30 +01:00
e6c56172d3
Try adding a drone.yml
2022-12-05 18:00:05 +01:00
95d969ed25
Add message to inform of prebuilt toolchains
2022-12-05 17:48:26 +01:00
762131a425
Make more constexpr
2022-12-05 16:43:52 +01:00
2eaa458555
Remove release_value call
2022-12-05 16:41:39 +01:00
1e3706ac01
Make ARCH_PAGE_SIZE and ARCH_TIMER_FREQ known at compile-time
2022-12-05 16:36:41 +01:00
4f183958e3
General constness + [[gnu::packed]] everywhere
2022-12-05 16:13:38 +01:00
a63a8b32b5
Make new and delete noexcept and return nullptr on failure
2022-12-05 13:45:32 +01:00
891320f7d3
Heap: Make const
2022-12-05 13:41:58 +01:00
7cc139c3f7
Make expect and check use unlikely
2022-12-05 13:35:33 +01:00
ea7893ba71
Make CHECK_PAGE_ALIGNED use expect() instead of check()
2022-12-05 13:28:36 +01:00
55a30ac487
Make CHECK_PAGE_ALIGNED use expect() instead of check()
2022-12-05 13:26:50 +01:00
bfd4647467
Rename largest_free -> largest_free_entry
2022-12-05 13:26:09 +01:00
d9fc50f1ea
Make MemoryMapEntry have private fields with public getters
2022-12-05 13:23:01 +01:00
ec1354fc8d
const in TextConsole
2022-12-05 13:06:12 +01:00
58ecf11424
Make all refs to the bootboot structure const
2022-12-05 13:04:01 +01:00
54ce511f1d
More const
2022-12-05 13:00:41 +01:00
792642dd6f
MORE CONST
2022-12-05 12:58:59 +01:00
86a12f301e
Make value_byte a helper
2022-12-05 12:53:16 +01:00
004e13a5f3
Make bitmap methods const if not modifying the bitmap
2022-12-05 12:50:30 +01:00
3b77ba6b04
EVERYTHING IS CONSTANT IN THIS UNIVERSE
...
Here's one advantage of Rust over C++:
Immutability by default. In Rust, you have to mark a variable as mutable, whereas in C++ you have to mark it as immutable.
What's the problem here? Usually, most variables don't need mutability. Thus we end up with const all over the place.
2022-12-05 12:49:01 +01:00
af96db3641
Remove bootboot declaration from MemoryManager now that it's MemoryMapIterator's job to walk the mmap
2022-12-04 15:56:25 +01:00
77e64d74a0
Remove unused header
2022-12-04 15:55:52 +01:00
0a296413e6
It's not worth it aborting when failing to determine CPU name
2022-12-04 15:55:12 +01:00
766804b3a0
Use get_blocks_from_size instead of +1
2022-12-04 15:52:56 +01:00
0d10c98477
SImplify init_physical_frame_allocator() even more
2022-12-04 15:50:21 +01:00
5f6c48bd12
Use a friendlier way of iterating over the memory map
2022-12-04 15:45:13 +01:00
5aa2d1fa18
Add a Bitmap class to provide common functionality and use that in the MemoryManager
2022-12-04 15:14:07 +01:00
ee76bdf84d
Add sanity check
2022-12-04 13:41:14 +01:00
bde3d55eb2
Remove escape from comment
2022-12-04 13:38:48 +01:00
f8120e01c0
Panic in delete as well
2022-12-04 12:58:37 +01:00
22019ac6b2
Print the error instead
2022-12-04 12:57:43 +01:00
96b32f5a93
Please use make<T> and destroy<T> instead of new and delete
...
Those are there only for common stuff (in the Luna library) that needs an environment-agnostic way of allocating memory.
new and delete are standard, thus we should use those.
2022-12-04 12:55:32 +01:00