• Status New
  • Percent Complete
    0%
  • Task Type Bug Report
  • Category Packages → Packages: Build-list
  • Assigned To No-one
  • Operating System i686
  • Severity High
  • Priority High
  • Reported Version
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Archlinux32
Opened by Andreas Baumann - 09.05.2019
Last edited by Andreas Baumann - 09.05.2019

FS#69 - firefox breaks heavily in micro-optimized code

The root cause is rust is not recompiling currently.

The log in detail:

14:57.22 error[E0432]: unresolved import `simd_funcs`                                                                                                                                                               
14:57.22   --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/x_user_defined.rs:16:1                                                                                                           3                                                                                                               
14:57.22    |                                                                                                                                                   
14:57.22 16 |         use simd_funcs::*;                                                                                                                                                                            
14:57.22    |             ^^^^^^^^^^ maybe a missing `extern crate simd_funcs;`?                                                                                                                                    
14:57.22 error[E0432]: unresolved import `packed_simd`                                                                                                                                                              
14:57.22   --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/x_user_defined.rs:17:1                                                                                                           3                                                                                                               
14:57.22    |                                                                                                                                                   
14:57.22 17 |         use packed_simd::u16x8;                                                                                                                                                                       
14:57.22    |             ^^^^^^^^^^^ maybe a missing `extern crate packed_simd;`?                                                                                                                                  
14:57.45 error[E0425]: cannot find function `load16_unaligned` in this scope                                                                                                                                        
14:57.45    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/x_user_defined.rs:120                                                                                                           :34                                                                                                                     
14:57.45     |                                                                                                                                                      
14:57.45 120 |             let input = unsafe { load16_unaligned(src_ptr.add(i * 16)) };                                                                                                                            
14:57.45     |                                  ^^^^^^^^^^^^^^^^ not found in this scope                                                                                                                            
14:57.45 error[E0425]: cannot find function `simd_unpack` in this scope                                                                                                                                             
14:57.45    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/x_user_defined.rs:121                                                                                                           :35                                                                                                                     
14:57.45     |                                                                                                                                                      
14:57.45 121 |             let (first, second) = simd_unpack(input);                                                                                                                                                
14:57.45     |                                   ^^^^^^^^^^^ not found in this scope                                                                                                                                
14:57.45 error[E0425]: cannot find function `store8_unaligned` in this scope                                                                                                                                        
14:57.45    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/x_user_defined.rs:123                                                                                                           :17                                                                                                                     
14:57.45     |                                                                                                                                                      
14:57.45 123 |                 store8_unaligned(dst_ptr.add(i * 16), shift_upper(first));                                                                                                                           
14:57.45     |                 ^^^^^^^^^^^^^^^^ not found in this scope                                                                                                                                             
14:57.45 error[E0425]: cannot find function `store8_unaligned` in this scope                                                                                                                                        
14:57.45    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/x_user_defined.rs:124                                                                                                           :17                                                                                                                     
14:57.45     |                                                                                                                                                      
14:57.45 124 |                 store8_unaligned(dst_ptr.add((i * 16) + 8), shift_upper(second));                                                                                                                    
14:57.45     |                 ^^^^^^^^^^^^^^^^ not found in this scope                                                                                                                                             
14:57.46 error[E0412]: cannot find type `u16x8` in this scope                                                                                                                                                       
14:57.46    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:121:40                                                                                                               
14:57.46     |                                                                                                                                                      
14:57.46 121 |     pub fn simd_at(&self, i: usize) -> u16x8 {                                                                                                                                                       
14:57.46     |                                        ^^^^^ not found in this scope                                                                                                                                 
14:57.46 error[E0425]: cannot find value `SIMD_STRIDE_SIZE` in this scope                                                                                                                                           
14:57.46    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:122:21                                                                                                               
14:57.46     |                                                                                                                                                      
14:57.46 122 |         assert!(i + SIMD_STRIDE_SIZE / 2 <= self.len);                                                                                                                                               
14:57.46     |                     ^^^^^^^^^^^^^^^^ help: a constant with a similar name exists: `ALU_STR                                                                                                           IDE_SIZE`                                                                                                                                       
14:57.47 error[E0425]: cannot find function `to_u16_lanes` in this scope                                                                                                                                            
14:57.47    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:124:18                                                                                                               
14:57.47     |                                                                                                                                                      
14:57.47 124 |         unsafe { to_u16_lanes(load16_unaligned(self.ptr.add(byte_index))) }                                                                                                                          
14:57.47     |                  ^^^^^^^^^^^^ not found in this scope                                                                                                                                                
14:57.47 error[E0425]: cannot find function `load16_unaligned` in this scope                                                                                                                                        
14:57.47    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:124:31                                                                                                               
14:57.47     |                                                                                                                                                      
14:57.47 124 |         unsafe { to_u16_lanes(load16_unaligned(self.ptr.add(byte_index))) }                                                                                                                          
14:57.47     |                               ^^^^^^^^^^^^^^^^ not found in this scope                                                                                                                               
14:57.47 error[E0425]: cannot find value `SIMD_STRIDE_SIZE` in this scope                                                                                                                                           
14:57.47    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:145:12                                                                                                               
14:57.47     |                                                                                                                                                      
14:57.47 145 |         if SIMD_STRIDE_SIZE / 2 <= self.len {                                                                                                                                                        
14:57.47     |            ^^^^^^^^^^^^^^^^ help: a constant with a similar name exists: `ALU_STRIDE_SIZE`                                                                                                           
14:57.48 error[E0425]: cannot find value `SIMD_STRIDE_SIZE` in this scope                                                                                                                                           
14:57.48    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:146:47                                                                                                               
14:57.48     |                                                                                                                                                      
14:57.48 146 |             let len_minus_stride = self.len - SIMD_STRIDE_SIZE / 2;                                                                                                                                  
14:57.48     |                                               ^^^^^^^^^^^^^^^^ help: a constant with a sim                                                                                                           ilar name exists: `ALU_STRIDE_SIZE`                                                                                                                                                                                 
14:57.48 error[E0425]: cannot find function `simd_byte_swap` in this scope                                                                                                                                          
14:57.48    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:150:28                                                                                                               
14:57.48     |                                                                                                                                                      
14:57.48 150 |                     simd = simd_byte_swap(simd);                                                                                                                                                     
14:57.48     |                            ^^^^^^^^^^^^^^ not found in this scope                                                                                                                                    
14:57.49 error[E0425]: cannot find function `store8_unaligned` in this scope                                                                                                                                        
14:57.49    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:153:21                                                                                                               
14:57.49     |                                                                                                                                                      
14:57.49 153 |                     store8_unaligned(other.as_mut_ptr().add(offset), simd);                                                                                                                          
14:57.49     |                     ^^^^^^^^^^^^^^^^ not found in this scope                                                                                                                                         
14:57.49 error[E0425]: cannot find function `contains_surrogates` in this scope                                                                                                                                     
14:57.49    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:155:20                                                                                                               
14:57.49     |                                                                                                                                                      
14:57.49 155 |                 if contains_surrogates(simd) {                                                                                                                                                       
14:57.49     |                    ^^^^^^^^^^^^^^^^^^^ not found in this scope                                                                                                                                       
14:57.49 error[E0425]: cannot find value `SIMD_STRIDE_SIZE` in this scope                                                                                                                                           
14:57.49    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:158:27                                                                                                               
14:57.49     |                                                                                                                                                      
14:57.49 158 |                 offset += SIMD_STRIDE_SIZE / 2;                                                                                                                                                      
14:57.49     |                           ^^^^^^^^^^^^^^^^ help: a constant with a similar name exists: `A                                                                                                           LU_STRIDE_SIZE`                                                                                                                                                         
14:57.50 error[E0425]: cannot find value `SIMD_STRIDE_SIZE` in this scope                                                                                                                                           
14:57.50    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:237:8                                                                                                                
14:57.50     |                                                                                                                                                      
14:57.50 237 |     if SIMD_STRIDE_SIZE <= len {                                                                                                                                                                     
14:57.50     |        ^^^^^^^^^^^^^^^^ help: a constant with a similar name exists: `ALU_STRIDE_SIZE`                                                                                                               
14:57.50 error[E0425]: cannot find value `SIMD_STRIDE_SIZE` in this scope                                                                                                                                           
14:57.50 error[E0425]: cannot find value `SIMD_STRIDE_SIZE` in this scope
14:57.50    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:237:8
14:57.50     |
14:57.50 237 |     if SIMD_STRIDE_SIZE <= len {
14:57.50     |        ^^^^^^^^^^^^^^^^ help: a constant with a similar name exists: `ALU_STRIDE_SIZE`
14:57.50 error[E0425]: cannot find value `SIMD_STRIDE_SIZE` in this scope
14:57.50    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:238:38
14:57.50     |
14:57.50 238 |         let len_minus_stride = len - SIMD_STRIDE_SIZE;
14:57.50     |                                      ^^^^^^^^^^^^^^^^ help: a constant with a similar name exists: `ALU_STRIDE_SIZE`
14:57.51 error[E0425]: cannot find value `SIMD_STRIDE_SIZE` in this scope
14:57.51    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:241:52
14:57.51     |
14:57.51 241 |             let mut second = src.simd_at(offset + (SIMD_STRIDE_SIZE / 2));
14:57.51     |                                                    ^^^^^^^^^^^^^^^^ help: a constant with a similar name exists: `ALU_STRIDE_SIZE`
14:57.51 error[E0425]: cannot find function `simd_byte_swap` in this scope
14:57.51    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:243:25
14:57.51     |
14:57.51 243 |                 first = simd_byte_swap(first);
14:57.51     |                         ^^^^^^^^^^^^^^ not found in this scope
14:57.52 error[E0425]: cannot find function `simd_byte_swap` in this scope
14:57.52    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:244:26
14:57.52     |
14:57.52 244 |                 second = simd_byte_swap(second);
14:57.52     |                          ^^^^^^^^^^^^^^ not found in this scope
14:57.52 error[E0425]: cannot find function `simd_is_basic_latin` in this scope
14:57.52    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:246:17
14:57.52     |
14:57.52 246 |             if !simd_is_basic_latin(first | second) {
14:57.52     |                 ^^^^^^^^^^^^^^^^^^^ help: a function with a similar name exists: `ascii_to_basic_latin`
14:57.52 error[E0425]: cannot find function `simd_pack` in this scope
14:57.52    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:249:26
14:57.52     |
14:57.52 249 |             let packed = simd_pack(first, second);
14:57.52     |                          ^^^^^^^^^ not found in this scope
14:57.53 error[E0425]: cannot find function `store16_unaligned` in this scope
14:57.53    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:251:17
14:57.53     |
14:57.53 251 |                 store16_unaligned(dst.as_mut_ptr().add(offset), packed);
14:57.53     |                 ^^^^^^^^^^^^^^^^^ not found in this scope
14:57.53 error[E0425]: cannot find value `SIMD_STRIDE_SIZE` in this scope
14:57.53    --> /build/firefox/src/mozilla-unified/third_party/rust/encoding_rs/src/handles.rs:253:23
14:57.53     |
14:57.53 253 |             offset += SIMD_STRIDE_SIZE;
14:57.53     |                       ^^^^^^^^^^^^^^^^ help: a constant with a similar name exists: `ALU_STRIDE_SIZE`
14:59.28 error: aborting due to 25 previous errors
14:59.28 Some errors occurred: E0412, E0425, E0432.
14:59.28 For more information about an error, try `rustc --explain E0412`.
14:59.44 error: Could not compile `encoding_rs`.
Admin
Andreas Baumann commented on 09.05.2019 19:36

Compilation of firefox continues..

14:59.44 To learn more, run the command again with --verbose.
14:59.45 make[4]: *** [/build/firefox/src/mozilla-unified/config/rules.mk:1027: force-cargo-library-build] Error 101
14:59.45 make[3]: *** [/build/firefox/src/mozilla-unified/config/recurse.mk:74: toolkit/library/rust/target] Error 2
14:59.45 make[3]: *** Waiting for unfinished jobs....
17:24.43    Compiling lalrpop v0.16.0

good build system :->

Admin
Andreas Baumann commented on 09.05.2019 19:38

Let's see how bad the situation is on pentium4, could easily be Mozilla projects get
build only for pentium4 in the future..

Admin
Andreas Baumann commented on 09.05.2019 19:46

Aha: i686 finally failed:

17:24.43    Compiling lalrpop v0.16.0
21:26.67    Compiling webidl v0.8.0
22:03.14    Compiling binjs_meta v0.4.3
22:25.46    Compiling binast v0.1.1 (/build/firefox/src/mozilla-unified/js/src/frontend/binsource)
22:58.29     Finished release [optimized] target(s) in 17m 41s
22:58.32 make[2]: *** [/build/firefox/src/mozilla-unified/config/recurse.mk:34: compile] Error 2
22:58.32 make[1]: *** [/build/firefox/src/mozilla-unified/config/rules.mk:415: default] Error 2
22:58.32 make: *** [client.mk:125: build] Error 2
22:58.33 0 compiler warnings present.
Admin
Andreas Baumann commented on 10.05.2019 05:59

pentium4 seems to work fine.

Levi commented on 16.05.2019 21:08

So, is this getting dropped for i686 then? Probably no great loss; I remember when I was using a P3 in my server box, I gave up trying to use anything graphical, and just used links when I needed to look something up on t'internet.

I note in the i686 repo there's currently a firefox 65.x rather than the 66.x we've got in pentium4, and some language packs that are 66 and some that are 65. English and all its variants are still on 65.x, but I note that it looks broken to me for German or Finnish users. Time to put it out of its misery?

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing