Add TargetIsa::as_any for downcasting to specific ISA implementations

This is necessary when we would like to check specific ISA flags, e.g.
This commit is contained in:
Andrew Brown
2020-05-21 11:54:19 -07:00
parent 9ba9fd0f64
commit 40f31375a5
5 changed files with 25 additions and 0 deletions

View File

@@ -23,6 +23,7 @@ use crate::result::CodegenResult;
use crate::timing;
use alloc::borrow::Cow;
use alloc::boxed::Box;
use core::any::Any;
use core::fmt;
use target_lexicon::{PointerWidth, Triple};
@@ -184,6 +185,10 @@ impl TargetIsa for Isa {
fn create_systemv_cie(&self) -> Option<gimli::write::CommonInformationEntry> {
Some(unwind::systemv::create_cie())
}
fn as_any(&self) -> &dyn Any {
self as &dyn Any
}
}
impl fmt::Display for Isa {