@@ -20,7 +20,6 @@ use rustc_codegen_ssa::back::archive::{
20
20
use rustc_codegen_ssa:: common;
21
21
use tracing:: trace;
22
22
23
- use rustc_session:: cstore:: DllImport ;
24
23
use rustc_session:: Session ;
25
24
26
25
/// Helper for adding many files to an archive.
@@ -123,26 +122,12 @@ impl ArchiveBuilderBuilder for LlvmArchiveBuilderBuilder {
123
122
& self ,
124
123
sess : & Session ,
125
124
lib_name : & str ,
126
- dll_imports : & [ DllImport ] ,
125
+ import_name_and_ordinal_vector : Vec < ( String , Option < u16 > ) > ,
127
126
output_path : & Path ,
128
127
) {
129
128
let target = & sess. target ;
130
129
let mingw_gnu_toolchain = common:: is_mingw_gnu_toolchain ( target) ;
131
130
132
- let import_name_and_ordinal_vector: Vec < ( String , Option < u16 > ) > = dll_imports
133
- . iter ( )
134
- . map ( |import : & DllImport | {
135
- if sess. target . arch == "x86" {
136
- (
137
- common:: i686_decorated_name ( import, mingw_gnu_toolchain, false ) ,
138
- import. ordinal ( ) ,
139
- )
140
- } else {
141
- ( import. name . to_string ( ) , import. ordinal ( ) )
142
- }
143
- } )
144
- . collect ( ) ;
145
-
146
131
if mingw_gnu_toolchain {
147
132
// The binutils linker used on -windows-gnu targets cannot read the import
148
133
// libraries generated by LLVM: in our attempts, the linker produced an .EXE
@@ -240,9 +225,9 @@ impl ArchiveBuilderBuilder for LlvmArchiveBuilderBuilder {
240
225
trace ! ( " output_path {}" , output_path. display( ) ) ;
241
226
trace ! (
242
227
" import names: {}" ,
243
- dll_imports
228
+ import_name_and_ordinal_vector
244
229
. iter( )
245
- . map( |import| import . name. to_string ( ) )
230
+ . map( |( name , _ordinal ) | name. clone ( ) )
246
231
. collect:: <Vec <_>>( )
247
232
. join( ", " ) ,
248
233
) ;
0 commit comments