Skip to content

Commit 963eec0

Browse files
authored
Rollup merge of #132547 - workingjubilee:rustc-abi-in-cg-gcc, r=GuillaumeGomez
cg_gcc: Directly use rustc_abi instead of reexports These reexports will be going away soonish.
2 parents 07179d5 + e42cb3b commit 963eec0

File tree

11 files changed

+25
-25
lines changed

11 files changed

+25
-25
lines changed

compiler/rustc_codegen_gcc/src/abi.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use rustc_middle::ty::Ty;
88
use rustc_middle::ty::layout::LayoutOf;
99
#[cfg(feature = "master")]
1010
use rustc_session::config;
11-
use rustc_target::abi::call::{ArgAttributes, CastTarget, FnAbi, PassMode, Reg, RegKind};
11+
use rustc_target::callconv::{ArgAttributes, CastTarget, FnAbi, PassMode, Reg, RegKind};
1212

1313
use crate::builder::Builder;
1414
use crate::context::CodegenCx;
@@ -132,10 +132,10 @@ impl<'gcc, 'tcx> FnAbiGccExt<'gcc, 'tcx> for FnAbi<'tcx, Ty<'tcx>> {
132132
if cx.sess().opts.optimize == config::OptLevel::No {
133133
return ty;
134134
}
135-
if attrs.regular.contains(rustc_target::abi::call::ArgAttribute::NoAlias) {
135+
if attrs.regular.contains(rustc_target::callconv::ArgAttribute::NoAlias) {
136136
ty = ty.make_restrict()
137137
}
138-
if attrs.regular.contains(rustc_target::abi::call::ArgAttribute::NonNull) {
138+
if attrs.regular.contains(rustc_target::callconv::ArgAttribute::NonNull) {
139139
non_null_args.push(arg_index as i32 + 1);
140140
}
141141
ty

compiler/rustc_codegen_gcc/src/builder.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ use rustc_middle::ty::layout::{
2929
use rustc_middle::ty::{self, Instance, Ty, TyCtxt};
3030
use rustc_span::Span;
3131
use rustc_span::def_id::DefId;
32-
use rustc_target::abi::call::FnAbi;
32+
use rustc_target::callconv::FnAbi;
3333
use rustc_target::spec::{HasTargetSpec, HasWasmCAbiOpt, HasX86AbiOpt, Target, WasmCAbi, X86Abi};
3434

3535
use crate::common::{SignType, TypeReflection, type_is_pointer};

compiler/rustc_codegen_gcc/src/consts.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#[cfg(feature = "master")]
22
use gccjit::{FnAttribute, VarAttribute, Visibility};
33
use gccjit::{Function, GlobalKind, LValue, RValue, ToRValue, Type};
4+
use rustc_abi::{self as abi, Align, HasDataLayout, Primitive, Size, WrappingRange};
45
use rustc_codegen_ssa::traits::{
56
BaseTypeCodegenMethods, ConstCodegenMethods, StaticCodegenMethods,
67
};
@@ -14,7 +15,6 @@ use rustc_middle::ty::layout::LayoutOf;
1415
use rustc_middle::ty::{self, Instance};
1516
use rustc_middle::{bug, span_bug};
1617
use rustc_span::def_id::DefId;
17-
use rustc_target::abi::{self, Align, HasDataLayout, Primitive, Size, WrappingRange};
1818

1919
use crate::base;
2020
use crate::context::CodegenCx;

compiler/rustc_codegen_gcc/src/context.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ use std::cell::{Cell, RefCell};
33
use gccjit::{
44
Block, CType, Context, Function, FunctionPtrType, FunctionType, LValue, Location, RValue, Type,
55
};
6+
use rustc_abi::{HasDataLayout, PointeeInfo, Size, TargetDataLayout, VariantIdx};
67
use rustc_codegen_ssa::base::wants_msvc_seh;
78
use rustc_codegen_ssa::errors as ssa_errors;
89
use rustc_codegen_ssa::traits::{BackendTypes, BaseTypeCodegenMethods, MiscCodegenMethods};
@@ -18,7 +19,6 @@ use rustc_middle::ty::{self, ExistentialTraitRef, Instance, Ty, TyCtxt};
1819
use rustc_session::Session;
1920
use rustc_span::source_map::respan;
2021
use rustc_span::{DUMMY_SP, Span};
21-
use rustc_target::abi::{HasDataLayout, PointeeInfo, Size, TargetDataLayout, VariantIdx};
2222
use rustc_target::spec::{
2323
HasTargetSpec, HasWasmCAbiOpt, HasX86AbiOpt, Target, TlsModel, WasmCAbi, X86Abi,
2424
};

compiler/rustc_codegen_gcc/src/debuginfo.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
use std::ops::Range;
22

33
use gccjit::{Location, RValue};
4+
use rustc_abi::Size;
45
use rustc_codegen_ssa::mir::debuginfo::{DebugScope, FunctionDebugContext, VariableKind};
56
use rustc_codegen_ssa::traits::{DebugInfoBuilderMethods, DebugInfoCodegenMethods};
67
use rustc_data_structures::sync::Lrc;
@@ -10,8 +11,7 @@ use rustc_middle::mir::{self, Body, SourceScope};
1011
use rustc_middle::ty::{ExistentialTraitRef, Instance, Ty};
1112
use rustc_session::config::DebugInfo;
1213
use rustc_span::{BytePos, Pos, SourceFile, SourceFileAndLine, Span, Symbol};
13-
use rustc_target::abi::Size;
14-
use rustc_target::abi::call::FnAbi;
14+
use rustc_target::callconv::FnAbi;
1515

1616
use crate::builder::Builder;
1717
use crate::context::CodegenCx;

compiler/rustc_codegen_gcc/src/declare.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use gccjit::{Function, FunctionType, GlobalKind, LValue, RValue, Type};
44
use rustc_codegen_ssa::traits::BaseTypeCodegenMethods;
55
use rustc_middle::ty::Ty;
66
use rustc_span::Symbol;
7-
use rustc_target::abi::call::FnAbi;
7+
use rustc_target::callconv::FnAbi;
88

99
use crate::abi::{FnAbiGcc, FnAbiGccExt};
1010
use crate::context::CodegenCx;

compiler/rustc_codegen_gcc/src/int.rs

+3-4
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,11 @@
33
//! 128-bit integers on 32-bit platforms and thus require to be handled manually.
44
55
use gccjit::{BinaryOp, ComparisonOp, FunctionType, Location, RValue, ToRValue, Type, UnaryOp};
6+
use rustc_abi::{Endian, ExternAbi};
67
use rustc_codegen_ssa::common::{IntPredicate, TypeKind};
78
use rustc_codegen_ssa::traits::{BackendTypes, BaseTypeCodegenMethods, BuilderMethods, OverflowOp};
89
use rustc_middle::ty::{self, Ty};
9-
use rustc_target::abi::Endian;
10-
use rustc_target::abi::call::{ArgAbi, ArgAttributes, Conv, FnAbi, PassMode};
11-
use rustc_target::spec;
10+
use rustc_target::callconv::{ArgAbi, ArgAttributes, Conv, FnAbi, PassMode};
1211

1312
use crate::builder::{Builder, ToGccComp};
1413
use crate::common::{SignType, TypeReflection};
@@ -401,7 +400,7 @@ impl<'a, 'gcc, 'tcx> Builder<'a, 'gcc, 'tcx> {
401400
conv: Conv::C,
402401
can_unwind: false,
403402
};
404-
fn_abi.adjust_for_foreign_abi(self.cx, spec::abi::Abi::C { unwind: false }).unwrap();
403+
fn_abi.adjust_for_foreign_abi(self.cx, ExternAbi::C { unwind: false }).unwrap();
405404

406405
let ret_indirect = matches!(fn_abi.ret.mode, PassMode::Indirect { .. });
407406

compiler/rustc_codegen_gcc/src/intrinsic/mod.rs

+7-7
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@ use std::iter;
77
#[cfg(feature = "master")]
88
use gccjit::FunctionType;
99
use gccjit::{ComparisonOp, Function, RValue, ToRValue, Type, UnaryOp};
10+
#[cfg(feature = "master")]
11+
use rustc_abi::ExternAbi;
12+
use rustc_abi::HasDataLayout;
1013
use rustc_codegen_ssa::MemFlags;
1114
use rustc_codegen_ssa::base::wants_msvc_seh;
1215
use rustc_codegen_ssa::common::IntPredicate;
@@ -25,11 +28,8 @@ use rustc_middle::ty::layout::{FnAbiOf, HasTyCtxt};
2528
use rustc_middle::ty::layout::{HasTypingEnv, LayoutOf};
2629
use rustc_middle::ty::{self, Instance, Ty};
2730
use rustc_span::{Span, Symbol, sym};
28-
use rustc_target::abi::HasDataLayout;
29-
use rustc_target::abi::call::{ArgAbi, FnAbi, PassMode};
31+
use rustc_target::callconv::{ArgAbi, FnAbi, PassMode};
3032
use rustc_target::spec::PanicStrategy;
31-
#[cfg(feature = "master")]
32-
use rustc_target::spec::abi::Abi;
3333

3434
#[cfg(feature = "master")]
3535
use crate::abi::FnAbiGccExt;
@@ -1238,7 +1238,7 @@ fn get_rust_try_fn<'a, 'gcc, 'tcx>(
12381238
tcx.types.unit,
12391239
false,
12401240
rustc_hir::Safety::Unsafe,
1241-
Abi::Rust,
1241+
ExternAbi::Rust,
12421242
)),
12431243
);
12441244
// `unsafe fn(*mut i8, *mut i8) -> ()`
@@ -1249,7 +1249,7 @@ fn get_rust_try_fn<'a, 'gcc, 'tcx>(
12491249
tcx.types.unit,
12501250
false,
12511251
rustc_hir::Safety::Unsafe,
1252-
Abi::Rust,
1252+
ExternAbi::Rust,
12531253
)),
12541254
);
12551255
// `unsafe fn(unsafe fn(*mut i8) -> (), *mut i8, unsafe fn(*mut i8, *mut i8) -> ()) -> i32`
@@ -1258,7 +1258,7 @@ fn get_rust_try_fn<'a, 'gcc, 'tcx>(
12581258
tcx.types.i32,
12591259
false,
12601260
rustc_hir::Safety::Unsafe,
1261-
Abi::Rust,
1261+
ExternAbi::Rust,
12621262
));
12631263
let rust_try = gen_fn(cx, "__rust_try", rust_fn_sig, codegen);
12641264
cx.rust_try_fn.set(Some(rust_try));

