1/* PR target/12898 2 0x8000 needs multiple instructions to be emitted on Alpha; the 3 fluff around it causes it to be emitted in a no_new_pseudos 4 context, which triggered a problem in alpha.c. */ 5 6void f (const char *, ...); 7int g (void); 8void *p (void); 9 10int isymBase, ilineBase, sym_hdr, want_line, proc_desc; 11char *lines; 12 13void print_file_desc (int *fdp) 14{ 15 char *str_base = p (); 16 int symi, pdi = g (); 17 18 for (symi = 0; isymBase;) 19 { 20 int proc_ptr = proc_desc + pdi; 21 f("1", isymBase, proc_ptr + *fdp, str_base); 22 if (want_line && *fdp) 23 { 24 int delta; 25 long cur_line = proc_ptr; 26 char *line_ptr = lines + proc_ptr; 27 char *line_end = p (); 28 29 f("2", sym_hdr); 30 while (line_ptr < line_end) 31 { 32 delta = *line_ptr; 33 if (delta) 34 line_ptr++; 35 else 36 delta = line_ptr[1] ^ 0x8000; 37 f("3", cur_line, delta); 38 } 39 } 40 } 41} 42