Skip to content
This repository was archived by the owner on Dec 2, 2020. It is now read-only.

Commit 0db2864

Browse files
bors[bot]adamgreig
andauthored
Merge #61
61: Prepare for v0.3.6 r=thalesfragoso a=adamgreig This prepares for a 0.3.6 which supports cortex-m 0.7. The only cortex-m features we use here are `interrupt::free` which is unchanged in 0.7. This PR is made on this (previously archived) repository as we can't generate a 0.3 series cortex-m-semihosting crate from the cortex-m repository without the inline asm machinery that's in this repository. Once this is merged and released, I plan to re-archive this repository, and update the c-m-sh CHANGELOG in the cortex-m repository to reflect this release. I expect this is the final 0.3 series release, and I'll try and get a working 0.4 release which depends on cortex-m 0.7.1 out after this (details tbc...). I'll also tag 0.3.6; it looks like we missed tags for 0.3.4 and 0.3.5. The only other change is I noticed the `no-semihosting` feature was merged after 0.3.5, so it's included in this release too. Co-authored-by: Adam Greig <[email protected]>
2 parents 88421cf + c72cd3e commit 0db2864

11 files changed

+16
-8
lines changed

CHANGELOG.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,13 @@ This project adheres to [Semantic Versioning](http://semver.org/).
55

66
## [Unreleased]
77

8+
## [v0.3.6] - 2020-12-01
9+
10+
### Added
11+
12+
- Update cortex-m dependency to support version 0.7.
13+
- Add `no-semihosting` feature to disable all semihosting calls.
14+
815
## [v0.3.5] - 2019-08-29
916

1017
### Added
@@ -109,7 +116,8 @@ This project adheres to [Semantic Versioning](http://semver.org/).
109116

110117
- Initial release
111118

112-
[Unreleased]: https://github.com/rust-embedded/cortex-m-semihosting/compare/v0.3.5...HEAD
119+
[Unreleased]: https://github.com/rust-embedded/cortex-m-semihosting/compare/v0.3.6...HEAD
120+
[v0.3.6]: https://github.com/rust-embedded/cortex-m-semihosting/compare/v0.3.5...v0.3.6
113121
[v0.3.5]: https://github.com/rust-embedded/cortex-m-semihosting/compare/v0.3.4...v0.3.5
114122
[v0.3.4]: https://github.com/rust-embedded/cortex-m-semihosting/compare/v0.3.3...v0.3.4
115123
[v0.3.3]: https://github.com/rust-embedded/cortex-m-semihosting/compare/v0.3.2...v0.3.3

Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ license = "MIT OR Apache-2.0"
1010
name = "cortex-m-semihosting"
1111
readme = "README.md"
1212
repository = "https://github.com/rust-embedded/cortex-m-semihosting"
13-
version = "0.3.5"
13+
version = "0.3.6"
1414
edition = "2018"
1515

1616
[features]
@@ -19,4 +19,4 @@ jlink-quirks = []
1919
no-semihosting = []
2020

2121
[dependencies]
22-
cortex-m = ">= 0.5.8, < 0.7"
22+
cortex-m = ">= 0.5.8, < 0.8"

asm.s

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
.section .text.__syscall
2-
.global __syscall
1+
.section .text.__c_m_sh_syscall
2+
.global __c_m_sh_syscall
33
.thumb_func
4-
__syscall:
4+
__c_m_sh_syscall:
55
bkpt 0xAB
66
bx lr

bin/thumbv6m-none-eabi.a

20 Bytes
Binary file not shown.

bin/thumbv7em-none-eabi.a

20 Bytes
Binary file not shown.

bin/thumbv7em-none-eabihf.a

20 Bytes
Binary file not shown.

bin/thumbv7m-none-eabi.a

20 Bytes
Binary file not shown.

bin/thumbv8m.base-none-eabi.a

20 Bytes
Binary file not shown.

bin/thumbv8m.main-none-eabi.a

20 Bytes
Binary file not shown.

bin/thumbv8m.main-none-eabihf.a

20 Bytes
Binary file not shown.

src/lib.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ pub mod nr;
198198

199199
#[cfg(all(thumb, not(feature = "inline-asm")))]
200200
extern "C" {
201-
fn __syscall(nr: usize, arg: usize) -> usize;
201+
fn __c_m_sh_syscall(nr: usize, arg: usize) -> usize;
202202
}
203203

204204
/// Performs a semihosting operation, takes a pointer to an argument block
@@ -212,7 +212,7 @@ pub unsafe fn syscall<T>(nr: usize, arg: &T) -> usize {
212212
pub unsafe fn syscall1(_nr: usize, _arg: usize) -> usize {
213213
match () {
214214
#[cfg(all(thumb, not(feature = "inline-asm"), not(feature = "no-semihosting")))]
215-
() => __syscall(_nr, _arg),
215+
() => __c_m_sh_syscall(_nr, _arg),
216216

217217
#[cfg(all(thumb, feature = "inline-asm", not(feature = "no-semihosting")))]
218218
() => {

0 commit comments

Comments
 (0)