compiler/rustc_codegen_gcc/src/intrinsic/simd.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ use std::iter::FromIterator;
33
use gccjit::{BinaryOp, RValue, ToRValue, Type};
44
#[cfg(feature = "master")]
55
use gccjit::{ComparisonOp, UnaryOp};
6+
use rustc_abi::{Align, Size};
67
use rustc_codegen_ssa::base::compare_simd_types;
78
use rustc_codegen_ssa::common::{IntPredicate, TypeKind};
89
#[cfg(feature = "master")]
@@ -17,7 +18,6 @@ use rustc_middle::mir::BinOp;
1718
use rustc_middle::ty::layout::HasTyCtxt;
1819
use rustc_middle::ty::{self, Ty};
1920
use rustc_span::{Span, Symbol, sym};
20-
use rustc_target::abi::{Align, Size};
2121

2222
use crate::builder::Builder;
2323
#[cfg(not(feature = "master"))]

compiler/rustc_codegen_gcc/src/type_.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ use std::convert::TryInto;
44
#[cfg(feature = "master")]
55
use gccjit::CType;
66
use gccjit::{RValue, Struct, Type};
7+
use rustc_abi::{AddressSpace, Align, Integer, Size};
78
use rustc_codegen_ssa::common::TypeKind;
89
use rustc_codegen_ssa::traits::{
910
BaseTypeCodegenMethods, DerivedTypeCodegenMethods, TypeMembershipCodegenMethods,
1011
};
1112
use rustc_middle::ty::layout::TyAndLayout;
1213
use rustc_middle::{bug, ty};
13-
use rustc_target::abi::{AddressSpace, Align, Integer, Size};
1414

