Skip to content

Commit

Permalink
cranelift-codegen: move old x86 and RISC-V backends to isa/legacy/.
Browse files Browse the repository at this point in the history
These backends will be removed in the future (see
bytecodealliance/rfcs#12 and the pending bytecodealliance#3009 in this repo).

In the meantime, to more clearly communicate that they are using
"legacy" APIs and will eventually be removed, this PR places them in an
`isa/legacy/` subdirectory. No functional changes otherwise.
  • Loading branch information
cfallin committed Jun 24, 2021
1 parent 8172620 commit 4b2723a
Show file tree
Hide file tree
Showing 17 changed files with 23 additions and 13 deletions.
12 changes: 12 additions & 0 deletions cranelift/codegen/src/isa/legacy/mod.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
//! Legacy ("old-style") backends that will be removed in the future.
// N.B.: the old x86-64 backend (`x86`) and the new one (`x64`) are both
// included whenever building with x86 support. The new backend is the default,
// but the old can be requested with `BackendVariant::Legacy`. However, if this
// crate is built with the `old-x86-backend` feature, then the old backend is
// default instead.
#[cfg(feature = "x86")]
pub(crate) mod x86;

#[cfg(feature = "riscv")]
pub(crate) mod riscv;
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
//! x86 ABI implementation.
use super::super::settings as shared_settings;
use super::super::super::settings as shared_settings;
use super::registers::{FPR, GPR, RU};
use super::settings as isa_settings;
use crate::abi::{legalize_args, ArgAction, ArgAssigner, ValueConversion};
Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ impl TargetIsa for Isa {
fn create_unwind_info(
&self,
func: &ir::Function,
) -> CodegenResult<Option<super::unwind::UnwindInfo>> {
) -> CodegenResult<Option<super::super::unwind::UnwindInfo>> {
abi::create_unwind_info(func, self)
}

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
20 changes: 9 additions & 11 deletions cranelift/codegen/src/isa/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -70,17 +70,6 @@ use core::fmt::{Debug, Formatter};
use core::hash::Hasher;
use target_lexicon::{triple, Architecture, OperatingSystem, PointerWidth, Triple};

#[cfg(feature = "riscv")]
mod riscv;

// N.B.: the old x86-64 backend (`x86`) and the new one (`x64`) are both
// included whenever building with x86 support. The new backend is the default,
// but the old can be requested with `BackendVariant::Legacy`. However, if this
// crate is built with the `old-x86-backend` feature, then the old backend is
// default instead.
#[cfg(feature = "x86")]
mod x86;

// This module is made public here for benchmarking purposes. No guarantees are
// made regarding API stability.
#[cfg(feature = "x86")]
Expand All @@ -95,6 +84,15 @@ pub(crate) mod aarch64;
#[cfg(feature = "s390x")]
mod s390x;

#[cfg(any(feature = "x86", feature = "riscv"))]
mod legacy;

#[cfg(feature = "x86")]
use legacy::x86;

#[cfg(feature = "riscv")]
use legacy::riscv;

pub mod unwind;

mod call_conv;
Expand Down

0 comments on commit 4b2723a

Please sign in to comment.