Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: ⚡ Switch to thumb-mode to reduce code size #2

Open
wants to merge 73 commits into
base: armv7a-vex-v5
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
a5ccf0a
add armv7a-vex-v5 target
max-niederman May 28, 2024
a149b59
add (shimmed) std support for armv7a-vex-v5
max-niederman May 28, 2024
4b7ba7f
add panic, stdio, and alloc support to armv7a-vex-v5
max-niederman May 28, 2024
ce7fc68
fix linker script and call main
max-niederman May 30, 2024
45ea8cb
zero out bss section in _start
max-niederman Jul 17, 2024
c2b14c0
use static TLS implementation on vexos
max-niederman Jul 17, 2024
75474a5
make minor improvements to linker script
max-niederman Jul 17, 2024
061ac0e
enable stdio and fix stdout flushing
max-niederman Jul 18, 2024
a372ca0
add: `Instant` implementation
Gavin-Niederman Jul 18, 2024
a95f748
remove broken cleanup
max-niederman Jul 18, 2024
9fd7615
fix `.code_signature` section error
Tropix126 Jul 18, 2024
d9edb32
move `.code_signature` section into `.text`
Tropix126 Jul 18, 2024
8ef0fe5
adjust `armv7a-vex-v5` target features for more aggressive hardware o…
Tropix126 Jul 18, 2024
264ea44
switch `llvm_target` to use ARM hard-float abi
Tropix126 Jul 18, 2024
70448c0
add `env` implementation for `vexos` PAL
Tropix126 Jul 18, 2024
a5682b6
feat: experimental fs support
Gavin-Niederman Jul 18, 2024
32ea1c3
add support for more missing file operations
Tropix126 Jul 18, 2024
d48c422
feat: file writes vectored writes and vectored reads
Gavin-Niederman Jul 18, 2024
efd26d9
add helper for mapping FRESULT values
Tropix126 Jul 21, 2024
503c7b1
add: try_file_exists and stat
Gavin-Niederman Jul 21, 2024
1f57c2c
add: fileattr functions
Gavin-Niederman Jul 21, 2024
ebcd00e
fix: check current position in file when getting size
Gavin-Niederman Jul 21, 2024
d24f040
refactor: pseudorandom hashmap keys
Gavin-Niederman Jul 21, 2024
ed278ef
fix: support File::file_attr and dissalow read and write mode at the …
Gavin-Niederman Jul 22, 2024
6b3acd6
feat: seek implementation
Gavin-Niederman Jul 22, 2024
7a06d08
feat: almost working directory reading
Gavin-Niederman Jul 23, 2024
2cbbabb
fix: remove trailing slashes sooner
Gavin-Niederman Jul 23, 2024
a5b7a20
remove test code and document filesystem quirks
Tropix126 Jul 27, 2024
2883fb2
add default code signature, ensure stdout flush
Tropix126 Aug 4, 2024
e5018c1
add platform docs
Tropix126 Aug 4, 2024
71b8640
adjust wording and fix typos in target documentation
Tropix126 Aug 4, 2024
3ec948e
update PAL and add `check-cfg` override for `target_os`
Tropix126 Aug 5, 2024
f1eadde
add additional information to target spec and supporting docs
Tropix126 Aug 5, 2024
5fa6b4c
fix `EXE_SUFFFIX` to use dot
Tropix126 Aug 9, 2024
5c05880
fix: use correct code signature default values
Tropix126 Aug 17, 2024
ccf19ef
don't compile with `+thumb-mode` feature for now
Tropix126 Aug 21, 2024
887ff2d
properly flush serial on abort
Tropix126 Sep 6, 2024
53e5abc
clarify documentation regarding cargo-v5, adjust `SystemTime` panic m…
Tropix126 Sep 7, 2024
729072b
use aapcs as system abi
max-niederman Oct 9, 2024
71875d3
fix stack corruptions in startup routine
max-niederman Oct 9, 2024
5371b62
fix thread locals
max-niederman Oct 9, 2024
be3dd7a
implement (shimmed) std::random
max-niederman Oct 9, 2024
5efc465
fix allocation
max-niederman Oct 9, 2024
e41b73b
update linkerscript to include unwinding-related sections
Tropix126 Oct 11, 2024
7fbb673
format target doc and reorder maintainer list
max-niederman Oct 11, 2024
3977027
bump vex-sdk version and allow vex-sdk to be a stdlib dep
max-niederman Oct 11, 2024
4336524
add assembly test for armv7a-vex-v5
max-niederman Oct 11, 2024
da8d804
bless well-known-values test
max-niederman Oct 11, 2024
3a06fc8
add armv7a-vex-v5 target docs to summary
max-niederman Oct 11, 2024
a47c7df
better document the is_like_vexos property of TargetOptions
max-niederman Oct 11, 2024
b66a0f7
detail summary of armv7a-vex-v5's target support
max-niederman Oct 11, 2024
73dffc6
add more descriptive comments to the `armv7a-vex-v5` linkerscript
Tropix126 Oct 13, 2024
5a43c39
add `"v5"` target env armv7a-vex-v5 target spec
Tropix126 Oct 15, 2024
50cf19a
implement `Stderr` in vexos PAL
Tropix126 Oct 23, 2024
8a2d12b
run VEXos cpu1 scheduler while waiting for abort
Tropix126 Oct 23, 2024
dba2111
update to `vex-sdk` 0.23.0
Tropix126 Oct 23, 2024
8e5361b
add rudimentary implementation of `Thread::sleep` and `Thread::yield_…
Tropix126 Oct 25, 2024
c60ba56
fix broken reference to Instant in pal
max-niederman Oct 30, 2024
539baf1
switch to `+vfp3d16` LLVM feature in `armv7a-vex-v5`
Tropix126 Nov 11, 2024
c0c18aa
fix and clean up comments surrounding file seeking
Tropix126 Dec 23, 2024
d46d9e6
add private unit to all pub fs types in vexos PAL
Tropix126 Dec 23, 2024
53447c9
treat all `io::Error`s as non-EBADF in vexos
Tropix126 Dec 23, 2024
70ef480
adjust error message for `FRESULT::FR_INT_ERR`
Tropix126 Dec 23, 2024
668dfa4
bump `vex-sdk` to 0.26.0
Tropix126 Dec 23, 2024
1b9d337
update libstd lockfile
Tropix126 Dec 23, 2024
1e2ba27
fix circular dependency on cc-rs using a temporary patched version of…
max-niederman Jan 1, 2025
82f85a5
add unsupported file_lock functions
max-niederman Jan 1, 2025
55869f4
fix mistakes in fs PAL
max-niederman Jan 1, 2025
fbd50d7
add `llvm_floatabi` to armv7a-vex-v5 spec
Tropix126 Jan 2, 2025
9522587
serialize `is_like_vexos` in target json specs
doinkythederp Jan 2, 2025
3f6b70c
ensure `arm` arch before adjusting VEXos system ABI to `aapcs`
doinkythederp Jan 2, 2025
20144f8
bless `well-known-values` test again
Tropix126 Jan 6, 2025
6c3746d
refactor: :zap: Switch to thumb-mode to reduce code size
ion098 Jan 17, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
remove broken cleanup
max-niederman authored and Tropix126 committed Jan 5, 2025
commit a95f748ee1917b2766afa0c4f0cd7e2ef3cc2710
4 changes: 1 addition & 3 deletions library/std/src/sys/pal/vexos/mod.rs
Original file line number Diff line number Diff line change
@@ -61,9 +61,7 @@ pub extern "C" fn __rust_abort() -> ! {

pub unsafe fn init(_argc: isize, _argv: *const *const u8, _sigpipe: u8) {}

pub unsafe fn cleanup() {
stdio::
}
pub unsafe fn cleanup() {}

pub fn unsupported<T>() -> crate::io::Result<T> {
Err(unsupported_err())