Commit Graph

135 Commits

Author SHA1 Message Date
0898fad4fc start moving algorithm in 2019-11-18 00:00:00 +00:00
8244e0529b atomic: analyze further 2019-11-17 00:00:00 +00:00
d82e47e9d2 cpp atomic: define to 1 which is saner 2019-11-15 00:00:00 +00:00
175b0e3d50 bst_vs_heap_vs_hashmap: create nicer version with separated benchmarks
One data structure per executable, and gem5 instrumented versions in
separate executables.

Create the allowed_emulators path_properties property.

TODO: wire it up to benchmark result generation and remove the old version.
2019-11-15 00:00:00 +00:00
c14d5dfeba bst_vs_heap_vs_hashmap: configurable seed, make code a bit nicer 2019-11-15 00:00:00 +00:00
627623157c atomic.cpp: split into several versions one per executable 2019-11-15 00:00:00 +00:00
2b0a5724a7 readme: convert underscores to hyphens on all header IDs
GitHub converts differently than asciidoctor... the only way to keep
them consistent is to explicitly set IDs.
2019-11-14 00:00:00 +00:00
927c7851b5 sched_getaffinity.c: make error check nicer 2019-11-13 00:00:00 +00:00
f92432e272 arm: x29 is frame register 2019-11-13 00:00:00 +00:00
bb552d00a4 _SC_NPROCESSORS_CONF 2019-11-12 00:00:00 +00:00
bf1ca6460d c++: copyfmt 2019-11-13 00:00:00 +00:00
ca47a77676 fork and fork bomb moved in from cpp-cheat 2019-11-12 00:00:00 +00:00
5b67747214 cpp: parametrize nthreads on threaded programs CLI
Mark them as multithreaded in path_properties. Preparation for
https://cirosantilli.com/linux-kernel-module-cheat/#user-mode-static-executables-with-dynamic-libraries
which is likely what breaks gem5 on them.
2019-11-04 23:00:01 +00:00
425d3a5713 pthread_self: allow multiple waves
Original motivation: determine if gem5's join releases CPU cores.
It does.
2019-11-04 00:00:00 +00:00
a06672a20d gcc hacks: busy_loop and prevent_reorder 2019-11-08 00:00:00 +00:00
02018daa95 arm: sve_addvl test program that prints sve length 2019-10-30 22:00:02 +00:00
9afe5355e9 userland: add some random filesystem and random stuff
Some moved from C++, some moved from SO, some I just made up.
2019-10-18 00:00:02 +00:00
f6123ac9f1 c++: file_read_write 2019-10-18 00:00:01 +00:00
1509c3bca4 command_line_arguments.c: move description to readme 2019-10-08 00:00:02 +00:00
50281d1db5 nodejs: file io 2019-10-08 00:00:01 +00:00
a9856a47a8 nodejs: start sketch 2019-10-08 00:00:00 +00:00
b4b2164f29 wget: move from cpp-cheat 2019-09-22 00:00:00 +00:00
fffc8d92da memory leak example 2019-09-18 00:00:02 +00:00
6c599534db multithread: doc improvements 2019-09-11 00:00:00 +00:00
6aa375df2a run: make --num-cpus work in gem5 userland and fs_bigLITTLE.py 2019-09-07 00:00:04 +00:00
e0fb39c92a userland: move more multithreading from cpp-cheat!
Convert infinite_loop.c into loop.c. Keep all examples fast by default!
2019-09-07 00:00:03 +00:00
e1ceb85934 c++: template class with static member 2019-09-07 00:00:00 +00:00
cb3f2f6183 c++: if constexpr 2019-09-07 00:00:00 +00:00
4806f0ecfb c++ template class example 2019-09-07 00:00:00 +00:00
d1d12e4b43 infinite_loop.c: document better, allow 0 magic value to not print
Enable test by passing arguments to the test to limit loops.

gem5 arm LSE: still skipped, but add a link to the master patch that was merged.
2019-09-07 00:00:00 +00:00
a1cf89efba stack smashing 2019-09-07 00:00:00 +00:00
f8b3ba9175 userland/linux: cc_pedantic actually works there and I found a bug with it 2019-08-27 00:00:01 +00:00
efc4205416 Become a memory accounting amateur 2019-08-27 00:00:00 +00:00
2fc1fc5767 freestanding examples: spaces! 2019-08-25 00:00:00 +00:00
6dfc95d73a arm: signed LDR example with LDRSW 2019-08-25 00:00:00 +00:00
9524307c0d build-doc: verify that there are no github readme links 2019-08-25 00:00:00 +00:00
96239298a9 Start nostartfiles examples.
Interlink freestanding directories and readme.
2019-08-25 00:00:00 +00:00
06374cda42 aarch64 sve: formatting and make .L symbols where possible 2019-08-25 00:00:00 +00:00
915b04a76e mmap anonymous: configurable size 2019-08-11 00:00:03 +00:00
b1767533af mmap anonymous 2019-08-11 00:00:02 +00:00
d7a24ea200 start moving malloc and friends in 2019-08-11 00:00:00 +00:00
3b93a2d65a avm svc: fully study and understand QEMU traces
Preparation for timer. Timer is almost working it seems, just need to
ACK the interrupt most likely: it is firing like mad that's all.
2019-07-30 00:00:01 +00:00
87e846fc1f arm sve: enable on baremetal by setting missing bits CPACR_EL1.ZEN 2019-07-25 00:00:00 +00:00
6f5a1a3e83 gem5: centralize information on simulate() time reached 2019-07-25 00:00:00 +00:00
d205140557 userland: move some multithreaded examples from cpp-cheat
Using them mostly to evaluate how well the emulators are handling user
mode multithreading.
2019-07-19 00:00:03 +00:00
afb38d249b sysconf: move in from cpp-cheat
arm baremetal: give more TTBR rationale
2019-07-19 06:59:14 +01:00
b38e2b0da9 arm baremetal: SVC explain where the imm16 can be retrieved
Use upper case hex literals on all PRIXnn.

.gitignore /out.docker
2019-07-16 00:00:01 +00:00
28cd27f969 Move all non-README links to cirosantilli.com where the file is not cut off... 2019-07-07 00:00:01 +00:00
e0c9a43aae ieee 754: start section 2019-06-29 00:00:02 +00:00
42a4c45058 asm: fix some forgotten # comments, mostly migration bugs 2019-06-29 00:00:00 +00:00