提交 be71fccf 编写于 作者: T Taiki Endo

librustc_codegen_ssa => 2018

上级 618f5a08
......@@ -2,6 +2,7 @@
authors = ["The Rust Project Developers"]
name = "rustc_codegen_ssa"
version = "0.0.0"
edition = "2018"
[lib]
name = "rustc_codegen_ssa"
......
......@@ -9,7 +9,7 @@
use rustc::hir::def_id::CrateNum;
use super::command::Command;
use CrateInfo;
use crate::CrateInfo;
use cc::windows_registry;
use std::fs;
......
use super::write::CodegenContext;
use traits::*;
use ModuleCodegen;
use crate::traits::*;
use crate::ModuleCodegen;
use rustc::util::time_graph::Timeline;
use rustc_errors::FatalError;
......
use {ModuleCodegen, ModuleKind, CachedModuleCodegen, CompiledModule, CrateInfo, CodegenResults,
RLIB_BYTECODE_EXTENSION};
use crate::{ModuleCodegen, ModuleKind, CachedModuleCodegen, CompiledModule, CrateInfo,
CodegenResults, RLIB_BYTECODE_EXTENSION};
use super::linker::LinkerInfo;
use super::lto::{self, SerializedModule};
use super::link::{self, remove, get_linker};
use super::command::Command;
use super::symbol_export::ExportedSymbols;
use memmap;
use crate::traits::*;
use rustc_incremental::{copy_cgu_workproducts_to_incr_comp_cache_dir,
in_incr_comp_dir, in_incr_comp_dir_sess};
use rustc::dep_graph::{WorkProduct, WorkProductId, WorkProductFileKind};
......@@ -16,7 +16,6 @@
use rustc::session::Session;
use rustc::util::nodemap::FxHashMap;
use rustc::util::time_graph::{self, TimeGraph, Timeline};
use traits::*;
use rustc::hir::def_id::{CrateNum, LOCAL_CRATE};
use rustc::ty::TyCtxt;
use rustc::util::common::{time_depth, set_time_depth, print_time_passes_entry};
......
......@@ -13,7 +13,7 @@
//! but one llvm::Type corresponds to many `Ty`s; for instance, tup(int, int,
//! int) and rec(x=int, y=int, z=int) will have the same llvm::Type.
use {ModuleCodegen, ModuleKind, CachedModuleCodegen};
use crate::{ModuleCodegen, ModuleKind, CachedModuleCodegen};
use rustc::dep_graph::cgu_reuse_tracker::CguReuse;
use rustc::hir::def_id::{CrateNum, DefId, LOCAL_CRATE};
......@@ -28,26 +28,26 @@
use rustc::util::profiling::ProfileCategory;
use rustc::session::config::{self, EntryFnType, Lto};
use rustc::session::Session;
use mir::place::PlaceRef;
use back::write::{OngoingCodegen, start_async_codegen, submit_pre_lto_module_to_llvm,
submit_post_lto_module_to_llvm};
use {MemFlags, CrateInfo};
use callee;
use rustc_mir::monomorphize::item::DefPathBasedNames;
use common::{RealPredicate, TypeKind, IntPredicate};
use meth;
use mir;
use rustc::util::time_graph;
use rustc_mir::monomorphize::Instance;
use rustc_mir::monomorphize::partitioning::{CodegenUnit, CodegenUnitExt};
use mono_item::MonoItem;
use rustc::util::nodemap::FxHashMap;
use rustc_data_structures::indexed_vec::Idx;
use rustc_data_structures::sync::Lrc;
use rustc_codegen_utils::{symbol_names_test, check_for_rustc_errors_attr};
use rustc::ty::layout::{FAT_PTR_ADDR, FAT_PTR_EXTRA};
use crate::mir::place::PlaceRef;
use crate::back::write::{OngoingCodegen, start_async_codegen, submit_pre_lto_module_to_llvm,
submit_post_lto_module_to_llvm};
use crate::{MemFlags, CrateInfo};
use crate::callee;
use crate::common::{RealPredicate, TypeKind, IntPredicate};
use crate::meth;
use crate::mir;
use crate::mono_item::MonoItem;
use traits::*;
use crate::traits::*;
use std::any::Any;
use std::cmp;
......@@ -58,7 +58,7 @@
use syntax::attr;
use rustc::hir;
use mir::operand::OperandValue;
use crate::mir::operand::OperandValue;
use std::marker::PhantomData;
......
use traits::*;
use crate::traits::*;
use rustc::ty;
use rustc::ty::subst::Substs;
use rustc::hir::def_id::DefId;
......
......@@ -5,11 +5,11 @@
use rustc::hir::def_id::DefId;
use rustc::middle::lang_items::LangItem;
use base;
use traits::*;
use crate::base;
use crate::traits::*;
use rustc::hir;
use traits::BuilderMethods;
use crate::traits::BuilderMethods;
pub fn type_needs_drop<'a, 'tcx>(tcx: TyCtxt<'a, 'tcx, 'tcx>, ty: Ty<'tcx>) -> bool {
ty.needs_drop(tcx, ty::ParamEnv::reveal_all())
......@@ -123,7 +123,7 @@ pub enum TypeKind {
mod temp_stable_hash_impls {
use rustc_data_structures::stable_hasher::{StableHasherResult, StableHasher,
HashStable};
use ModuleCodegen;
use crate::ModuleCodegen;
impl<HCX, M> HashStable<HCX> for ModuleCodegen<M> {
fn hash_stable<W: StableHasherResult>(&self,
......
......@@ -2,12 +2,10 @@
//
// Code relating to drop glue.
use std;
use common::IntPredicate;
use meth;
use rustc::ty::{self, Ty};
use traits::*;
use crate::common::IntPredicate;
use crate::meth;
use crate::traits::*;
pub fn size_and_align_of_dst<'a, 'tcx: 'a, Bx: BuilderMethods<'a, 'tcx>>(
bx: &mut Bx,
......
......@@ -10,6 +10,9 @@
#![feature(nll)]
#![allow(unused_attributes)]
#![allow(dead_code)]
#![deny(rust_2018_idioms)]
#![allow(explicit_outlives_requirements)]
#![allow(elided_lifetimes_in_paths)]
#![recursion_limit="256"]
......@@ -17,27 +20,9 @@
//! The backend-agnostic functions of this crate use functions defined in various traits that
//! have to be implemented by each backends.
#[macro_use] extern crate bitflags;
#[macro_use] extern crate log;
extern crate rustc_apfloat;
#[macro_use] extern crate rustc;
extern crate rustc_target;
extern crate rustc_mir;
#[macro_use] extern crate rustc;
#[macro_use] extern crate syntax;
extern crate syntax_pos;
extern crate rustc_incremental;
extern crate rustc_codegen_utils;
extern crate rustc_data_structures;
extern crate rustc_allocator;
extern crate rustc_fs_util;
extern crate serialize;
extern crate rustc_errors;
extern crate rustc_demangle;
extern crate cc;
extern crate libc;
extern crate jobserver;
extern crate memmap;
extern crate num_cpus;
use std::path::PathBuf;
use rustc::dep_graph::WorkProduct;
......@@ -133,7 +118,7 @@ pub enum ModuleKind {
Allocator,
}
bitflags! {
bitflags::bitflags! {
pub struct MemFlags: u8 {
const VOLATILE = 1 << 0;
const NONTEMPORAL = 1 << 1;
......
use rustc_target::abi::call::FnType;
use callee;
use rustc_mir::monomorphize;
use traits::*;
use crate::callee;
use crate::traits::*;
use rustc::ty::{self, Ty};
......
......@@ -10,7 +10,7 @@
use rustc::ty;
use rustc::ty::layout::{LayoutOf, HasTyCtxt};
use super::FunctionCx;
use traits::*;
use crate::traits::*;
pub fn non_ssa_locals<'a, 'tcx: 'a, Bx: BuilderMethods<'a, 'tcx>>(
fx: &FunctionCx<'a, 'tcx, Bx>
......
......@@ -5,13 +5,13 @@
use rustc::mir::interpret::EvalErrorKind;
use rustc_target::abi::call::{ArgType, FnType, PassMode};
use rustc_target::spec::abi::Abi;
use base;
use MemFlags;
use common::{self, IntPredicate};
use meth;
use rustc_mir::monomorphize;
use crate::base;
use crate::MemFlags;
use crate::common::{self, IntPredicate};
use crate::meth;
use traits::*;
use crate::traits::*;
use syntax::symbol::Symbol;
use syntax_pos::Pos;
......
......@@ -6,7 +6,7 @@
use rustc::ty::{self, Ty};
use rustc::ty::layout;
use syntax::source_map::Span;
use traits::*;
use crate::traits::*;
use super::FunctionCx;
......
......@@ -4,11 +4,11 @@
use rustc::mir::{self, Mir};
use rustc::ty::subst::Substs;
use rustc::session::config::DebugInfo;
use base;
use debuginfo::{self, VariableAccess, VariableKind, FunctionDebugContext};
use rustc_mir::monomorphize::Instance;
use rustc_target::abi::call::{FnType, PassMode};
use traits::*;
use crate::base;
use crate::debuginfo::{self, VariableAccess, VariableKind, FunctionDebugContext};
use crate::traits::*;
use syntax_pos::{DUMMY_SP, NO_EXPANSION, BytePos, Span};
use syntax::symbol::keywords;
......
......@@ -3,11 +3,11 @@
use rustc::ty;
use rustc::ty::layout::{self, Align, LayoutOf, TyLayout};
use base;
use MemFlags;
use glue;
use crate::base;
use crate::MemFlags;
use crate::glue;
use traits::*;
use crate::traits::*;
use std::fmt;
......
......@@ -2,11 +2,11 @@
use rustc::ty::layout::{self, Align, TyLayout, LayoutOf, VariantIdx, HasTyCtxt};
use rustc::mir;
use rustc::mir::tcx::PlaceTy;
use MemFlags;
use common::IntPredicate;
use glue;
use crate::MemFlags;
use crate::common::IntPredicate;
use crate::glue;
use traits::*;
use crate::traits::*;
use super::{FunctionCx, LocalRef};
use super::operand::OperandValue;
......
......@@ -6,13 +6,13 @@
use rustc_apfloat::{ieee, Float, Status, Round};
use std::{u128, i128};
use base;
use MemFlags;
use callee;
use common::{self, RealPredicate, IntPredicate};
use crate::base;
use crate::MemFlags;
use crate::callee;
use crate::common::{self, RealPredicate, IntPredicate};
use rustc_mir::monomorphize;
use traits::*;
use crate::traits::*;
use super::{FunctionCx, LocalRef};
use super::operand::{OperandRef, OperandValue};
......
use rustc::mir;
use traits::BuilderMethods;
use crate::traits::BuilderMethods;
use super::FunctionCx;
use super::LocalRef;
use super::OperandValue;
use traits::*;
use crate::traits::*;
impl<'a, 'tcx: 'a, Bx: BuilderMethods<'a, 'tcx>> FunctionCx<'a, 'tcx, Bx> {
pub fn codegen_statement(
......
use base;
use rustc::hir;
use rustc::hir::def::Def;
use rustc::mir::mono::{Linkage, Visibility};
use rustc::ty::layout::HasTyCtxt;
use std::fmt;
use traits::*;
use crate::base;
use crate::traits::*;
pub use rustc::mir::mono::MonoItem;
......
use super::BackendTypes;
use mir::place::PlaceRef;
use crate::mir::place::PlaceRef;
use rustc::hir::{GlobalAsm, InlineAsm};
pub trait AsmBuilderMethods<'tcx>: BackendTypes {
......
......@@ -4,13 +4,14 @@
use super::intrinsic::IntrinsicCallMethods;
use super::type_::ArgTypeMethods;
use super::{HasCodegen, StaticBuilderMethods};
use common::{AtomicOrdering, AtomicRmwBinOp, IntPredicate, RealPredicate, SynchronizationScope};
use mir::operand::OperandRef;
use mir::place::PlaceRef;
use crate::common::{AtomicOrdering, AtomicRmwBinOp, IntPredicate, RealPredicate,
SynchronizationScope};
use crate::mir::operand::OperandRef;
use crate::mir::place::PlaceRef;
use crate::MemFlags;
use rustc::ty::Ty;
use rustc::ty::layout::{Align, Size};
use std::ffi::CStr;
use MemFlags;
use std::borrow::Cow;
use std::ops::Range;
......
use super::BackendTypes;
use mir::place::PlaceRef;
use crate::mir::place::PlaceRef;
use rustc::mir::interpret::Allocation;
use rustc::mir::interpret::Scalar;
use rustc::ty::layout;
......
use super::BackendTypes;
use debuginfo::{FunctionDebugContext, MirDebugScope, VariableAccess, VariableKind};
use crate::debuginfo::{FunctionDebugContext, MirDebugScope, VariableAccess, VariableKind};
use rustc::hir::def_id::CrateNum;
use rustc::mir;
use rustc::ty::{self, Ty};
......
use super::BackendTypes;
use mir::operand::OperandRef;
use crate::mir::operand::OperandRef;
use rustc::ty::Ty;
use rustc_target::abi::call::FnType;
use syntax_pos::Span;
......
use super::misc::MiscMethods;
use super::Backend;
use super::HasCodegen;
use common::{self, TypeKind};
use mir::place::PlaceRef;
use crate::common::{self, TypeKind};
use crate::mir::place::PlaceRef;
use rustc::ty::layout::{self, Align, Size, TyLayout};
use rustc::ty::{self, Ty};
use rustc::util::nodemap::FxHashMap;
......
use back::lto::{LtoModuleCodegen, SerializedModule, ThinModule};
use back::write::{CodegenContext, ModuleConfig};
use {CompiledModule, ModuleCodegen};
use crate::back::lto::{LtoModuleCodegen, SerializedModule, ThinModule};
use crate::back::write::{CodegenContext, ModuleConfig};
use crate::{CompiledModule, ModuleCodegen};
use rustc::dep_graph::WorkProduct;
use rustc::util::time_graph::Timeline;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册