11use crate :: spec:: Target ;
22use crate :: { abi:: Size , spec:: RelocModel } ;
3- use rustc_data_structures:: fx:: { FxHashMap , FxHashSet } ;
3+ use rustc_data_structures:: fx:: { FxHashMap , FxIndexSet } ;
44use rustc_macros:: HashStable_Generic ;
55use rustc_span:: Symbol ;
66use std:: fmt;
@@ -37,13 +37,14 @@ macro_rules! def_reg_class {
3737
3838 pub ( super ) fn regclass_map( ) -> rustc_data_structures:: fx:: FxHashMap <
3939 super :: InlineAsmRegClass ,
40- rustc_data_structures:: fx:: FxHashSet <super :: InlineAsmReg >,
40+ rustc_data_structures:: fx:: FxIndexSet <super :: InlineAsmReg >,
4141 > {
42- use rustc_data_structures:: fx:: { FxHashMap , FxHashSet } ;
42+ use rustc_data_structures:: fx:: FxHashMap ;
43+ use rustc_data_structures:: fx:: FxIndexSet ;
4344 use super :: InlineAsmRegClass ;
4445 let mut map = FxHashMap :: default ( ) ;
4546 $(
46- map. insert( InlineAsmRegClass :: $arch( $arch_regclass:: $class) , FxHashSet :: default ( ) ) ;
47+ map. insert( InlineAsmRegClass :: $arch( $arch_regclass:: $class) , FxIndexSet :: default ( ) ) ;
4748 ) *
4849 map
4950 }
@@ -94,7 +95,7 @@ macro_rules! def_regs {
9495 pub fn validate( self ,
9596 _arch: super :: InlineAsmArch ,
9697 _reloc_model: crate :: spec:: RelocModel ,
97- _target_features: & rustc_data_structures:: fx:: FxHashSet <Symbol >,
98+ _target_features: & rustc_data_structures:: fx:: FxIndexSet <Symbol >,
9899 _target: & crate :: spec:: Target ,
99100 _is_clobber: bool ,
100101 ) -> Result <( ) , & ' static str > {
@@ -118,11 +119,11 @@ macro_rules! def_regs {
118119 pub ( super ) fn fill_reg_map(
119120 _arch: super :: InlineAsmArch ,
120121 _reloc_model: crate :: spec:: RelocModel ,
121- _target_features: & rustc_data_structures:: fx:: FxHashSet <Symbol >,
122+ _target_features: & rustc_data_structures:: fx:: FxIndexSet <Symbol >,
122123 _target: & crate :: spec:: Target ,
123124 _map: & mut rustc_data_structures:: fx:: FxHashMap <
124125 super :: InlineAsmRegClass ,
125- rustc_data_structures:: fx:: FxHashSet <super :: InlineAsmReg >,
126+ rustc_data_structures:: fx:: FxIndexSet <super :: InlineAsmReg >,
126127 >,
127128 ) {
128129 #[ allow( unused_imports) ]
@@ -334,7 +335,7 @@ impl InlineAsmReg {
334335 self ,
335336 arch : InlineAsmArch ,
336337 reloc_model : RelocModel ,
337- target_features : & FxHashSet < Symbol > ,
338+ target_features : & FxIndexSet < Symbol > ,
338339 target : & Target ,
339340 is_clobber : bool ,
340341 ) -> Result < ( ) , & ' static str > {
@@ -701,9 +702,9 @@ impl fmt::Display for InlineAsmType {
701702pub fn allocatable_registers (
702703 arch : InlineAsmArch ,
703704 reloc_model : RelocModel ,
704- target_features : & FxHashSet < Symbol > ,
705+ target_features : & FxIndexSet < Symbol > ,
705706 target : & crate :: spec:: Target ,
706- ) -> FxHashMap < InlineAsmRegClass , FxHashSet < InlineAsmReg > > {
707+ ) -> FxHashMap < InlineAsmRegClass , FxIndexSet < InlineAsmReg > > {
707708 match arch {
708709 InlineAsmArch :: X86 | InlineAsmArch :: X86_64 => {
709710 let mut map = x86:: regclass_map ( ) ;
0 commit comments