1515
use crate::common::TypeReflection;
1616
use crate::context::CodegenCx;

compiler/rustc_codegen_gcc/src/type_of.rs

+4-3
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,17 @@ use std::fmt::Write;
33
use gccjit::{Struct, Type};
44
use rustc_abi as abi;
55
use rustc_abi::Primitive::*;
6-
use rustc_abi::{BackendRepr, FieldsShape, Integer, PointeeInfo, Size, Variants};
6+
use rustc_abi::{
7+
BackendRepr, FieldsShape, Integer, PointeeInfo, Reg, Size, TyAbiInterface, Variants,
8+
};
79
use rustc_codegen_ssa::traits::{
810
BaseTypeCodegenMethods, DerivedTypeCodegenMethods, LayoutTypeCodegenMethods,
911
};
1012
use rustc_middle::bug;
1113
use rustc_middle::ty::layout::{LayoutOf, TyAndLayout};
1214
use rustc_middle::ty::print::with_no_trimmed_paths;
1315
use rustc_middle::ty::{self, CoroutineArgsExt, Ty, TypeVisitableExt};
14-
use rustc_target::abi::TyAbiInterface;
15-
use rustc_target::abi::call::{CastTarget, FnAbi, Reg};
16+
use rustc_target::callconv::{CastTarget, FnAbi};
1617

1718
use crate::abi::{FnAbiGcc, FnAbiGccExt, GccType};
1819
use crate::context::CodegenCx;

0 commit comments

Comments
 (0)