Skip to content

Commit 767e7da

Browse files
Rollup merge of #150555 - adamgreig:armv7-thumb-interwork, r=chenyukang
Enable thumb interworking on ARMv7A/R and ARMv8R bare-metal targets This flag enables the `#[instruction_set(arm::t32)]` for the armv7a/armv7r/armv8r targets, which all support Thumb interwork but were missing this flag. Target maintainers are `@chrisnc,` `@rust-lang/arm-maintainers,` `@rust-embedded/arm` (including me).
2 parents f5803f0 + 59a3ad3 commit 767e7da

File tree

7 files changed

+7
-0
lines changed

7 files changed

+7
-0
lines changed

compiler/rustc_target/src/spec/targets/armebv7r_none_eabi.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ pub(crate) fn target() -> Target {
3131
emit_debug_gdb_scripts: false,
3232
// GCC defaults to 8 for arm-none here.
3333
c_enum_min_bits: Some(8),
34+
has_thumb_interworking: true,
3435
..Default::default()
3536
},
3637
}

compiler/rustc_target/src/spec/targets/armebv7r_none_eabihf.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ pub(crate) fn target() -> Target {
3232
emit_debug_gdb_scripts: false,
3333
// GCC defaults to 8 for arm-none here.
3434
c_enum_min_bits: Some(8),
35+
has_thumb_interworking: true,
3536
..Default::default()
3637
},
3738
}

compiler/rustc_target/src/spec/targets/armv7a_none_eabi.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ pub(crate) fn target() -> Target {
3232
panic_strategy: PanicStrategy::Abort,
3333
emit_debug_gdb_scripts: false,
3434
c_enum_min_bits: Some(8),
35+
has_thumb_interworking: true,
3536
..Default::default()
3637
};
3738
Target {

compiler/rustc_target/src/spec/targets/armv7a_none_eabihf.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ pub(crate) fn target() -> Target {
2424
emit_debug_gdb_scripts: false,
2525
// GCC defaults to 8 for arm-none here.
2626
c_enum_min_bits: Some(8),
27+
has_thumb_interworking: true,
2728
..Default::default()
2829
};
2930
Target {

compiler/rustc_target/src/spec/targets/armv7r_none_eabi.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ pub(crate) fn target() -> Target {
2929
emit_debug_gdb_scripts: false,
3030
// GCC defaults to 8 for arm-none here.
3131
c_enum_min_bits: Some(8),
32+
has_thumb_interworking: true,
3233
..Default::default()
3334
},
3435
}

compiler/rustc_target/src/spec/targets/armv7r_none_eabihf.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ pub(crate) fn target() -> Target {
3030
emit_debug_gdb_scripts: false,
3131
// GCC defaults to 8 for arm-none here.
3232
c_enum_min_bits: Some(8),
33+
has_thumb_interworking: true,
3334
..Default::default()
3435
},
3536
}

compiler/rustc_target/src/spec/targets/armv8r_none_eabihf.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ pub(crate) fn target() -> Target {
3939
emit_debug_gdb_scripts: false,
4040
// GCC defaults to 8 for arm-none here.
4141
c_enum_min_bits: Some(8),
42+
has_thumb_interworking: true,
4243
..Default::default()
4344
},
4445
}

0 commit comments

Comments
 (0)