@@ -19,6 +19,11 @@ impl VirtAddr {
1919 VirtAddr ( addr)
2020 }
2121
22+ #[ cfg( not( any( riscv32, riscv64) ) ) ]
23+ pub fn new ( _addr : usize ) -> VirtAddr {
24+ unimplemented ! ( )
25+ }
26+
2227 pub fn as_usize ( & self ) -> usize {
2328 self . 0
2429 }
@@ -37,29 +42,47 @@ impl VirtAddr {
3742 pub fn p2_index ( & self ) -> usize {
3843 self . 0 . get_bits ( 21 ..30 )
3944 }
45+
4046 #[ cfg( riscv32) ]
4147 pub fn p2_index ( & self ) -> usize {
4248 self . 0 . get_bits ( 22 ..32 )
4349 }
4450
51+ #[ cfg( not( any( riscv32, riscv64) ) ) ]
52+ pub fn p2_index ( & self ) -> usize {
53+ unimplemented ! ( )
54+ }
55+
4556 #[ cfg( riscv64) ]
4657 pub fn p1_index ( & self ) -> usize {
4758 return self . 0 . get_bits ( 12 ..21 ) ;
4859 }
60+
4961 #[ cfg( riscv32) ]
5062 pub fn p1_index ( & self ) -> usize {
5163 return self . 0 . get_bits ( 12 ..22 ) ;
5264 }
5365
66+ #[ cfg( not( any( riscv32, riscv64) ) ) ]
67+ pub fn p1_index ( & self ) -> usize {
68+ unimplemented ! ( )
69+ }
70+
5471 #[ cfg( riscv64) ]
5572 pub fn page_number ( & self ) -> usize {
5673 self . 0 . get_bits ( 12 ..64 )
5774 }
75+
5876 #[ cfg( riscv32) ]
5977 pub fn page_number ( & self ) -> usize {
6078 self . 0 . get_bits ( 12 ..32 )
6179 }
6280
81+ #[ cfg( not( any( riscv32, riscv64) ) ) ]
82+ pub fn page_number ( & self ) -> usize {
83+ unimplemented ! ( )
84+ }
85+
6386 pub fn page_offset ( & self ) -> usize {
6487 self . 0 . get_bits ( 0 ..12 )
6588 }
@@ -122,6 +145,11 @@ impl PhysAddr {
122145 PhysAddr ( addr)
123146 }
124147
148+ #[ cfg( not( any( riscv32, riscv64) ) ) ]
149+ pub fn new ( _addr : usize ) -> PhysAddr {
150+ unimplemented ! ( )
151+ }
152+
125153 pub fn as_usize ( & self ) -> usize {
126154 self . 0
127155 }
@@ -146,24 +174,41 @@ impl PhysAddr {
146174 self . 0 . get_bits ( 22 ..32 )
147175 }
148176
177+ #[ cfg( not( any( riscv32, riscv64) ) ) ]
178+ pub fn p2_index ( & self ) -> usize {
179+ unimplemented ! ( )
180+ }
181+
149182 #[ cfg( riscv64) ]
150183 pub fn p1_index ( & self ) -> usize {
151184 self . 0 . get_bits ( 12 ..21 ) as usize
152185 }
186+
153187 #[ cfg( riscv32) ]
154188 pub fn p1_index ( & self ) -> usize {
155189 self . 0 . get_bits ( 12 ..22 )
156190 }
157191
192+ #[ cfg( not( any( riscv32, riscv64) ) ) ]
193+ pub fn p1_index ( & self ) -> usize {
194+ unimplemented ! ( )
195+ }
196+
158197 #[ cfg( riscv64) ]
159198 pub fn page_number ( & self ) -> usize {
160199 self . 0 . get_bits ( 12 ..64 ) as usize
161200 }
201+
162202 #[ cfg( riscv32) ]
163203 pub fn page_number ( & self ) -> usize {
164204 self . 0 . get_bits ( 12 ..32 )
165205 }
166206
207+ #[ cfg( not( any( riscv32, riscv64) ) ) ]
208+ pub fn page_number ( & self ) -> usize {
209+ unimplemented ! ( )
210+ }
211+
167212 pub fn page_offset ( & self ) -> usize {
168213 self . 0 . get_bits ( 0 ..12 )
169214 }
0 commit comments