Merge pull request #163 from cloudswei/ctlframe_injection
[open-ath9k-htc-firmware.git] / local / patches / binutils-2.34_fixup.patch
1 From 4706172d220e9755008c77d780895382025c794c Mon Sep 17 00:00:00 2001
2 From: Oleksij Rempel <linux@rempel-privat.de>
3 Date: Sun, 23 Feb 2020 08:36:18 +0100
4 Subject: [PATCH 1/2] revert: ubsan: xtensa: left shift cannot be represented
5  in type 'int'
6
7 Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
8 ---
9  bfd/xtensa-modules.c | 1528 ++++++++++++++++++++++++++----------------
10  1 file changed, 962 insertions(+), 566 deletions(-)
11
12 diff --git a/bfd/xtensa-modules.c b/bfd/xtensa-modules.c
13 index 9af5653313..785dfe7aa0 100644
14 --- a/bfd/xtensa-modules.c
15 +++ b/bfd/xtensa-modules.c
16 @@ -302,1356 +302,1539 @@ static xtensa_state_internal states[] = {
17  static unsigned
18  Field_t_Slot_inst_get (const xtensa_insnbuf insn)
19  {
20 -  unsigned tie_t = (insn[0] >> 4) & 0xf;
21 +  unsigned tie_t = 0;
22 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
23    return tie_t;
24  }
25  
26  static void
27  Field_t_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
28  {
29 -  uint32 tie_t = val & 0xf;
30 +  uint32 tie_t;
31 +  tie_t = (val << 28) >> 28;
32    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
33  }
34  
35  static unsigned
36  Field_t_Slot_inst16a_get (const xtensa_insnbuf insn)
37  {
38 -  unsigned tie_t = ((insn[0] >> 4) & 0xf);
39 +  unsigned tie_t = 0;
40 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
41    return tie_t;
42  }
43  
44  static void
45  Field_t_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
46  {
47 -  uint32 tie_t = val & 0xf;
48 +  uint32 tie_t;
49 +  tie_t = (val << 28) >> 28;
50    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
51  }
52  
53  static unsigned
54  Field_t_Slot_inst16b_get (const xtensa_insnbuf insn)
55  {
56 -  unsigned tie_t = (insn[0] >> 4) & 0xf;
57 +  unsigned tie_t = 0;
58 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
59    return tie_t;
60  }
61  
62  static void
63  Field_t_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
64  {
65 -  uint32 tie_t = val & 0xf;
66 +  uint32 tie_t;
67 +  tie_t = (val << 28) >> 28;
68    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
69  }
70  
71  static unsigned
72  Field_t_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
73  {
74 -  unsigned tie_t = insn[0] & 0xf;
75 +  unsigned tie_t = 0;
76 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
77    return tie_t;
78  }
79  
80  static void
81  Field_t_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
82  {
83 -  uint32 tie_t = val & 0xf;
84 +  uint32 tie_t;
85 +  tie_t = (val << 28) >> 28;
86    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
87  }
88  
89  static unsigned
90  Field_t_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
91  {
92 -  unsigned tie_t = insn[0] & 0xf;
93 +  unsigned tie_t = 0;
94 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
95    return tie_t;
96  }
97  
98  static void
99  Field_t_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
100  {
101 -  uint32 tie_t = val & 0xf;
102 +  uint32 tie_t;
103 +  tie_t = (val << 28) >> 28;
104    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
105  }
106  
107  static unsigned
108  Field_t_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
109  {
110 -  unsigned tie_t = insn[0] & 0xf;
111 +  unsigned tie_t = 0;
112 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
113    return tie_t;
114  }
115  
116  static void
117  Field_t_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
118  {
119 -  uint32 tie_t = val & 0xf;
120 +  uint32 tie_t;
121 +  tie_t = (val << 28) >> 28;
122    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
123  }
124  
125  static unsigned
126  Field_t_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
127  {
128 -  unsigned tie_t = insn[0] & 0xf;
129 +  unsigned tie_t = 0;
130 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
131    return tie_t;
132  }
133  
134  static void
135  Field_t_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
136  {
137 -  uint32 tie_t = val & 0xf;
138 +  uint32 tie_t;
139 +  tie_t = (val << 28) >> 28;
140    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
141  }
142  
143  static unsigned
144  Field_bbi4_Slot_inst_get (const xtensa_insnbuf insn)
145  {
146 -  unsigned tie_t = (insn[0] >> 12) & 1;
147 +  unsigned tie_t = 0;
148 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
149    return tie_t;
150  }
151  
152  static void
153  Field_bbi4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
154  {
155 -  uint32 tie_t = val & 1;
156 +  uint32 tie_t;
157 +  tie_t = (val << 31) >> 31;
158    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
159  }
160  
161  static unsigned
162  Field_bbi_Slot_inst_get (const xtensa_insnbuf insn)
163  {
164 -  unsigned tie_t = (insn[0] >> 12) & 1;
165 -  tie_t = (tie_t << 4) | ((insn[0] >> 4) & 0xf);
166 +  unsigned tie_t = 0;
167 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
168 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
169    return tie_t;
170  }
171  
172  static void
173  Field_bbi_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
174  {
175 -  uint32 tie_t = val & 0xf;
176 +  uint32 tie_t;
177 +  tie_t = (val << 28) >> 28;
178    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
179 -  tie_t = (val >> 4) & 1;
180 +  tie_t = (val << 27) >> 31;
181    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
182  }
183  
184  static unsigned
185  Field_bbi_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
186  {
187 -  unsigned tie_t = (insn[0] >> 26) & 1;
188 -  tie_t = (tie_t << 4) | (insn[0] & 0xf);
189 +  unsigned tie_t = 0;
190 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
191 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
192    return tie_t;
193  }
194  
195  static void
196  Field_bbi_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
197  {
198 -  uint32 tie_t = val & 0xf;
199 +  uint32 tie_t;
200 +  tie_t = (val << 28) >> 28;
201    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
202 -  tie_t = (val >> 4) & 1;
203 +  tie_t = (val << 27) >> 31;
204    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
205  }
206  
207  static unsigned
208  Field_imm12_Slot_inst_get (const xtensa_insnbuf insn)
209  {
210 -  unsigned tie_t = (insn[0] >> 12) & 0xfff;
211 +  unsigned tie_t = 0;
212 +  tie_t = (tie_t << 12) | ((insn[0] << 8) >> 20);
213    return tie_t;
214  }
215  
216  static void
217  Field_imm12_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
218  {
219 -  uint32 tie_t = val & 0xfff;
220 +  uint32 tie_t;
221 +  tie_t = (val << 20) >> 20;
222    insn[0] = (insn[0] & ~0xfff000) | (tie_t << 12);
223  }
224  
225  static unsigned
226  Field_imm8_Slot_inst_get (const xtensa_insnbuf insn)
227  {
228 -  unsigned tie_t = (insn[0] >> 16) & 0xff;
229 +  unsigned tie_t = 0;
230 +  tie_t = (tie_t << 8) | ((insn[0] << 8) >> 24);
231    return tie_t;
232  }
233  
234  static void
235  Field_imm8_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
236  {
237 -  uint32 tie_t = val & 0xff;
238 +  uint32 tie_t;
239 +  tie_t = (val << 24) >> 24;
240    insn[0] = (insn[0] & ~0xff0000) | (tie_t << 16);
241  }
242  
243  static unsigned
244  Field_imm8_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
245  {
246 -  unsigned tie_t = (insn[0] >> 12) & 0xff;
247 +  unsigned tie_t = 0;
248 +  tie_t = (tie_t << 8) | ((insn[0] << 12) >> 24);
249    return tie_t;
250  }
251  
252  static void
253  Field_imm8_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
254  {
255 -  uint32 tie_t = val & 0xff;
256 +  uint32 tie_t;
257 +  tie_t = (val << 24) >> 24;
258    insn[0] = (insn[0] & ~0xff000) | (tie_t << 12);
259  }
260  
261  static unsigned
262  Field_imm8_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
263  {
264 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
265 -  tie_t = (tie_t << 4) | ((insn[0] >> 4) & 0xf);
266 +  unsigned tie_t = 0;
267 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
268 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
269    return tie_t;
270  }
271  
272  static void
273  Field_imm8_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
274  {
275 -  uint32 tie_t = val & 0xf;
276 +  uint32 tie_t;
277 +  tie_t = (val << 28) >> 28;
278    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
279 -  tie_t = (val >> 4) & 0xf;
280 +  tie_t = (val << 24) >> 28;
281    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
282  }
283  
284  static unsigned
285  Field_s_Slot_inst_get (const xtensa_insnbuf insn)
286  {
287 -  unsigned tie_t = (insn[0] >> 8) & 0xf;
288 +  unsigned tie_t = 0;
289 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
290    return tie_t;
291  }
292  
293  static void
294  Field_s_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
295  {
296 -  uint32 tie_t = val & 0xf;
297 +  uint32 tie_t;
298 +  tie_t = (val << 28) >> 28;
299    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
300  }
301  
302  static unsigned
303  Field_s_Slot_inst16a_get (const xtensa_insnbuf insn)
304  {
305 -  unsigned tie_t = (insn[0] >> 8) & 0xf;
306 +  unsigned tie_t = 0;
307 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
308    return tie_t;
309  }
310  
311  static void
312  Field_s_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
313  {
314 -  uint32 tie_t = val & 0xf;
315 +  uint32 tie_t;
316 +  tie_t = (val << 28) >> 28;
317    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
318  }
319  
320  static unsigned
321  Field_s_Slot_inst16b_get (const xtensa_insnbuf insn)
322  {
323 -  unsigned tie_t = (insn[0] >> 8) & 0xf;
324 +  unsigned tie_t = 0;
325 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
326    return tie_t;
327  }
328  
329  static void
330  Field_s_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
331  {
332 -  uint32 tie_t = val & 0xf;
333 +  uint32 tie_t;
334 +  tie_t = (val << 28) >> 28;
335    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
336  }
337  
338  static unsigned
339  Field_s_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
340  {
341 -  unsigned tie_t = (insn[0] >> 4) & 0xf;
342 +  unsigned tie_t = 0;
343 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
344    return tie_t;
345  }
346  
347  static void
348  Field_s_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
349  {
350 -  uint32 tie_t = val & 0xf;
351 +  uint32 tie_t;
352 +  tie_t = (val << 28) >> 28;
353    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
354  }
355  
356  static unsigned
357  Field_s_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
358  {
359 -  unsigned tie_t = (insn[0] >> 8) & 0xf;
360 +  unsigned tie_t = 0;
361 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
362    return tie_t;
363  }
364  
365  static void
366  Field_s_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
367  {
368 -  uint32 tie_t = val & 0xf;
369 +  uint32 tie_t;
370 +  tie_t = (val << 28) >> 28;
371    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
372  }
373  
374  static unsigned
375  Field_s_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
376  {
377 -  unsigned tie_t = (insn[0] >> 8) & 0xf;
378 +  unsigned tie_t = 0;
379 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
380    return tie_t;
381  }
382  
383  static void
384  Field_s_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
385  {
386 -  uint32 tie_t = val & 0xf;
387 +  uint32 tie_t;
388 +  tie_t = (val << 28) >> 28;
389    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
390  }
391  
392  static unsigned
393  Field_s_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
394  {
395 -  unsigned tie_t = (insn[0] >> 4) & 0xf;
396 +  unsigned tie_t = 0;
397 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
398    return tie_t;
399  }
400  
401  static void
402  Field_s_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
403  {
404 -  uint32 tie_t = val & 0xf;
405 +  uint32 tie_t;
406 +  tie_t = (val << 28) >> 28;
407    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
408  }
409  
410  static unsigned
411  Field_imm12b_Slot_inst_get (const xtensa_insnbuf insn)
412  {
413 -  unsigned tie_t = (insn[0] >> 8) & 0xf;
414 -  tie_t = (tie_t << 8) | ((insn[0] >> 16) & 0xff);
415 +  unsigned tie_t = 0;
416 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
417 +  tie_t = (tie_t << 8) | ((insn[0] << 8) >> 24);
418    return tie_t;
419  }
420  
421  static void
422  Field_imm12b_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
423  {
424 -  uint32 tie_t = val & 0xff;
425 +  uint32 tie_t;
426 +  tie_t = (val << 24) >> 24;
427    insn[0] = (insn[0] & ~0xff0000) | (tie_t << 16);
428 -  tie_t = (val >> 8) & 0xf;
429 +  tie_t = (val << 20) >> 28;
430    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
431  }
432  
433  static unsigned
434  Field_imm12b_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
435  {
436 -  unsigned tie_t = (insn[0] >> 4) & 0xf;
437 -  tie_t = (tie_t << 8) | ((insn[0] >> 12) & 0xff);
438 +  unsigned tie_t = 0;
439 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
440 +  tie_t = (tie_t << 8) | ((insn[0] << 12) >> 24);
441    return tie_t;
442  }
443  
444  static void
445  Field_imm12b_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
446  {
447 -  uint32 tie_t = val & 0xff;
448 +  uint32 tie_t;
449 +  tie_t = (val << 24) >> 24;
450    insn[0] = (insn[0] & ~0xff000) | (tie_t << 12);
451 -  tie_t = (val >> 8) & 0xf;
452 +  tie_t = (val << 20) >> 28;
453    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
454  }
455  
456  static unsigned
457  Field_imm12b_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
458  {
459 -  unsigned tie_t = (insn[0] >> 4) & 0xfff;
460 +  unsigned tie_t = 0;
461 +  tie_t = (tie_t << 12) | ((insn[0] << 16) >> 20);
462    return tie_t;
463  }
464  
465  static void
466  Field_imm12b_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
467  {
468 -  uint32 tie_t = val & 0xfff;
469 +  uint32 tie_t;
470 +  tie_t = (val << 20) >> 20;
471    insn[0] = (insn[0] & ~0xfff0) | (tie_t << 4);
472  }
473  
474  static unsigned
475  Field_imm16_Slot_inst_get (const xtensa_insnbuf insn)
476  {
477 -  unsigned tie_t = (insn[0] >> 8) & 0xffff;
478 +  unsigned tie_t = 0;
479 +  tie_t = (tie_t << 16) | ((insn[0] << 8) >> 16);
480    return tie_t;
481  }
482  
483  static void
484  Field_imm16_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
485  {
486 -  uint32 tie_t = val & 0xffff;
487 +  uint32 tie_t;
488 +  tie_t = (val << 16) >> 16;
489    insn[0] = (insn[0] & ~0xffff00) | (tie_t << 8);
490  }
491  
492  static unsigned
493  Field_imm16_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
494  {
495 -  unsigned tie_t = (insn[0] >> 4) & 0xffff;
496 +  unsigned tie_t = 0;
497 +  tie_t = (tie_t << 16) | ((insn[0] << 12) >> 16);
498    return tie_t;
499  }
500  
501  static void
502  Field_imm16_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
503  {
504 -  uint32 tie_t = val & 0xffff;
505 +  uint32 tie_t;
506 +  tie_t = (val << 16) >> 16;
507    insn[0] = (insn[0] & ~0xffff0) | (tie_t << 4);
508  }
509  
510  static unsigned
511  Field_m_Slot_inst_get (const xtensa_insnbuf insn)
512  {
513 -  unsigned tie_t = (insn[0] >> 6) & 3;
514 +  unsigned tie_t = 0;
515 +  tie_t = (tie_t << 2) | ((insn[0] << 24) >> 30);
516    return tie_t;
517  }
518  
519  static void
520  Field_m_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
521  {
522 -  uint32 tie_t = val & 3;
523 +  uint32 tie_t;
524 +  tie_t = (val << 30) >> 30;
525    insn[0] = (insn[0] & ~0xc0) | (tie_t << 6);
526  }
527  
528  static unsigned
529  Field_m_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
530  {
531 -  unsigned tie_t = (insn[0] >> 2) & 3;
532 +  unsigned tie_t = 0;
533 +  tie_t = (tie_t << 2) | ((insn[0] << 28) >> 30);
534    return tie_t;
535  }
536  
537  static void
538  Field_m_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
539  {
540 -  uint32 tie_t = val & 3;
541 +  uint32 tie_t;
542 +  tie_t = (val << 30) >> 30;
543    insn[0] = (insn[0] & ~0xc) | (tie_t << 2);
544  }
545  
546  static unsigned
547  Field_n_Slot_inst_get (const xtensa_insnbuf insn)
548  {
549 -  unsigned tie_t = (insn[0] >> 4) & 3;
550 +  unsigned tie_t = 0;
551 +  tie_t = (tie_t << 2) | ((insn[0] << 26) >> 30);
552    return tie_t;
553  }
554  
555  static void
556  Field_n_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
557  {
558 -  uint32 tie_t = val & 3;
559 +  uint32 tie_t;
560 +  tie_t = (val << 30) >> 30;
561    insn[0] = (insn[0] & ~0x30) | (tie_t << 4);
562  }
563  
564  static unsigned
565  Field_n_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
566  {
567 -  unsigned tie_t = insn[0] & 3;
568 +  unsigned tie_t = 0;
569 +  tie_t = (tie_t << 2) | ((insn[0] << 30) >> 30);
570    return tie_t;
571  }
572  
573  static void
574  Field_n_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
575  {
576 -  uint32 tie_t = val & 3;
577 +  uint32 tie_t;
578 +  tie_t = (val << 30) >> 30;
579    insn[0] = (insn[0] & ~0x3) | (tie_t << 0);
580  }
581  
582  static unsigned
583  Field_offset_Slot_inst_get (const xtensa_insnbuf insn)
584  {
585 -  unsigned tie_t = (insn[0] >> 6) & 0x3ffff;
586 +  unsigned tie_t = 0;
587 +  tie_t = (tie_t << 18) | ((insn[0] << 8) >> 14);
588    return tie_t;
589  }
590  
591  static void
592  Field_offset_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
593  {
594 -  uint32 tie_t = val & 0x3ffff;
595 +  uint32 tie_t;
596 +  tie_t = (val << 14) >> 14;
597    insn[0] = (insn[0] & ~0xffffc0) | (tie_t << 6);
598  }
599  
600  static unsigned
601  Field_offset_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
602  {
603 -  unsigned tie_t = insn[0] & 0x3ffff;
604 +  unsigned tie_t = 0;
605 +  tie_t = (tie_t << 18) | ((insn[0] << 14) >> 14);
606    return tie_t;
607  }
608  
609  static void
610  Field_offset_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
611  {
612 -  uint32 tie_t = val & 0x3ffff;
613 +  uint32 tie_t;
614 +  tie_t = (val << 14) >> 14;
615    insn[0] = (insn[0] & ~0x3ffff) | (tie_t << 0);
616  }
617  
618  static unsigned
619  Field_op0_Slot_inst_get (const xtensa_insnbuf insn)
620  {
621 -  unsigned tie_t = insn[0] & 0xf;
622 +  unsigned tie_t = 0;
623 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
624    return tie_t;
625  }
626  
627  static void
628  Field_op0_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
629  {
630 -  uint32 tie_t = val & 0xf;
631 +  uint32 tie_t;
632 +  tie_t = (val << 28) >> 28;
633    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
634  }
635  
636  static unsigned
637  Field_op0_Slot_inst16a_get (const xtensa_insnbuf insn)
638  {
639 -  unsigned tie_t = insn[0] & 0xf;
640 +  unsigned tie_t = 0;
641 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
642    return tie_t;
643  }
644  
645  static void
646  Field_op0_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
647  {
648 -  uint32 tie_t = val & 0xf;
649 +  uint32 tie_t;
650 +  tie_t = (val << 28) >> 28;
651    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
652  }
653  
654  static unsigned
655  Field_op0_Slot_inst16b_get (const xtensa_insnbuf insn)
656  {
657 -  unsigned tie_t = insn[0] & 0xf;
658 +  unsigned tie_t = 0;
659 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
660    return tie_t;
661  }
662  
663  static void
664  Field_op0_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
665  {
666 -  uint32 tie_t = val & 0xf;
667 +  uint32 tie_t;
668 +  tie_t = (val << 28) >> 28;
669    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
670  }
671  
672  static unsigned
673  Field_op1_Slot_inst_get (const xtensa_insnbuf insn)
674  {
675 -  unsigned tie_t = (insn[0] >> 16) & 0xf;
676 +  unsigned tie_t = 0;
677 +  tie_t = (tie_t << 4) | ((insn[0] << 12) >> 28);
678    return tie_t;
679  }
680  
681  static void
682  Field_op1_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
683  {
684 -  uint32 tie_t = val & 0xf;
685 +  uint32 tie_t;
686 +  tie_t = (val << 28) >> 28;
687    insn[0] = (insn[0] & ~0xf0000) | (tie_t << 16);
688  }
689  
690  static unsigned
691  Field_op1_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
692  {
693 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
694 +  unsigned tie_t = 0;
695 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
696    return tie_t;
697  }
698  
699  static void
700  Field_op1_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
701  {
702 -  uint32 tie_t = val & 0xf;
703 +  uint32 tie_t;
704 +  tie_t = (val << 28) >> 28;
705    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
706  }
707  
708  static unsigned
709  Field_op2_Slot_inst_get (const xtensa_insnbuf insn)
710  {
711 -  unsigned tie_t = (insn[0] >> 20) & 0xf;
712 +  unsigned tie_t = 0;
713 +  tie_t = (tie_t << 4) | ((insn[0] << 8) >> 28);
714    return tie_t;
715  }
716  
717  static void
718  Field_op2_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
719  {
720 -  uint32 tie_t = val & 0xf;
721 +  uint32 tie_t;
722 +  tie_t = (val << 28) >> 28;
723    insn[0] = (insn[0] & ~0xf00000) | (tie_t << 20);
724  }
725  
726  static unsigned
727  Field_op2_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
728  {
729 -  unsigned tie_t = (insn[0] >> 16) & 0xf;
730 +  unsigned tie_t = 0;
731 +  tie_t = (tie_t << 4) | ((insn[0] << 12) >> 28);
732    return tie_t;
733  }
734  
735  static void
736  Field_op2_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
737  {
738 -  uint32 tie_t = val & 0xf;
739 +  uint32 tie_t;
740 +  tie_t = (val << 28) >> 28;
741    insn[0] = (insn[0] & ~0xf0000) | (tie_t << 16);
742  }
743  
744  static unsigned
745  Field_op2_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
746  {
747 -  unsigned tie_t = (insn[0] >> 8) & 0xf;
748 +  unsigned tie_t = 0;
749 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
750    return tie_t;
751  }
752  
753  static void
754  Field_op2_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
755  {
756 -  uint32 tie_t = val & 0xf;
757 +  uint32 tie_t;
758 +  tie_t = (val << 28) >> 28;
759    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
760  }
761  
762  static unsigned
763  Field_r_Slot_inst_get (const xtensa_insnbuf insn)
764  {
765 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
766 +  unsigned tie_t = 0;
767 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
768    return tie_t;
769  }
770  
771  static void
772  Field_r_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
773  {
774 -  uint32 tie_t = val & 0xf;
775 +  uint32 tie_t;
776 +  tie_t = (val << 28) >> 28;
777    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
778  }
779  
780  static unsigned
781  Field_r_Slot_inst16a_get (const xtensa_insnbuf insn)
782  {
783 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
784 +  unsigned tie_t = 0;
785 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
786    return tie_t;
787  }
788  
789  static void
790  Field_r_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
791  {
792 -  uint32 tie_t = val & 0xf;
793 +  uint32 tie_t;
794 +  tie_t = (val << 28) >> 28;
795    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
796  }
797  
798  static unsigned
799  Field_r_Slot_inst16b_get (const xtensa_insnbuf insn)
800  {
801 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
802 +  unsigned tie_t = 0;
803 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
804    return tie_t;
805  }
806  
807  static void
808  Field_r_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
809  {
810 -  uint32 tie_t = val & 0xf;
811 +  uint32 tie_t;
812 +  tie_t = (val << 28) >> 28;
813    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
814  }
815  
816  static unsigned
817  Field_r_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
818  {
819 -  unsigned tie_t = (insn[0] >> 8) & 0xf;
820 +  unsigned tie_t = 0;
821 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
822    return tie_t;
823  }
824  
825  static void
826  Field_r_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
827  {
828 -  uint32 tie_t = val & 0xf;
829 +  uint32 tie_t;
830 +  tie_t = (val << 28) >> 28;
831    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
832  }
833  
834  static unsigned
835  Field_r_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
836  {
837 -  unsigned tie_t = (insn[0] >> 4) & 0xf;
838 +  unsigned tie_t = 0;
839 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
840    return tie_t;
841  }
842  
843  static void
844  Field_r_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
845  {
846 -  uint32 tie_t = val & 0xf;
847 +  uint32 tie_t;
848 +  tie_t = (val << 28) >> 28;
849    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
850  }
851  
852  static unsigned
853  Field_r_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
854  {
855 -  unsigned tie_t = (insn[0] >> 4) & 0xf;
856 +  unsigned tie_t = 0;
857 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
858    return tie_t;
859  }
860  
861  static void
862  Field_r_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
863  {
864 -  uint32 tie_t = val & 0xf;
865 +  uint32 tie_t;
866 +  tie_t = (val << 28) >> 28;
867    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
868  }
869  
870  static unsigned
871  Field_r_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
872  {
873 -  unsigned tie_t = insn[0] & 0xf;
874 +  unsigned tie_t = 0;
875 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
876    return tie_t;
877  }
878  
879  static void
880  Field_r_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
881  {
882 -  uint32 tie_t = val & 0xf;
883 +  uint32 tie_t;
884 +  tie_t = (val << 28) >> 28;
885    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
886  }
887  
888  static unsigned
889  Field_sa4_Slot_inst_get (const xtensa_insnbuf insn)
890  {
891 -  unsigned tie_t = (insn[0] >> 20) & 1;
892 +  unsigned tie_t = 0;
893 +  tie_t = (tie_t << 1) | ((insn[0] << 11) >> 31);
894    return tie_t;
895  }
896  
897  static void
898  Field_sa4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
899  {
900 -  uint32 tie_t = val & 1;
901 +  uint32 tie_t;
902 +  tie_t = (val << 31) >> 31;
903    insn[0] = (insn[0] & ~0x100000) | (tie_t << 20);
904  }
905  
906  static unsigned
907  Field_sae4_Slot_inst_get (const xtensa_insnbuf insn)
908  {
909 -  unsigned tie_t = (insn[0] >> 16) & 1;
910 +  unsigned tie_t = 0;
911 +  tie_t = (tie_t << 1) | ((insn[0] << 15) >> 31);
912    return tie_t;
913  }
914  
915  static void
916  Field_sae4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
917  {
918 -  uint32 tie_t = val & 1;
919 +  uint32 tie_t;
920 +  tie_t = (val << 31) >> 31;
921    insn[0] = (insn[0] & ~0x10000) | (tie_t << 16);
922  }
923  
924  static unsigned
925  Field_sae4_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
926  {
927 -  unsigned tie_t = (insn[0] << 12) & 1;
928 +  unsigned tie_t = 0;
929 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
930    return tie_t;
931  }
932  
933  static void
934  Field_sae4_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
935  {
936 -  uint32 tie_t = val & 1;
937 +  uint32 tie_t;
938 +  tie_t = (val << 31) >> 31;
939    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
940  }
941  
942  static unsigned
943  Field_sae_Slot_inst_get (const xtensa_insnbuf insn)
944  {
945 -  unsigned tie_t = (insn[0] >> 16) & 1;
946 -  tie_t = (tie_t << 4) | ((insn[0] >> 8) & 0xf);
947 +  unsigned tie_t = 0;
948 +  tie_t = (tie_t << 1) | ((insn[0] << 15) >> 31);
949 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
950    return tie_t;
951  }
952  
953  static void
954  Field_sae_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
955  {
956 -  uint32 tie_t = val & 0xf;
957 +  uint32 tie_t;
958 +  tie_t = (val << 28) >> 28;
959    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
960 -  tie_t = (val >> 4) & 1;
961 +  tie_t = (val << 27) >> 31;
962    insn[0] = (insn[0] & ~0x10000) | (tie_t << 16);
963  }
964  
965  static unsigned
966  Field_sae_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
967  {
968 -  unsigned tie_t = (insn[0] >> 12) & 1;
969 -  tie_t = (tie_t << 4) | ((insn[0] >> 4) & 0xf);
970 +  unsigned tie_t = 0;
971 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
972 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
973    return tie_t;
974  }
975  
976  static void
977  Field_sae_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
978  {
979 -  uint32 tie_t = val & 0xf;
980 +  uint32 tie_t;
981 +  tie_t = (val << 28) >> 28;
982    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
983 -  tie_t = (val >> 4) & 1;
984 +  tie_t = (val << 27) >> 31;
985    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
986  }
987  
988  static unsigned
989  Field_sae_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
990  {
991 -  unsigned tie_t = (insn[0] >> 12) & 0x1f;
992 +  unsigned tie_t = 0;
993 +  tie_t = (tie_t << 5) | ((insn[0] << 15) >> 27);
994    return tie_t;
995  }
996  
997  static void
998  Field_sae_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
999  {
1000 -  uint32 tie_t = val & 0x1f;
1001 +  uint32 tie_t;
1002 +  tie_t = (val << 27) >> 27;
1003    insn[0] = (insn[0] & ~0x1f000) | (tie_t << 12);
1004  }
1005  
1006  static unsigned
1007  Field_sal_Slot_inst_get (const xtensa_insnbuf insn)
1008  {
1009 -  unsigned tie_t = (insn[0] >> 20) & 1;
1010 -  tie_t = (tie_t << 4) | ((insn[0] >> 4) & 0xf);
1011 +  unsigned tie_t = 0;
1012 +  tie_t = (tie_t << 1) | ((insn[0] << 11) >> 31);
1013 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
1014    return tie_t;
1015  }
1016  
1017  static void
1018  Field_sal_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1019  {
1020 -  uint32 tie_t = val & 0xf;
1021 +  uint32 tie_t;
1022 +  tie_t = (val << 28) >> 28;
1023    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
1024 -  tie_t = (val >> 4) & 1;
1025 +  tie_t = (val << 27) >> 31;
1026    insn[0] = (insn[0] & ~0x100000) | (tie_t << 20);
1027  }
1028  
1029  static unsigned
1030  Field_sal_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
1031  {
1032 -  unsigned tie_t = (insn[0] >> 16) & 1;
1033 -  tie_t = (tie_t << 4) | (insn[0] & 0xf);
1034 +  unsigned tie_t = 0;
1035 +  tie_t = (tie_t << 1) | ((insn[0] << 15) >> 31);
1036 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
1037    return tie_t;
1038  }
1039  
1040  static void
1041  Field_sal_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
1042  {
1043 -  uint32 tie_t = val & 0xf;
1044 +  uint32 tie_t;
1045 +  tie_t = (val << 28) >> 28;
1046    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
1047 -  tie_t = (val >> 4) & 1;
1048 +  tie_t = (val << 27) >> 31;
1049    insn[0] = (insn[0] & ~0x10000) | (tie_t << 16);
1050  }
1051  
1052  static unsigned
1053  Field_sal_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
1054  {
1055 -  unsigned tie_t = (insn[0] >> 12) & 1;
1056 -  tie_t = (tie_t << 4) | (insn[0] & 0xf);
1057 +  unsigned tie_t = 0;
1058 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
1059 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
1060    return tie_t;
1061  }
1062  
1063  static void
1064  Field_sal_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
1065  {
1066 -  uint32 tie_t = val & 0xf;
1067 +  uint32 tie_t;
1068 +  tie_t = (val << 28) >> 28;
1069    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
1070 -  tie_t = (val >> 4) & 1;
1071 +  tie_t = (val << 27) >> 31;
1072    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
1073  }
1074  
1075  static unsigned
1076  Field_sargt_Slot_inst_get (const xtensa_insnbuf insn)
1077  {
1078 -  unsigned tie_t = (insn[0] >> 20) & 1;
1079 -  tie_t = (tie_t << 4) | ((insn[0] >> 8) & 0xf);
1080 +  unsigned tie_t = 0;
1081 +  tie_t = (tie_t << 1) | ((insn[0] << 11) >> 31);
1082 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
1083    return tie_t;
1084  }
1085  
1086  static void
1087  Field_sargt_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1088  {
1089 -  uint32 tie_t = val & 0xf;
1090 +  uint32 tie_t;
1091 +  tie_t = (val << 28) >> 28;
1092    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
1093 -  tie_t = (val >> 4) & 1;
1094 +  tie_t = (val << 27) >> 31;
1095    insn[0] = (insn[0] & ~0x100000) | (tie_t << 20);
1096  }
1097  
1098  static unsigned
1099  Field_sargt_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
1100  {
1101 -  unsigned tie_t = (insn[0] >> 16) & 1;
1102 -  tie_t = (tie_t << 4) | ((insn[0] >> 4) & 0xf);
1103 +  unsigned tie_t = 0;
1104 +  tie_t = (tie_t << 1) | ((insn[0] << 15) >> 31);
1105 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
1106    return tie_t;
1107  }
1108  
1109  static void
1110  Field_sargt_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
1111  {
1112 -  uint32 tie_t = val & 0xf;
1113 +  uint32 tie_t;
1114 +  tie_t = (val << 28) >> 28;
1115    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
1116 -  tie_t = (val >> 4) & 1;
1117 +  tie_t = (val << 27) >> 31;
1118    insn[0] = (insn[0] & ~0x10000) | (tie_t << 16);
1119  }
1120  
1121  static unsigned
1122  Field_sargt_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
1123  {
1124 -  unsigned tie_t = (insn[0] >> 8) & 0x1f;
1125 +  unsigned tie_t = 0;
1126 +  tie_t = (tie_t << 5) | ((insn[0] << 19) >> 27);
1127    return tie_t;
1128  }
1129  
1130  static void
1131  Field_sargt_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
1132  {
1133 -  uint32 tie_t = val & 0x1f;
1134 +  uint32 tie_t;
1135 +  tie_t = (val << 27) >> 27;
1136    insn[0] = (insn[0] & ~0x1f00) | (tie_t << 8);
1137  }
1138  
1139  static unsigned
1140  Field_sargt_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
1141  {
1142 -  unsigned tie_t = (insn[0] >> 8) & 0x1f;
1143 +  unsigned tie_t = 0;
1144 +  tie_t = (tie_t << 5) | ((insn[0] << 19) >> 27);
1145    return tie_t;
1146  }
1147  
1148  static void
1149  Field_sargt_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
1150  {
1151 -  uint32 tie_t = val & 0x1f;
1152 +  uint32 tie_t;
1153 +  tie_t = (val << 27) >> 27;
1154    insn[0] = (insn[0] & ~0x1f00) | (tie_t << 8);
1155  }
1156  
1157  static unsigned
1158  Field_sas4_Slot_inst_get (const xtensa_insnbuf insn)
1159  {
1160 -  unsigned tie_t = (insn[0] >> 4) & 1;
1161 +  unsigned tie_t = 0;
1162 +  tie_t = (tie_t << 1) | ((insn[0] << 27) >> 31);
1163    return tie_t;
1164  }
1165  
1166  static void
1167  Field_sas4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1168  {
1169 -  uint32 tie_t = val & 1;
1170 +  uint32 tie_t;
1171 +  tie_t = (val << 31) >> 31;
1172    insn[0] = (insn[0] & ~0x10) | (tie_t << 4);
1173  }
1174  
1175  static unsigned
1176  Field_sas_Slot_inst_get (const xtensa_insnbuf insn)
1177  {
1178 -  unsigned tie_t = (insn[0] >> 4) & 1;
1179 -  tie_t = (tie_t << 4) | ((insn[0] >> 8) & 0xf);
1180 +  unsigned tie_t = 0;
1181 +  tie_t = (tie_t << 1) | ((insn[0] << 27) >> 31);
1182 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
1183    return tie_t;
1184  }
1185  
1186  static void
1187  Field_sas_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1188  {
1189 -  uint32 tie_t = val & 0xf;
1190 +  uint32 tie_t;
1191 +  tie_t = (val << 28) >> 28;
1192    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
1193 -  tie_t = (val >> 4) & 1;
1194 +  tie_t = (val << 27) >> 31;
1195    insn[0] = (insn[0] & ~0x10) | (tie_t << 4);
1196  }
1197  
1198  static unsigned
1199  Field_sas_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
1200  {
1201 -  unsigned tie_t = insn[0] & 1;
1202 -  tie_t = (tie_t << 4) | ((insn[0] >> 4) & 0xf);
1203 +  unsigned tie_t = 0;
1204 +  tie_t = (tie_t << 1) | ((insn[0] << 31) >> 31);
1205 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
1206    return tie_t;
1207  }
1208  
1209  static void
1210  Field_sas_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
1211  {
1212 -  uint32 tie_t = val & 0xf;
1213 +  uint32 tie_t;
1214 +  tie_t = (val << 28) >> 28;
1215    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
1216 -  tie_t = (val >> 4) & 1;
1217 +  tie_t = (val << 27) >> 31;
1218    insn[0] = (insn[0] & ~0x1) | (tie_t << 0);
1219  }
1220  
1221  static unsigned
1222  Field_sr_Slot_inst_get (const xtensa_insnbuf insn)
1223  {
1224 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
1225 -  tie_t = (tie_t << 4) | ((insn[0] >> 8) & 0xf);
1226 +  unsigned tie_t = 0;
1227 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1228 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
1229    return tie_t;
1230  }
1231  
1232  static void
1233  Field_sr_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1234  {
1235 -  uint32 tie_t = val & 0xf;
1236 +  uint32 tie_t;
1237 +  tie_t = (val << 28) >> 28;
1238    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
1239 -  tie_t = (val >> 4) & 0xf;
1240 +  tie_t = (val << 24) >> 28;
1241    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1242  }
1243  
1244  static unsigned
1245  Field_sr_Slot_inst16a_get (const xtensa_insnbuf insn)
1246  {
1247 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
1248 -  tie_t = (tie_t << 4) | ((insn[0] >> 8) & 0xf);
1249 +  unsigned tie_t = 0;
1250 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1251 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
1252    return tie_t;
1253  }
1254  
1255  static void
1256  Field_sr_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1257  {
1258 -  uint32 tie_t = val & 0xf;
1259 +  uint32 tie_t;
1260 +  tie_t = (val << 28) >> 28;
1261    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
1262 -  tie_t = (val >> 4) & 0xf;
1263 +  tie_t = (val << 24) >> 28;
1264    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1265  }
1266  
1267  static unsigned
1268  Field_sr_Slot_inst16b_get (const xtensa_insnbuf insn)
1269  {
1270 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
1271 -  tie_t = (tie_t << 4) | ((insn[0] >> 8) & 0xf);
1272 +  unsigned tie_t = 0;
1273 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1274 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
1275    return tie_t;
1276  }
1277  
1278  static void
1279  Field_sr_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1280  {
1281 -  uint32 tie_t = val & 0xf;
1282 +  uint32 tie_t;
1283 +  tie_t = (val << 28) >> 28;
1284    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
1285 -  tie_t = (val >> 4) & 0xf;
1286 +  tie_t = (val << 24) >> 28;
1287    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1288  }
1289  
1290  static unsigned
1291  Field_st_Slot_inst_get (const xtensa_insnbuf insn)
1292  {
1293 -  unsigned tie_t = (insn[0] >> 8) & 0xf;
1294 -  tie_t = (tie_t << 4) | ((insn[0] >> 4) & 0xf);
1295 +  unsigned tie_t = 0;
1296 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
1297 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
1298    return tie_t;
1299  }
1300  
1301  static void
1302  Field_st_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1303  {
1304 -  uint32 tie_t = val & 0xf;
1305 +  uint32 tie_t;
1306 +  tie_t = (val << 28) >> 28;
1307    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
1308 -  tie_t = (val >> 4) & 0xf;
1309 +  tie_t = (val << 24) >> 28;
1310    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
1311  }
1312  
1313  static unsigned
1314  Field_st_Slot_inst16a_get (const xtensa_insnbuf insn)
1315  {
1316 -  unsigned tie_t = (insn[0] >> 8) & 0xf;
1317 -  tie_t = (tie_t << 4) | ((insn[0] >> 4) & 0xf);
1318 +  unsigned tie_t = 0;
1319 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
1320 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
1321    return tie_t;
1322  }
1323  
1324  static void
1325  Field_st_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1326  {
1327 -  uint32 tie_t = val & 0xf;
1328 +  uint32 tie_t;
1329 +  tie_t = (val << 28) >> 28;
1330    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
1331 -  tie_t = (val >> 4) & 0xf;
1332 +  tie_t = (val << 24) >> 28;
1333    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
1334  }
1335  
1336  static unsigned
1337  Field_st_Slot_inst16b_get (const xtensa_insnbuf insn)
1338  {
1339 -  unsigned tie_t = (insn[0] >> 8) & 0xf;
1340 -  tie_t = (tie_t << 4) | ((insn[0] >> 4) & 0xf);
1341 +  unsigned tie_t = 0;
1342 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
1343 +  tie_t = (tie_t << 4) | ((insn[0] << 24) >> 28);
1344    return tie_t;
1345  }
1346  
1347  static void
1348  Field_st_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1349  {
1350 -  uint32 tie_t = val & 0xf;
1351 +  uint32 tie_t;
1352 +  tie_t = (val << 28) >> 28;
1353    insn[0] = (insn[0] & ~0xf0) | (tie_t << 4);
1354 -  tie_t = (val >> 4) & 0xf;
1355 +  tie_t = (val << 24) >> 28;
1356    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
1357  }
1358  
1359  static unsigned
1360  Field_thi3_Slot_inst_get (const xtensa_insnbuf insn)
1361  {
1362 -  unsigned tie_t = (insn[0] >> 5) & 7;
1363 +  unsigned tie_t = 0;
1364 +  tie_t = (tie_t << 3) | ((insn[0] << 24) >> 29);
1365    return tie_t;
1366  }
1367  
1368  static void
1369  Field_thi3_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1370  {
1371 -  uint32 tie_t = val & 7;
1372 +  uint32 tie_t;
1373 +  tie_t = (val << 29) >> 29;
1374    insn[0] = (insn[0] & ~0xe0) | (tie_t << 5);
1375  }
1376  
1377  static unsigned
1378  Field_thi3_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
1379  {
1380 -  unsigned tie_t = (insn[0] >> 1) & 7;
1381 +  unsigned tie_t = 0;
1382 +  tie_t = (tie_t << 3) | ((insn[0] << 28) >> 29);
1383    return tie_t;
1384  }
1385  
1386  static void
1387  Field_thi3_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
1388  {
1389 -  uint32 tie_t = val & 7;
1390 +  uint32 tie_t;
1391 +  tie_t = (val << 29) >> 29;
1392    insn[0] = (insn[0] & ~0xe) | (tie_t << 1);
1393  }
1394  
1395  static unsigned
1396  Field_imm4_Slot_inst_get (const xtensa_insnbuf insn)
1397  {
1398 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
1399 +  unsigned tie_t = 0;
1400 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1401    return tie_t;
1402  }
1403  
1404  static void
1405  Field_imm4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1406  {
1407 -  uint32 tie_t = val & 0xf;
1408 +  uint32 tie_t;
1409 +  tie_t = (val << 28) >> 28;
1410    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1411  }
1412  
1413  static unsigned
1414  Field_imm4_Slot_inst16a_get (const xtensa_insnbuf insn)
1415  {
1416 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
1417 +  unsigned tie_t = 0;
1418 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1419    return tie_t;
1420  }
1421  
1422  static void
1423  Field_imm4_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1424  {
1425 -  uint32 tie_t = val & 0xf;
1426 +  uint32 tie_t;
1427 +  tie_t = (val << 28) >> 28;
1428    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1429  }
1430  
1431  static unsigned
1432  Field_imm4_Slot_inst16b_get (const xtensa_insnbuf insn)
1433  {
1434 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
1435 +  unsigned tie_t = 0;
1436 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1437    return tie_t;
1438  }
1439  
1440  static void
1441  Field_imm4_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1442  {
1443 -  uint32 tie_t = val & 0xf;
1444 +  uint32 tie_t;
1445 +  tie_t = (val << 28) >> 28;
1446    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1447  }
1448  
1449  static unsigned
1450  Field_mn_Slot_inst_get (const xtensa_insnbuf insn)
1451  {
1452 -  unsigned tie_t = (insn[0] >> 6) & 3;
1453 -  tie_t = (tie_t << 2) | ((insn[0] >> 4) & 3);
1454 +  unsigned tie_t = 0;
1455 +  tie_t = (tie_t << 2) | ((insn[0] << 24) >> 30);
1456 +  tie_t = (tie_t << 2) | ((insn[0] << 26) >> 30);
1457    return tie_t;
1458  }
1459  
1460  static void
1461  Field_mn_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1462  {
1463 -  uint32 tie_t = val & 3;
1464 +  uint32 tie_t;
1465 +  tie_t = (val << 30) >> 30;
1466    insn[0] = (insn[0] & ~0x30) | (tie_t << 4);
1467 -  tie_t = (val >> 2) & 3;
1468 +  tie_t = (val << 28) >> 30;
1469    insn[0] = (insn[0] & ~0xc0) | (tie_t << 6);
1470  }
1471  
1472  static unsigned
1473  Field_i_Slot_inst16a_get (const xtensa_insnbuf insn)
1474  {
1475 -  unsigned tie_t = (insn[0] >> 7) & 1;
1476 +  unsigned tie_t = 0;
1477 +  tie_t = (tie_t << 1) | ((insn[0] << 24) >> 31);
1478    return tie_t;
1479  }
1480  
1481  static void
1482  Field_i_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1483  {
1484 -  uint32 tie_t = val & 1;
1485 +  uint32 tie_t;
1486 +  tie_t = (val << 31) >> 31;
1487    insn[0] = (insn[0] & ~0x80) | (tie_t << 7);
1488  }
1489  
1490  static unsigned
1491  Field_i_Slot_inst16b_get (const xtensa_insnbuf insn)
1492  {
1493 -  unsigned tie_t = (insn[0] >> 7) & 1;
1494 +  unsigned tie_t = 0;
1495 +  tie_t = (tie_t << 1) | ((insn[0] << 24) >> 31);
1496    return tie_t;
1497  }
1498  
1499  static void
1500  Field_i_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1501  {
1502 -  uint32 tie_t = val & 1;
1503 +  uint32 tie_t;
1504 +  tie_t = (val << 31) >> 31;
1505    insn[0] = (insn[0] & ~0x80) | (tie_t << 7);
1506  }
1507  
1508  static unsigned
1509  Field_imm6lo_Slot_inst16a_get (const xtensa_insnbuf insn)
1510  {
1511 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
1512 +  unsigned tie_t = 0;
1513 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1514    return tie_t;
1515  }
1516  
1517  static void
1518  Field_imm6lo_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1519  {
1520 -  uint32 tie_t = val & 0xf;
1521 +  uint32 tie_t;
1522 +  tie_t = (val << 28) >> 28;
1523    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1524  }
1525  
1526  static unsigned
1527  Field_imm6lo_Slot_inst16b_get (const xtensa_insnbuf insn)
1528  {
1529 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
1530 +  unsigned tie_t = 0;
1531 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1532    return tie_t;
1533  }
1534  
1535  static void
1536  Field_imm6lo_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1537  {
1538 -  uint32 tie_t = val & 0xf;
1539 +  uint32 tie_t;
1540 +  tie_t = (val << 28) >> 28;
1541    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1542  }
1543  
1544  static unsigned
1545  Field_imm6hi_Slot_inst16a_get (const xtensa_insnbuf insn)
1546  {
1547 -  unsigned tie_t = (insn[0] >> 4) & 3;
1548 +  unsigned tie_t = 0;
1549 +  tie_t = (tie_t << 2) | ((insn[0] << 26) >> 30);
1550    return tie_t;
1551  }
1552  
1553  static void
1554  Field_imm6hi_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1555  {
1556 -  uint32 tie_t = val & 3;
1557 +  uint32 tie_t;
1558 +  tie_t = (val << 30) >> 30;
1559    insn[0] = (insn[0] & ~0x30) | (tie_t << 4);
1560  }
1561  
1562  static unsigned
1563  Field_imm6hi_Slot_inst16b_get (const xtensa_insnbuf insn)
1564  {
1565 -  unsigned tie_t = (insn[0] >> 4) & 3;
1566 +  unsigned tie_t = 0;
1567 +  tie_t = (tie_t << 2) | ((insn[0] << 26) >> 30);
1568    return tie_t;
1569  }
1570  
1571  static void
1572  Field_imm6hi_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1573  {
1574 -  uint32 tie_t = val & 3;
1575 +  uint32 tie_t;
1576 +  tie_t = (val << 30) >> 30;
1577    insn[0] = (insn[0] & ~0x30) | (tie_t << 4);
1578  }
1579  
1580  static unsigned
1581  Field_imm7lo_Slot_inst16a_get (const xtensa_insnbuf insn)
1582  {
1583 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
1584 +  unsigned tie_t = 0;
1585 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1586    return tie_t;
1587  }
1588  
1589  static void
1590  Field_imm7lo_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1591  {
1592 -  uint32 tie_t = val & 0xf;
1593 +  uint32 tie_t;
1594 +  tie_t = (val << 28) >> 28;
1595    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1596  }
1597  
1598  static unsigned
1599  Field_imm7lo_Slot_inst16b_get (const xtensa_insnbuf insn)
1600  {
1601 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
1602 +  unsigned tie_t = 0;
1603 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1604    return tie_t;
1605  }
1606  
1607  static void
1608  Field_imm7lo_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1609  {
1610 -  uint32 tie_t = val & 0xf;
1611 +  uint32 tie_t;
1612 +  tie_t = (val << 28) >> 28;
1613    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1614  }
1615  
1616  static unsigned
1617  Field_imm7hi_Slot_inst16a_get (const xtensa_insnbuf insn)
1618  {
1619 -  unsigned tie_t = (insn[0] >> 4) & 7;
1620 +  unsigned tie_t = 0;
1621 +  tie_t = (tie_t << 3) | ((insn[0] << 25) >> 29);
1622    return tie_t;
1623  }
1624  
1625  static void
1626  Field_imm7hi_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1627  {
1628 -  uint32 tie_t = val & 7;
1629 +  uint32 tie_t;
1630 +  tie_t = (val << 29) >> 29;
1631    insn[0] = (insn[0] & ~0x70) | (tie_t << 4);
1632  }
1633  
1634  static unsigned
1635  Field_imm7hi_Slot_inst16b_get (const xtensa_insnbuf insn)
1636  {
1637 -  unsigned tie_t = (insn[0] >> 4) & 7;
1638 +  unsigned tie_t = 0;
1639 +  tie_t = (tie_t << 3) | ((insn[0] << 25) >> 29);
1640    return tie_t;
1641  }
1642  
1643  static void
1644  Field_imm7hi_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1645  {
1646 -  uint32 tie_t = val & 7;
1647 +  uint32 tie_t;
1648 +  tie_t = (val << 29) >> 29;
1649    insn[0] = (insn[0] & ~0x70) | (tie_t << 4);
1650  }
1651  
1652  static unsigned
1653  Field_z_Slot_inst16a_get (const xtensa_insnbuf insn)
1654  {
1655 -  unsigned tie_t = (insn[0] >> 6) & 1;
1656 +  unsigned tie_t = 0;
1657 +  tie_t = (tie_t << 1) | ((insn[0] << 25) >> 31);
1658    return tie_t;
1659  }
1660  
1661  static void
1662  Field_z_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1663  {
1664 -  uint32 tie_t = val & 1;
1665 +  uint32 tie_t;
1666 +  tie_t = (val << 31) >> 31;
1667    insn[0] = (insn[0] & ~0x40) | (tie_t << 6);
1668  }
1669  
1670  static unsigned
1671  Field_z_Slot_inst16b_get (const xtensa_insnbuf insn)
1672  {
1673 -  unsigned tie_t = (insn[0] >> 6) & 1;
1674 +  unsigned tie_t = 0;
1675 +  tie_t = (tie_t << 1) | ((insn[0] << 25) >> 31);
1676    return tie_t;
1677  }
1678  
1679  static void
1680  Field_z_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1681  {
1682 -  uint32 tie_t = val & 1;
1683 +  uint32 tie_t;
1684 +  tie_t = (val << 31) >> 31;
1685    insn[0] = (insn[0] & ~0x40) | (tie_t << 6);
1686  }
1687  
1688  static unsigned
1689  Field_imm6_Slot_inst16a_get (const xtensa_insnbuf insn)
1690  {
1691 -  unsigned tie_t = (insn[0] >> 4) & 3;
1692 -  tie_t = (tie_t << 4) | ((insn[0] >> 12) & 0xf);
1693 +  unsigned tie_t = 0;
1694 +  tie_t = (tie_t << 2) | ((insn[0] << 26) >> 30);
1695 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1696    return tie_t;
1697  }
1698  
1699  static void
1700  Field_imm6_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1701  {
1702 -  uint32 tie_t = val & 0xf;
1703 +  uint32 tie_t;
1704 +  tie_t = (val << 28) >> 28;
1705    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1706 -  tie_t = (val >> 4) & 3;
1707 +  tie_t = (val << 26) >> 30;
1708    insn[0] = (insn[0] & ~0x30) | (tie_t << 4);
1709  }
1710  
1711  static unsigned
1712  Field_imm6_Slot_inst16b_get (const xtensa_insnbuf insn)
1713  {
1714 -  unsigned tie_t = (insn[0] >> 4) & 3;
1715 -  tie_t = (tie_t << 4) | ((insn[0] >> 12) & 0xf);
1716 +  unsigned tie_t = 0;
1717 +  tie_t = (tie_t << 2) | ((insn[0] << 26) >> 30);
1718 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1719    return tie_t;
1720  }
1721  
1722  static void
1723  Field_imm6_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1724  {
1725 -  uint32 tie_t = val & 0xf;
1726 +  uint32 tie_t;
1727 +  tie_t = (val << 28) >> 28;
1728    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1729 -  tie_t = (val >> 4) & 3;
1730 +  tie_t = (val << 26) >> 30;
1731    insn[0] = (insn[0] & ~0x30) | (tie_t << 4);
1732  }
1733  
1734  static unsigned
1735  Field_imm7_Slot_inst16a_get (const xtensa_insnbuf insn)
1736  {
1737 -  unsigned tie_t = (insn[0] >> 4) & 7;
1738 -  tie_t = (tie_t << 4) | ((insn[0] >> 12) & 0xf);
1739 +  unsigned tie_t = 0;
1740 +  tie_t = (tie_t << 3) | ((insn[0] << 25) >> 29);
1741 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1742    return tie_t;
1743  }
1744  
1745  static void
1746  Field_imm7_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1747  {
1748 -  uint32 tie_t = val & 0xf;
1749 +  uint32 tie_t;
1750 +  tie_t = (val << 28) >> 28;
1751    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1752 -  tie_t = (val >> 4) & 7;
1753 +  tie_t = (val << 25) >> 29;
1754    insn[0] = (insn[0] & ~0x70) | (tie_t << 4);
1755  }
1756  
1757  static unsigned
1758  Field_imm7_Slot_inst16b_get (const xtensa_insnbuf insn)
1759  {
1760 -  unsigned tie_t = (insn[0] >> 4) & 7;
1761 -  tie_t = (tie_t << 4) | ((insn[0] >> 12) & 0xf);
1762 +  unsigned tie_t = 0;
1763 +  tie_t = (tie_t << 3) | ((insn[0] << 25) >> 29);
1764 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
1765    return tie_t;
1766  }
1767  
1768  static void
1769  Field_imm7_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
1770  {
1771 -  uint32 tie_t = val & 0xf;
1772 +  uint32 tie_t;
1773 +  tie_t = (val << 28) >> 28;
1774    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
1775 -  tie_t = (val >> 4) & 7;
1776 +  tie_t = (val << 25) >> 29;
1777    insn[0] = (insn[0] & ~0x70) | (tie_t << 4);
1778  }
1779  
1780  static unsigned
1781  Field_imm7_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
1782  {
1783 -  unsigned tie_t = insn[0] & 0x7f;
1784 +  unsigned tie_t = 0;
1785 +  tie_t = (tie_t << 7) | ((insn[0] << 25) >> 25);
1786    return tie_t;
1787  }
1788  
1789 @@ -1659,1641 +1842,1852 @@ static void
1790  Field_imm7_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
1791  {
1792    uint32 tie_t;
1793 -  tie_t = val & 0x7f;
1794 +  tie_t = (val << 25) >> 25;
1795    insn[0] = (insn[0] & ~0x7f) | (tie_t << 0);
1796  }
1797  
1798  static unsigned
1799  Field_r3_Slot_inst_get (const xtensa_insnbuf insn)
1800  {
1801 -  unsigned tie_t = (insn[0] >> 15) & 1;
1802 +  unsigned tie_t = 0;
1803 +  tie_t = (tie_t << 1) | ((insn[0] << 16) >> 31);
1804    return tie_t;
1805  }
1806  
1807  static void
1808  Field_r3_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1809  {
1810 -  uint32 tie_t = val & 1;
1811 +  uint32 tie_t;
1812 +  tie_t = (val << 31) >> 31;
1813    insn[0] = (insn[0] & ~0x8000) | (tie_t << 15);
1814  }
1815  
1816  static unsigned
1817  Field_rbit2_Slot_inst_get (const xtensa_insnbuf insn)
1818  {
1819 -  unsigned tie_t = (insn[0] >> 14) & 1;
1820 +  unsigned tie_t = 0;
1821 +  tie_t = (tie_t << 1) | ((insn[0] << 17) >> 31);
1822    return tie_t;
1823  }
1824  
1825  static void
1826  Field_rbit2_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1827  {
1828 -  uint32 tie_t = val & 1;
1829 +  uint32 tie_t;
1830 +  tie_t = (val << 31) >> 31;
1831    insn[0] = (insn[0] & ~0x4000) | (tie_t << 14);
1832  }
1833  
1834  static unsigned
1835  Field_rhi_Slot_inst_get (const xtensa_insnbuf insn)
1836  {
1837 -  unsigned tie_t = (insn[0] >> 14) & 3;
1838 +  unsigned tie_t = 0;
1839 +  tie_t = (tie_t << 2) | ((insn[0] << 16) >> 30);
1840    return tie_t;
1841  }
1842  
1843  static void
1844  Field_rhi_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1845  {
1846 -  uint32 tie_t = val & 3;
1847 +  uint32 tie_t;
1848 +  tie_t = (val << 30) >> 30;
1849    insn[0] = (insn[0] & ~0xc000) | (tie_t << 14);
1850  }
1851  
1852  static unsigned
1853  Field_t3_Slot_inst_get (const xtensa_insnbuf insn)
1854  {
1855 -  unsigned tie_t = (insn[0] >> 7) & 1;
1856 +  unsigned tie_t = 0;
1857 +  tie_t = (tie_t << 1) | ((insn[0] << 24) >> 31);
1858    return tie_t;
1859  }
1860  
1861  static void
1862  Field_t3_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1863  {
1864 -  uint32 tie_t = val & 1;
1865 +  uint32 tie_t;
1866 +  tie_t = (val << 31) >> 31;
1867    insn[0] = (insn[0] & ~0x80) | (tie_t << 7);
1868  }
1869  
1870  static unsigned
1871  Field_tbit2_Slot_inst_get (const xtensa_insnbuf insn)
1872  {
1873 -  unsigned tie_t = (insn[0] >> 6) & 1;
1874 +  unsigned tie_t = 0;
1875 +  tie_t = (tie_t << 1) | ((insn[0] << 25) >> 31);
1876    return tie_t;
1877  }
1878  
1879  static void
1880  Field_tbit2_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1881  {
1882 -  uint32 tie_t = val & 1;
1883 +  uint32 tie_t;
1884 +  tie_t = (val << 31) >> 31;
1885    insn[0] = (insn[0] & ~0x40) | (tie_t << 6);
1886  }
1887  
1888  static unsigned
1889  Field_tlo_Slot_inst_get (const xtensa_insnbuf insn)
1890  {
1891 -  unsigned tie_t = (insn[0] >> 4) & 3;
1892 +  unsigned tie_t = 0;
1893 +  tie_t = (tie_t << 2) | ((insn[0] << 26) >> 30);
1894    return tie_t;
1895  }
1896  
1897  static void
1898  Field_tlo_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1899  {
1900 -  uint32 tie_t = val & 3;
1901 +  uint32 tie_t;
1902 +  tie_t = (val << 30) >> 30;
1903    insn[0] = (insn[0] & ~0x30) | (tie_t << 4);
1904  }
1905  
1906  static unsigned
1907  Field_w_Slot_inst_get (const xtensa_insnbuf insn)
1908  {
1909 -  unsigned tie_t = (insn[0] >> 12) & 3;
1910 +  unsigned tie_t = 0;
1911 +  tie_t = (tie_t << 2) | ((insn[0] << 18) >> 30);
1912    return tie_t;
1913  }
1914  
1915  static void
1916  Field_w_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1917  {
1918 -  uint32 tie_t = val & 3;
1919 +  uint32 tie_t;
1920 +  tie_t = (val << 30) >> 30;
1921    insn[0] = (insn[0] & ~0x3000) | (tie_t << 12);
1922  }
1923  
1924  static unsigned
1925  Field_y_Slot_inst_get (const xtensa_insnbuf insn)
1926  {
1927 -  unsigned tie_t = (insn[0] >> 6) & 1;
1928 +  unsigned tie_t = 0;
1929 +  tie_t = (tie_t << 1) | ((insn[0] << 25) >> 31);
1930    return tie_t;
1931  }
1932  
1933  static void
1934  Field_y_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1935  {
1936 -  uint32 tie_t = val & 1;
1937 +  uint32 tie_t;
1938 +  tie_t = (val << 31) >> 31;
1939    insn[0] = (insn[0] & ~0x40) | (tie_t << 6);
1940  }
1941  
1942  static unsigned
1943  Field_x_Slot_inst_get (const xtensa_insnbuf insn)
1944  {
1945 -  unsigned tie_t = (insn[0] >> 14) & 1;
1946 +  unsigned tie_t = 0;
1947 +  tie_t = (tie_t << 1) | ((insn[0] << 17) >> 31);
1948    return tie_t;
1949  }
1950  
1951  static void
1952  Field_x_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1953  {
1954 -  uint32 tie_t = val & 1;
1955 +  uint32 tie_t;
1956 +  tie_t = (val << 31) >> 31;
1957    insn[0] = (insn[0] & ~0x4000) | (tie_t << 14);
1958  }
1959  
1960  static unsigned
1961  Field_t2_Slot_inst_get (const xtensa_insnbuf insn)
1962  {
1963 -  unsigned tie_t = (insn[0] >> 5) & 7;
1964 +  unsigned tie_t = 0;
1965 +  tie_t = (tie_t << 3) | ((insn[0] << 24) >> 29);
1966    return tie_t;
1967  }
1968  
1969  static void
1970  Field_t2_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
1971  {
1972 -  uint32 tie_t = val & 7;
1973 +  uint32 tie_t;
1974 +  tie_t = (val << 29) >> 29;
1975    insn[0] = (insn[0] & ~0xe0) | (tie_t << 5);
1976  }
1977  
1978  static unsigned
1979  Field_t2_Slot_inst16a_get (const xtensa_insnbuf insn)
1980  {
1981 -  unsigned tie_t = (insn[0] >> 5) & 7;
1982 +  unsigned tie_t = 0;
1983 +  tie_t = (tie_t << 3) | ((insn[0] << 24) >> 29);
1984    return tie_t;
1985  }
1986  
1987  static void
1988  Field_t2_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
1989  {
1990 -  uint32 tie_t = val & 7;
1991 +  uint32 tie_t;
1992 +  tie_t = (val << 29) >> 29;
1993    insn[0] = (insn[0] & ~0xe0) | (tie_t << 5);
1994  }
1995  
1996  static unsigned
1997  Field_t2_Slot_inst16b_get (const xtensa_insnbuf insn)
1998  {
1999 -  unsigned tie_t = (insn[0] >> 5) & 7;
2000 +  unsigned tie_t = 0;
2001 +  tie_t = (tie_t << 3) | ((insn[0] << 24) >> 29);
2002    return tie_t;
2003  }
2004  
2005  static void
2006  Field_t2_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
2007  {
2008 -  uint32 tie_t = val & 7;
2009 +  uint32 tie_t;
2010 +  tie_t = (val << 29) >> 29;
2011    insn[0] = (insn[0] & ~0xe0) | (tie_t << 5);
2012  }
2013  
2014  static unsigned
2015  Field_s2_Slot_inst_get (const xtensa_insnbuf insn)
2016  {
2017 -  unsigned tie_t = (insn[0] >> 9) & 7;
2018 +  unsigned tie_t = 0;
2019 +  tie_t = (tie_t << 3) | ((insn[0] << 20) >> 29);
2020    return tie_t;
2021  }
2022  
2023  static void
2024  Field_s2_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
2025  {
2026 -  uint32 tie_t = val & 7;
2027 +  uint32 tie_t;
2028 +  tie_t = (val << 29) >> 29;
2029    insn[0] = (insn[0] & ~0xe00) | (tie_t << 9);
2030  }
2031  
2032  static unsigned
2033  Field_s2_Slot_inst16a_get (const xtensa_insnbuf insn)
2034  {
2035 -  unsigned tie_t = (insn[0] >> 9) & 7;
2036 +  unsigned tie_t = 0;
2037 +  tie_t = (tie_t << 3) | ((insn[0] << 20) >> 29);
2038    return tie_t;
2039  }
2040  
2041  static void
2042  Field_s2_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
2043  {
2044 -  uint32 tie_t = val & 7;
2045 +  uint32 tie_t;
2046 +  tie_t = (val << 29) >> 29;
2047    insn[0] = (insn[0] & ~0xe00) | (tie_t << 9);
2048  }
2049  
2050  static unsigned
2051  Field_s2_Slot_inst16b_get (const xtensa_insnbuf insn)
2052  {
2053 -  unsigned tie_t = (insn[0] >> 9) & 7;
2054 +  unsigned tie_t = 0;
2055 +  tie_t = (tie_t << 3) | ((insn[0] << 20) >> 29);
2056    return tie_t;
2057  }
2058  
2059  static void
2060  Field_s2_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
2061  {
2062 -  uint32 tie_t = val & 7;
2063 +  uint32 tie_t;
2064 +  tie_t = (val << 29) >> 29;
2065    insn[0] = (insn[0] & ~0xe00) | (tie_t << 9);
2066  }
2067  
2068  static unsigned
2069  Field_r2_Slot_inst_get (const xtensa_insnbuf insn)
2070  {
2071 -  unsigned tie_t = (insn[0] >> 13) & 7;
2072 +  unsigned tie_t = 0;
2073 +  tie_t = (tie_t << 3) | ((insn[0] << 16) >> 29);
2074    return tie_t;
2075  }
2076  
2077  static void
2078  Field_r2_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
2079  {
2080 -  uint32 tie_t = val & 7;
2081 +  uint32 tie_t;
2082 +  tie_t = (val << 29) >> 29;
2083    insn[0] = (insn[0] & ~0xe000) | (tie_t << 13);
2084  }
2085  
2086  static unsigned
2087  Field_r2_Slot_inst16a_get (const xtensa_insnbuf insn)
2088  {
2089 -  unsigned tie_t = (insn[0] >> 13) & 7;
2090 +  unsigned tie_t = 0;
2091 +  tie_t = (tie_t << 3) | ((insn[0] << 16) >> 29);
2092    return tie_t;
2093  }
2094  
2095  static void
2096  Field_r2_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
2097  {
2098 -  uint32 tie_t = val & 7;
2099 +  uint32 tie_t;
2100 +  tie_t = (val << 29) >> 29;
2101    insn[0] = (insn[0] & ~0xe000) | (tie_t << 13);
2102  }
2103  
2104  static unsigned
2105  Field_r2_Slot_inst16b_get (const xtensa_insnbuf insn)
2106  {
2107 -  unsigned tie_t = (insn[0] >> 13) & 7;
2108 +  unsigned tie_t = 0;
2109 +  tie_t = (tie_t << 3) | ((insn[0] << 16) >> 29);
2110    return tie_t;
2111  }
2112  
2113  static void
2114  Field_r2_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
2115  {
2116 -  uint32 tie_t = val & 7;
2117 +  uint32 tie_t;
2118 +  tie_t = (val << 29) >> 29;
2119    insn[0] = (insn[0] & ~0xe000) | (tie_t << 13);
2120  }
2121  
2122  static unsigned
2123  Field_t4_Slot_inst_get (const xtensa_insnbuf insn)
2124  {
2125 -  unsigned tie_t = (insn[0] >> 6) & 3;
2126 +  unsigned tie_t = 0;
2127 +  tie_t = (tie_t << 2) | ((insn[0] << 24) >> 30);
2128    return tie_t;
2129  }
2130  
2131  static void
2132  Field_t4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
2133  {
2134 -  uint32 tie_t = val & 3;
2135 +  uint32 tie_t;
2136 +  tie_t = (val << 30) >> 30;
2137    insn[0] = (insn[0] & ~0xc0) | (tie_t << 6);
2138  }
2139  
2140  static unsigned
2141  Field_t4_Slot_inst16a_get (const xtensa_insnbuf insn)
2142  {
2143 -  unsigned tie_t = (insn[0] >> 6) & 3;
2144 +  unsigned tie_t = 0;
2145 +  tie_t = (tie_t << 2) | ((insn[0] << 24) >> 30);
2146    return tie_t;
2147  }
2148  
2149  static void
2150  Field_t4_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
2151  {
2152 -  uint32 tie_t = val & 3;
2153 +  uint32 tie_t;
2154 +  tie_t = (val << 30) >> 30;
2155    insn[0] = (insn[0] & ~0xc0) | (tie_t << 6);
2156  }
2157  
2158  static unsigned
2159  Field_t4_Slot_inst16b_get (const xtensa_insnbuf insn)
2160  {
2161 -  unsigned tie_t = (insn[0] >> 6) & 3;
2162 +  unsigned tie_t = 0;
2163 +  tie_t = (tie_t << 2) | ((insn[0] << 24) >> 30);
2164    return tie_t;
2165  }
2166  
2167  static void
2168  Field_t4_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
2169  {
2170 -  uint32 tie_t = val & 3;
2171 +  uint32 tie_t;
2172 +  tie_t = (val << 30) >> 30;
2173    insn[0] = (insn[0] & ~0xc0) | (tie_t << 6);
2174  }
2175  
2176  static unsigned
2177  Field_s4_Slot_inst_get (const xtensa_insnbuf insn)
2178  {
2179 -  unsigned tie_t = (insn[0] >> 10) & 3;
2180 +  unsigned tie_t = 0;
2181 +  tie_t = (tie_t << 2) | ((insn[0] << 20) >> 30);
2182    return tie_t;
2183  }
2184  
2185  static void
2186  Field_s4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
2187  {
2188 -  uint32 tie_t = val & 3;
2189 +  uint32 tie_t;
2190 +  tie_t = (val << 30) >> 30;
2191    insn[0] = (insn[0] & ~0xc00) | (tie_t << 10);
2192  }
2193  
2194  static unsigned
2195  Field_s4_Slot_inst16a_get (const xtensa_insnbuf insn)
2196  {
2197 -  unsigned tie_t = (insn[0] >> 10) & 3;
2198 +  unsigned tie_t = 0;
2199 +  tie_t = (tie_t << 2) | ((insn[0] << 20) >> 30);
2200    return tie_t;
2201  }
2202  
2203  static void
2204  Field_s4_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
2205  {
2206 -  uint32 tie_t = val & 3;
2207 +  uint32 tie_t;
2208 +  tie_t = (val << 30) >> 30;
2209    insn[0] = (insn[0] & ~0xc00) | (tie_t << 10);
2210  }
2211  
2212  static unsigned
2213  Field_s4_Slot_inst16b_get (const xtensa_insnbuf insn)
2214  {
2215 -  unsigned tie_t = (insn[0] >> 10) & 3;
2216 +  unsigned tie_t = 0;
2217 +  tie_t = (tie_t << 2) | ((insn[0] << 20) >> 30);
2218    return tie_t;
2219  }
2220  
2221  static void
2222  Field_s4_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
2223  {
2224 -  uint32 tie_t = val & 3;
2225 +  uint32 tie_t;
2226 +  tie_t = (val << 30) >> 30;
2227    insn[0] = (insn[0] & ~0xc00) | (tie_t << 10);
2228  }
2229  
2230  static unsigned
2231  Field_r4_Slot_inst_get (const xtensa_insnbuf insn)
2232  {
2233 -  unsigned tie_t = (insn[0] >> 14) & 3;
2234 +  unsigned tie_t = 0;
2235 +  tie_t = (tie_t << 2) | ((insn[0] << 16) >> 30);
2236    return tie_t;
2237  }
2238  
2239  static void
2240  Field_r4_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
2241  {
2242 -  uint32 tie_t = val & 3;
2243 +  uint32 tie_t;
2244 +  tie_t = (val << 30) >> 30;
2245    insn[0] = (insn[0] & ~0xc000) | (tie_t << 14);
2246  }
2247  
2248  static unsigned
2249  Field_r4_Slot_inst16a_get (const xtensa_insnbuf insn)
2250  {
2251 -  unsigned tie_t = (insn[0] >> 14) & 3;
2252 +  unsigned tie_t = 0;
2253 +  tie_t = (tie_t << 2) | ((insn[0] << 16) >> 30);
2254    return tie_t;
2255  }
2256  
2257  static void
2258  Field_r4_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
2259  {
2260 -  uint32 tie_t = val & 3;
2261 +  uint32 tie_t;
2262 +  tie_t = (val << 30) >> 30;
2263    insn[0] = (insn[0] & ~0xc000) | (tie_t << 14);
2264  }
2265  
2266  static unsigned
2267  Field_r4_Slot_inst16b_get (const xtensa_insnbuf insn)
2268  {
2269 -  unsigned tie_t = (insn[0] >> 14) & 3;
2270 +  unsigned tie_t = 0;
2271 +  tie_t = (tie_t << 2) | ((insn[0] << 16) >> 30);
2272    return tie_t;
2273  }
2274  
2275  static void
2276  Field_r4_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
2277  {
2278 -  uint32 tie_t = val & 3;
2279 +  uint32 tie_t;
2280 +  tie_t = (val << 30) >> 30;
2281    insn[0] = (insn[0] & ~0xc000) | (tie_t << 14);
2282  }
2283  
2284  static unsigned
2285  Field_t8_Slot_inst_get (const xtensa_insnbuf insn)
2286  {
2287 -  unsigned tie_t = (insn[0] >> 7) & 1;
2288 +  unsigned tie_t = 0;
2289 +  tie_t = (tie_t << 1) | ((insn[0] << 24) >> 31);
2290    return tie_t;
2291  }
2292  
2293  static void
2294  Field_t8_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
2295  {
2296 -  uint32 tie_t = val & 1;
2297 +  uint32 tie_t;
2298 +  tie_t = (val << 31) >> 31;
2299    insn[0] = (insn[0] & ~0x80) | (tie_t << 7);
2300  }
2301  
2302  static unsigned
2303  Field_t8_Slot_inst16a_get (const xtensa_insnbuf insn)
2304  {
2305 -  unsigned tie_t = (insn[0] >> 7) & 1;
2306 +  unsigned tie_t = 0;
2307 +  tie_t = (tie_t << 1) | ((insn[0] << 24) >> 31);
2308    return tie_t;
2309  }
2310  
2311  static void
2312  Field_t8_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
2313  {
2314 -  uint32 tie_t = val & 1;
2315 +  uint32 tie_t;
2316 +  tie_t = (val << 31) >> 31;
2317    insn[0] = (insn[0] & ~0x80) | (tie_t << 7);
2318  }
2319  
2320  static unsigned
2321  Field_t8_Slot_inst16b_get (const xtensa_insnbuf insn)
2322  {
2323 -  unsigned tie_t = (insn[0] >> 7) & 1;
2324 +  unsigned tie_t = 0;
2325 +  tie_t = (tie_t << 1) | ((insn[0] << 24) >> 31);
2326    return tie_t;
2327  }
2328  
2329  static void
2330  Field_t8_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
2331  {
2332 -  uint32 tie_t = val & 1;
2333 +  uint32 tie_t;
2334 +  tie_t = (val << 31) >> 31;
2335    insn[0] = (insn[0] & ~0x80) | (tie_t << 7);
2336  }
2337  
2338  static unsigned
2339  Field_s8_Slot_inst_get (const xtensa_insnbuf insn)
2340  {
2341 -  unsigned tie_t = (insn[0] >> 11) & 1;
2342 +  unsigned tie_t = 0;
2343 +  tie_t = (tie_t << 1) | ((insn[0] << 20) >> 31);
2344    return tie_t;
2345  }
2346  
2347  static void
2348  Field_s8_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
2349  {
2350 -  uint32 tie_t = val & 1;
2351 +  uint32 tie_t;
2352 +  tie_t = (val << 31) >> 31;
2353    insn[0] = (insn[0] & ~0x800) | (tie_t << 11);
2354  }
2355  
2356  static unsigned
2357  Field_s8_Slot_inst16a_get (const xtensa_insnbuf insn)
2358  {
2359 -  unsigned tie_t = (insn[0] >> 11) & 1;
2360 +  unsigned tie_t = 0;
2361 +  tie_t = (tie_t << 1) | ((insn[0] << 20) >> 31);
2362    return tie_t;
2363  }
2364  
2365  static void
2366  Field_s8_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
2367  {
2368 -  uint32 tie_t = val & 1;
2369 +  uint32 tie_t;
2370 +  tie_t = (val << 31) >> 31;
2371    insn[0] = (insn[0] & ~0x800) | (tie_t << 11);
2372  }
2373  
2374  static unsigned
2375  Field_s8_Slot_inst16b_get (const xtensa_insnbuf insn)
2376  {
2377 -  unsigned tie_t = (insn[0] >> 11) & 1;
2378 +  unsigned tie_t = 0;
2379 +  tie_t = (tie_t << 1) | ((insn[0] << 20) >> 31);
2380    return tie_t;
2381  }
2382  
2383  static void
2384  Field_s8_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
2385  {
2386 -  uint32 tie_t = val & 1;
2387 +  uint32 tie_t;
2388 +  tie_t = (val << 31) >> 31;
2389    insn[0] = (insn[0] & ~0x800) | (tie_t << 11);
2390  }
2391  
2392  static unsigned
2393  Field_r8_Slot_inst_get (const xtensa_insnbuf insn)
2394  {
2395 -  unsigned tie_t = (insn[0] >> 15) & 1;
2396 +  unsigned tie_t = 0;
2397 +  tie_t = (tie_t << 1) | ((insn[0] << 16) >> 31);
2398    return tie_t;
2399  }
2400  
2401  static void
2402  Field_r8_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
2403  {
2404 -  uint32 tie_t = val & 1;
2405 +  uint32 tie_t;
2406 +  tie_t = (val << 31) >> 31;
2407    insn[0] = (insn[0] & ~0x8000) | (tie_t << 15);
2408  }
2409  
2410  static unsigned
2411  Field_r8_Slot_inst16a_get (const xtensa_insnbuf insn)
2412  {
2413 -  unsigned tie_t = (insn[0] >> 15) & 1;
2414 +  unsigned tie_t = 0;
2415 +  tie_t = (tie_t << 1) | ((insn[0] << 16) >> 31);
2416    return tie_t;
2417  }
2418  
2419  static void
2420  Field_r8_Slot_inst16a_set (xtensa_insnbuf insn, uint32 val)
2421  {
2422 -  uint32 tie_t = val & 1;
2423 +  uint32 tie_t;
2424 +  tie_t = (val << 31) >> 31;
2425    insn[0] = (insn[0] & ~0x8000) | (tie_t << 15);
2426  }
2427  
2428  static unsigned
2429  Field_r8_Slot_inst16b_get (const xtensa_insnbuf insn)
2430  {
2431 -  unsigned tie_t = (insn[0] >> 15) & 1;
2432 +  unsigned tie_t = 0;
2433 +  tie_t = (tie_t << 1) | ((insn[0] << 16) >> 31);
2434    return tie_t;
2435  }
2436  
2437  static void
2438  Field_r8_Slot_inst16b_set (xtensa_insnbuf insn, uint32 val)
2439  {
2440 -  uint32 tie_t = val & 1;
2441 +  uint32 tie_t;
2442 +  tie_t = (val << 31) >> 31;
2443    insn[0] = (insn[0] & ~0x8000) | (tie_t << 15);
2444  }
2445  
2446  static unsigned
2447  Field_xt_wbr15_imm_Slot_inst_get (const xtensa_insnbuf insn)
2448  {
2449 -  unsigned tie_t = (insn[0] >> 9) & 0x7fff;
2450 +  unsigned tie_t = 0;
2451 +  tie_t = (tie_t << 15) | ((insn[0] << 8) >> 17);
2452    return tie_t;
2453  }
2454  
2455  static void
2456  Field_xt_wbr15_imm_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
2457  {
2458 -  uint32 tie_t = val & 0x7fff;
2459 +  uint32 tie_t;
2460 +  tie_t = (val << 17) >> 17;
2461    insn[0] = (insn[0] & ~0xfffe00) | (tie_t << 9);
2462  }
2463  
2464  static unsigned
2465  Field_xt_wbr18_imm_Slot_inst_get (const xtensa_insnbuf insn)
2466  {
2467 -  unsigned tie_t = (insn[0] >> 6) & 0x3ffff;
2468 +  unsigned tie_t = 0;
2469 +  tie_t = (tie_t << 18) | ((insn[0] << 8) >> 14);
2470    return tie_t;
2471  }
2472  
2473  static void
2474  Field_xt_wbr18_imm_Slot_inst_set (xtensa_insnbuf insn, uint32 val)
2475  {
2476 -  uint32 tie_t = val & 0x3ffff;
2477 +  uint32 tie_t;
2478 +  tie_t = (val << 14) >> 14;
2479    insn[0] = (insn[0] & ~0xffffc0) | (tie_t << 6);
2480  }
2481  
2482  static unsigned
2483  Field_xt_wbr18_imm_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
2484  {
2485 -  unsigned tie_t = (insn[0] >> 8) & 0x3ffff;
2486 +  unsigned tie_t = 0;
2487 +  tie_t = (tie_t << 18) | ((insn[0] << 6) >> 14);
2488    return tie_t;
2489  }
2490  
2491  static void
2492  Field_xt_wbr18_imm_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
2493  {
2494 -  uint32 tie_t = val & 0x3ffff;
2495 +  uint32 tie_t;
2496 +  tie_t = (val << 14) >> 14;
2497    insn[0] = (insn[0] & ~0x3ffff00) | (tie_t << 8);
2498  }
2499  
2500  static unsigned
2501  Field_op0_xt_flix64_slot0_s3_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
2502  {
2503 -  unsigned tie_t = (insn[0] >> 20) & 0xf;
2504 +  unsigned tie_t = 0;
2505 +  tie_t = (tie_t << 4) | ((insn[0] << 8) >> 28);
2506    return tie_t;
2507  }
2508  
2509  static void
2510  Field_op0_xt_flix64_slot0_s3_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
2511  {
2512 -  uint32 tie_t = val & 0xf;
2513 +  uint32 tie_t;
2514 +  tie_t = (val << 28) >> 28;
2515    insn[0] = (insn[0] & ~0xf00000) | (tie_t << 20);
2516  }
2517  
2518  static unsigned
2519  Field_combined3e2c5767_fld7_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
2520  {
2521 -  unsigned tie_t = (insn[0] >> 13) & 7;
2522 +  unsigned tie_t = 0;
2523 +  tie_t = (tie_t << 3) | ((insn[0] << 16) >> 29);
2524    return tie_t;
2525  }
2526  
2527  static void
2528  Field_combined3e2c5767_fld7_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
2529  {
2530 -  uint32 tie_t = val & 7;
2531 +  uint32 tie_t;
2532 +  tie_t = (val << 29) >> 29;
2533    insn[0] = (insn[0] & ~0xe000) | (tie_t << 13);
2534  }
2535  
2536  static unsigned
2537  Field_combined3e2c5767_fld8_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
2538  {
2539 -  unsigned tie_t = (insn[0] >> 13) & 7;
2540 +  unsigned tie_t = 0;
2541 +  tie_t = (tie_t << 3) | ((insn[0] << 16) >> 29);
2542    return tie_t;
2543  }
2544  
2545  static void
2546  Field_combined3e2c5767_fld8_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
2547  {
2548 -  uint32 tie_t = val & 7;
2549 +  uint32 tie_t;
2550 +  tie_t = (val << 29) >> 29;
2551    insn[0] = (insn[0] & ~0xe000) | (tie_t << 13);
2552  }
2553  
2554  static unsigned
2555  Field_combined3e2c5767_fld9_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
2556  {
2557 -  unsigned tie_t = (insn[0] >> 17) & 7;
2558 +  unsigned tie_t = 0;
2559 +  tie_t = (tie_t << 3) | ((insn[0] << 12) >> 29);
2560    return tie_t;
2561  }
2562  
2563  static void
2564  Field_combined3e2c5767_fld9_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
2565  {
2566 -  uint32 tie_t = val & 7;
2567 +  uint32 tie_t;
2568 +  tie_t = (val << 29) >> 29;
2569    insn[0] = (insn[0] & ~0xe0000) | (tie_t << 17);
2570  }
2571  
2572  static unsigned
2573  Field_combined3e2c5767_fld11_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
2574  {
2575 -  unsigned tie_t = (insn[0] >> 17) & 7;
2576 +  unsigned tie_t = 0;
2577 +  tie_t = (tie_t << 3) | ((insn[0] << 12) >> 29);
2578    return tie_t;
2579  }
2580  
2581  static void
2582  Field_combined3e2c5767_fld11_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
2583  {
2584 -  uint32 tie_t = val & 7;
2585 +  uint32 tie_t;
2586 +  tie_t = (val << 29) >> 29;
2587    insn[0] = (insn[0] & ~0xe0000) | (tie_t << 17);
2588  }
2589  
2590  static unsigned
2591  Field_combined3e2c5767_fld49xt_flix64_slot0_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
2592  {
2593 -  unsigned tie_t = (insn[0] >> 16) & 0xf;
2594 -  tie_t = (tie_t << 4) | ((insn[0] >> 8) & 0xf);
2595 +  unsigned tie_t = 0;
2596 +  tie_t = (tie_t << 4) | ((insn[0] << 12) >> 28);
2597 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
2598    return tie_t;
2599  }
2600  
2601  static void
2602  Field_combined3e2c5767_fld49xt_flix64_slot0_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
2603  {
2604 -  uint32 tie_t = val & 0xf;
2605 +  uint32 tie_t;
2606 +  tie_t = (val << 28) >> 28;
2607    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
2608 -  tie_t = (val >> 4) & 0xf;
2609 +  tie_t = (val << 24) >> 28;
2610    insn[0] = (insn[0] & ~0xf0000) | (tie_t << 16);
2611  }
2612  
2613  static unsigned
2614  Field_op0_s4_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2615  {
2616 -  unsigned tie_t = (insn[0] >> 18) & 3;
2617 +  unsigned tie_t = 0;
2618 +  tie_t = (tie_t << 2) | ((insn[0] << 12) >> 30);
2619    return tie_t;
2620  }
2621  
2622  static void
2623  Field_op0_s4_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2624  {
2625 -  uint32 tie_t = val & 3;
2626 +  uint32 tie_t;
2627 +  tie_t = (val << 30) >> 30;
2628    insn[0] = (insn[0] & ~0xc0000) | (tie_t << 18);
2629  }
2630  
2631  static unsigned
2632  Field_combined3e2c5767_fld16_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2633  {
2634 -  unsigned tie_t = (insn[0] >> 12) & 0xf;
2635 +  unsigned tie_t = 0;
2636 +  tie_t = (tie_t << 4) | ((insn[0] << 16) >> 28);
2637    return tie_t;
2638  }
2639  
2640  static void
2641  Field_combined3e2c5767_fld16_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2642  {
2643 -  uint32 tie_t = val & 0xf;
2644 +  uint32 tie_t;
2645 +  tie_t = (val << 28) >> 28;
2646    insn[0] = (insn[0] & ~0xf000) | (tie_t << 12);
2647  }
2648  
2649  static unsigned
2650  Field_combined3e2c5767_fld19xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2651  {
2652 -  unsigned tie_t = (insn[0] >> 17) & 1;
2653 +  unsigned tie_t = 0;
2654 +  tie_t = (tie_t << 1) | ((insn[0] << 14) >> 31);
2655    return tie_t;
2656  }
2657  
2658  static void
2659  Field_combined3e2c5767_fld19xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2660  {
2661 -  uint32 tie_t = val & 1;
2662 +  uint32 tie_t;
2663 +  tie_t = (val << 31) >> 31;
2664    insn[0] = (insn[0] & ~0x20000) | (tie_t << 17);
2665  }
2666  
2667  static unsigned
2668  Field_combined3e2c5767_fld20xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2669  {
2670 -  unsigned tie_t = (insn[0] >> 16) & 3;
2671 +  unsigned tie_t = 0;
2672 +  tie_t = (tie_t << 2) | ((insn[0] << 14) >> 30);
2673    return tie_t;
2674  }
2675  
2676  static void
2677  Field_combined3e2c5767_fld20xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2678  {
2679 -  uint32 tie_t = val & 3;
2680 +  uint32 tie_t;
2681 +  tie_t = (val << 30) >> 30;
2682    insn[0] = (insn[0] & ~0x30000) | (tie_t << 16);
2683  }
2684  
2685  static unsigned
2686  Field_combined3e2c5767_fld21xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2687  {
2688 -  unsigned tie_t = (insn[0] >> 13) & 0x1f;
2689 +  unsigned tie_t = 0;
2690 +  tie_t = (tie_t << 5) | ((insn[0] << 14) >> 27);
2691    return tie_t;
2692  }
2693  
2694  static void
2695  Field_combined3e2c5767_fld21xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2696  {
2697 -  uint32 tie_t = val & 0x1f;
2698 +  uint32 tie_t;
2699 +  tie_t = (val << 27) >> 27;
2700    insn[0] = (insn[0] & ~0x3e000) | (tie_t << 13);
2701  }
2702  
2703  static unsigned
2704  Field_combined3e2c5767_fld22xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2705  {
2706 -  unsigned tie_t = (insn[0] >> 12) & 0x3f;
2707 +  unsigned tie_t = 0;
2708 +  tie_t = (tie_t << 6) | ((insn[0] << 14) >> 26);
2709    return tie_t;
2710  }
2711  
2712  static void
2713  Field_combined3e2c5767_fld22xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2714  {
2715 -  uint32 tie_t = val & 0x3f;
2716 +  uint32 tie_t;
2717 +  tie_t = (val << 26) >> 26;
2718    insn[0] = (insn[0] & ~0x3f000) | (tie_t << 12);
2719  }
2720  
2721  static unsigned
2722  Field_combined3e2c5767_fld23xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2723  {
2724 -  unsigned tie_t = (insn[0] >> 12) & 0x3f;
2725 -  tie_t = (tie_t << 3) | ((insn[0] >> 4) & 7);
2726 +  unsigned tie_t = 0;
2727 +  tie_t = (tie_t << 6) | ((insn[0] << 14) >> 26);
2728 +  tie_t = (tie_t << 3) | ((insn[0] << 25) >> 29);
2729    return tie_t;
2730  }
2731  
2732  static void
2733  Field_combined3e2c5767_fld23xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2734  {
2735 -  uint32 tie_t = val & 7;
2736 +  uint32 tie_t;
2737 +  tie_t = (val << 29) >> 29;
2738    insn[0] = (insn[0] & ~0x70) | (tie_t << 4);
2739 -  tie_t = (val >> 3) & 0x3f;
2740 +  tie_t = (val << 23) >> 26;
2741    insn[0] = (insn[0] & ~0x3f000) | (tie_t << 12);
2742  }
2743  
2744  static unsigned
2745  Field_combined3e2c5767_fld25xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2746  {
2747 -  unsigned tie_t = (insn[0] >> 12) & 0x3f;
2748 -  tie_t = (tie_t << 3) | ((insn[0] >> 4) & 7);
2749 +  unsigned tie_t = 0;
2750 +  tie_t = (tie_t << 6) | ((insn[0] << 14) >> 26);
2751 +  tie_t = (tie_t << 3) | ((insn[0] << 25) >> 29);
2752    return tie_t;
2753  }
2754  
2755  static void
2756  Field_combined3e2c5767_fld25xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2757  {
2758 -  uint32 tie_t = val & 7;
2759 +  uint32 tie_t;
2760 +  tie_t = (val << 29) >> 29;
2761    insn[0] = (insn[0] & ~0x70) | (tie_t << 4);
2762 -  tie_t = (val >> 3) & 0x3f;
2763 +  tie_t = (val << 23) >> 26;
2764    insn[0] = (insn[0] & ~0x3f000) | (tie_t << 12);
2765  }
2766  
2767  static unsigned
2768  Field_combined3e2c5767_fld26xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2769  {
2770 -  unsigned tie_t = (insn[0] >> 12) & 0x3f;
2771 -  tie_t = (tie_t << 2) | ((insn[0] >> 5) & 3);
2772 +  unsigned tie_t = 0;
2773 +  tie_t = (tie_t << 6) | ((insn[0] << 14) >> 26);
2774 +  tie_t = (tie_t << 2) | ((insn[0] << 25) >> 30);
2775    return tie_t;
2776  }
2777  
2778  static void
2779  Field_combined3e2c5767_fld26xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2780  {
2781 -  uint32 tie_t = val & 3;
2782 +  uint32 tie_t;
2783 +  tie_t = (val << 30) >> 30;
2784    insn[0] = (insn[0] & ~0x60) | (tie_t << 5);
2785 -  tie_t = (val >> 2) & 0x3f;
2786 +  tie_t = (val << 24) >> 26;
2787    insn[0] = (insn[0] & ~0x3f000) | (tie_t << 12);
2788  }
2789  
2790  static unsigned
2791  Field_combined3e2c5767_fld28xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2792  {
2793 -  unsigned tie_t = (insn[0] >> 12) & 0x3f;
2794 -  tie_t = (tie_t << 1) | ((insn[0] >> 6) & 1);
2795 +  unsigned tie_t = 0;
2796 +  tie_t = (tie_t << 6) | ((insn[0] << 14) >> 26);
2797 +  tie_t = (tie_t << 1) | ((insn[0] << 25) >> 31);
2798    return tie_t;
2799  }
2800  
2801  static void
2802  Field_combined3e2c5767_fld28xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2803  {
2804 -  uint32 tie_t = val & 1;
2805 +  uint32 tie_t;
2806 +  tie_t = (val << 31) >> 31;
2807    insn[0] = (insn[0] & ~0x40) | (tie_t << 6);
2808 -  tie_t = (val >> 1) & 0x3f;
2809 +  tie_t = (val << 25) >> 26;
2810    insn[0] = (insn[0] & ~0x3f000) | (tie_t << 12);
2811  }
2812  
2813  static unsigned
2814  Field_combined3e2c5767_fld30xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2815  {
2816 -  unsigned tie_t = (insn[0] >> 12) & 0x3f;
2817 -  tie_t = (tie_t << 2) | ((insn[0] >> 8) & 3);
2818 +  unsigned tie_t = 0;
2819 +  tie_t = (tie_t << 6) | ((insn[0] << 14) >> 26);
2820 +  tie_t = (tie_t << 2) | ((insn[0] << 22) >> 30);
2821    return tie_t;
2822  }
2823  
2824  static void
2825  Field_combined3e2c5767_fld30xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2826  {
2827 -  uint32 tie_t = val & 3;
2828 +  uint32 tie_t;
2829 +  tie_t = (val << 30) >> 30;
2830    insn[0] = (insn[0] & ~0x300) | (tie_t << 8);
2831 -  tie_t = (val >> 2) & 0x3f;
2832 +  tie_t = (val << 24) >> 26;
2833    insn[0] = (insn[0] & ~0x3f000) | (tie_t << 12);
2834  }
2835  
2836  static unsigned
2837  Field_combined3e2c5767_fld32xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2838  {
2839 -  unsigned tie_t = (insn[0] >> 12) & 0x3f;
2840 -  tie_t = (tie_t << 2) | ((insn[0] >> 8) & 3);
2841 +  unsigned tie_t = 0;
2842 +  tie_t = (tie_t << 6) | ((insn[0] << 14) >> 26);
2843 +  tie_t = (tie_t << 2) | ((insn[0] << 22) >> 30);
2844    return tie_t;
2845  }
2846  
2847  static void
2848  Field_combined3e2c5767_fld32xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2849  {
2850 -  uint32 tie_t = val & 3;
2851 +  uint32 tie_t;
2852 +  tie_t = (val << 30) >> 30;
2853    insn[0] = (insn[0] & ~0x300) | (tie_t << 8);
2854 -  tie_t = (val >> 2) & 0x3f;
2855 +  tie_t = (val << 24) >> 26;
2856    insn[0] = (insn[0] & ~0x3f000) | (tie_t << 12);
2857  }
2858  
2859  static unsigned
2860  Field_combined3e2c5767_fld33xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2861  {
2862 -  unsigned tie_t = (insn[0] >> 12) & 0x3f;
2863 -  tie_t = (tie_t << 1) | ((insn[0] >> 9) & 1);
2864 +  unsigned tie_t = 0;
2865 +  tie_t = (tie_t << 6) | ((insn[0] << 14) >> 26);
2866 +  tie_t = (tie_t << 1) | ((insn[0] << 22) >> 31);
2867    return tie_t;
2868  }
2869  
2870  static void
2871  Field_combined3e2c5767_fld33xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2872  {
2873 -  uint32 tie_t = val & 1;
2874 +  uint32 tie_t;
2875 +  tie_t = (val << 31) >> 31;
2876    insn[0] = (insn[0] & ~0x200) | (tie_t << 9);
2877 -  tie_t = (val >> 1) & 0x3f;
2878 +  tie_t = (val << 25) >> 26;
2879    insn[0] = (insn[0] & ~0x3f000) | (tie_t << 12);
2880  }
2881  
2882  static unsigned
2883  Field_combined3e2c5767_fld35xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2884  {
2885 -  unsigned tie_t = (insn[0] >> 15) & 7;
2886 +  unsigned tie_t = 0;
2887 +  tie_t = (tie_t << 3) | ((insn[0] << 14) >> 29);
2888    return tie_t;
2889  }
2890  
2891  static void
2892  Field_combined3e2c5767_fld35xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2893  {
2894 -  uint32 tie_t = val & 7;
2895 +  uint32 tie_t;
2896 +  tie_t = (val << 29) >> 29;
2897    insn[0] = (insn[0] & ~0x38000) | (tie_t << 15);
2898  }
2899  
2900  static unsigned
2901  Field_combined3e2c5767_fld51xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2902  {
2903 -  unsigned tie_t = (insn[0] >> 7) & 1;
2904 +  unsigned tie_t = 0;
2905 +  tie_t = (tie_t << 1) | ((insn[0] << 24) >> 31);
2906    return tie_t;
2907  }
2908  
2909  static void
2910  Field_combined3e2c5767_fld51xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2911  {
2912 -  uint32 tie_t = val & 1;
2913 +  uint32 tie_t;
2914 +  tie_t = (val << 31) >> 31;
2915    insn[0] = (insn[0] & ~0x80) | (tie_t << 7);
2916  }
2917  
2918  static unsigned
2919  Field_combined3e2c5767_fld52xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2920  {
2921 -  unsigned tie_t = (insn[0] >> 7) & 1;
2922 -  tie_t = (tie_t << 4) | (insn[0] & 0xf);
2923 +  unsigned tie_t = 0;
2924 +  tie_t = (tie_t << 1) | ((insn[0] << 24) >> 31);
2925 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
2926    return tie_t;
2927  }
2928  
2929  static void
2930  Field_combined3e2c5767_fld52xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2931  {
2932 -  uint32 tie_t = val & 0xf;
2933 +  uint32 tie_t;
2934 +  tie_t = (val << 28) >> 28;
2935    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
2936 -  tie_t = (val >> 4) & 1;
2937 +  tie_t = (val << 27) >> 31;
2938    insn[0] = (insn[0] & ~0x80) | (tie_t << 7);
2939  }
2940  
2941  static unsigned
2942  Field_combined3e2c5767_fld53xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2943  {
2944 -  unsigned tie_t = (insn[0] >> 10) & 3;
2945 +  unsigned tie_t = 0;
2946 +  tie_t = (tie_t << 2) | ((insn[0] << 20) >> 30);
2947    return tie_t;
2948  }
2949  
2950  static void
2951  Field_combined3e2c5767_fld53xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2952  {
2953 -  uint32 tie_t = val & 3;
2954 +  uint32 tie_t;
2955 +  tie_t = (val << 30) >> 30;
2956    insn[0] = (insn[0] & ~0xc00) | (tie_t << 10);
2957  }
2958  
2959  static unsigned
2960  Field_combined3e2c5767_fld54xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2961  {
2962 -  unsigned tie_t = (insn[0] >> 7) & 0x1f;
2963 -  tie_t = (tie_t << 6) | (insn[0] & 0x3f);
2964 +  unsigned tie_t = 0;
2965 +  tie_t = (tie_t << 5) | ((insn[0] << 20) >> 27);
2966 +  tie_t = (tie_t << 6) | ((insn[0] << 26) >> 26);
2967    return tie_t;
2968  }
2969  
2970  static void
2971  Field_combined3e2c5767_fld54xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2972  {
2973 -  uint32 tie_t = val & 0x3f;
2974 +  uint32 tie_t;
2975 +  tie_t = (val << 26) >> 26;
2976    insn[0] = (insn[0] & ~0x3f) | (tie_t << 0);
2977 -  tie_t = (val >> 6) & 0x1f;
2978 +  tie_t = (val << 21) >> 27;
2979    insn[0] = (insn[0] & ~0xf80) | (tie_t << 7);
2980  }
2981  
2982  static unsigned
2983  Field_combined3e2c5767_fld57xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
2984  {
2985 -  unsigned tie_t = (insn[0] >> 12) & 1;
2986 -  tie_t = (tie_t << 4) | (insn[0] & 0xf);
2987 +  unsigned tie_t = 0;
2988 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
2989 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
2990    return tie_t;
2991  }
2992  
2993  static void
2994  Field_combined3e2c5767_fld57xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
2995  {
2996 -  uint32 tie_t = val & 0xf;
2997 +  uint32 tie_t;
2998 +  tie_t = (val << 28) >> 28;
2999    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
3000 -  tie_t = (val >> 4) & 1;
3001 +  tie_t = (val << 27) >> 31;
3002    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
3003  }
3004  
3005  static unsigned
3006  Field_combined3e2c5767_fld58xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
3007  {
3008 -  unsigned tie_t = (insn[0] >> 10) & 3;
3009 -  tie_t = (tie_t << 1) | ((insn[0] >> 8) & 1);
3010 +  unsigned tie_t = 0;
3011 +  tie_t = (tie_t << 2) | ((insn[0] << 20) >> 30);
3012 +  tie_t = (tie_t << 1) | ((insn[0] << 23) >> 31);
3013    return tie_t;
3014  }
3015  
3016  static void
3017  Field_combined3e2c5767_fld58xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
3018  {
3019 -  uint32 tie_t = val & 1;
3020 +  uint32 tie_t;
3021 +  tie_t = (val << 31) >> 31;
3022    insn[0] = (insn[0] & ~0x100) | (tie_t << 8);
3023 -  tie_t = (val >> 1) & 3;
3024 +  tie_t = (val << 29) >> 30;
3025    insn[0] = (insn[0] & ~0xc00) | (tie_t << 10);
3026  }
3027  
3028  static unsigned
3029  Field_combined3e2c5767_fld60xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
3030  {
3031 -  unsigned tie_t = (insn[0] >> 7) & 1;
3032 -  tie_t = (tie_t << 5) | (insn[0] & 0x1f);
3033 +  unsigned tie_t = 0;
3034 +  tie_t = (tie_t << 1) | ((insn[0] << 24) >> 31);
3035 +  tie_t = (tie_t << 5) | ((insn[0] << 27) >> 27);
3036    return tie_t;
3037  }
3038  
3039  static void
3040  Field_combined3e2c5767_fld60xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
3041  {
3042 -  uint32 tie_t = val & 0x1f;
3043 +  uint32 tie_t;
3044 +  tie_t = (val << 27) >> 27;
3045    insn[0] = (insn[0] & ~0x1f) | (tie_t << 0);
3046 -  tie_t = (val >> 5) & 1;
3047 +  tie_t = (val << 26) >> 31;
3048    insn[0] = (insn[0] & ~0x80) | (tie_t << 7);
3049  }
3050  
3051  static unsigned
3052  Field_combined3e2c5767_fld62xt_flix64_slot1_Slot_xt_flix64_slot1_get (const xtensa_insnbuf insn)
3053  {
3054 -  unsigned tie_t = (insn[0] >> 12) & 7;
3055 +  unsigned tie_t = 0;
3056 +  tie_t = (tie_t << 3) | ((insn[0] << 17) >> 29);
3057    return tie_t;
3058  }
3059  
3060  static void
3061  Field_combined3e2c5767_fld62xt_flix64_slot1_Slot_xt_flix64_slot1_set (xtensa_insnbuf insn, uint32 val)
3062  {
3063 -  uint32 tie_t = val & 7;
3064 +  uint32 tie_t;
3065 +  tie_t = (val << 29) >> 29;
3066    insn[0] = (insn[0] & ~0x7000) | (tie_t << 12);
3067  }
3068  
3069  static unsigned
3070  Field_op0_s5_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3071  {
3072 -  unsigned tie_t = (insn[0] >> 13) & 7;
3073 +  unsigned tie_t = 0;
3074 +  tie_t = (tie_t << 3) | ((insn[0] << 16) >> 29);
3075    return tie_t;
3076  }
3077  
3078  static void
3079  Field_op0_s5_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3080  {
3081 -  uint32 tie_t = val & 7;
3082 +  uint32 tie_t;
3083 +  tie_t = (val << 29) >> 29;
3084    insn[0] = (insn[0] & ~0xe000) | (tie_t << 13);
3085  }
3086  
3087  static unsigned
3088  Field_combined3e2c5767_fld36xt_flix64_slot2_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3089  {
3090 -  unsigned tie_t = (insn[0] >> 12) & 1;
3091 +  unsigned tie_t = 0;
3092 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
3093    return tie_t;
3094  }
3095  
3096  static void
3097  Field_combined3e2c5767_fld36xt_flix64_slot2_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3098  {
3099 -  uint32 tie_t = val & 1;
3100 +  uint32 tie_t;
3101 +  tie_t = (val << 31) >> 31;
3102    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
3103  }
3104  
3105  static unsigned
3106  Field_combined3e2c5767_fld37xt_flix64_slot2_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3107  {
3108 -  unsigned tie_t = (insn[0] >> 12) & 1;
3109 -  tie_t = (tie_t << 1) | ((insn[0] >> 7) & 1);
3110 +  unsigned tie_t = 0;
3111 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
3112 +  tie_t = (tie_t << 1) | ((insn[0] << 24) >> 31);
3113    return tie_t;
3114  }
3115  
3116  static void
3117  Field_combined3e2c5767_fld37xt_flix64_slot2_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3118  {
3119 -  uint32 tie_t = val & 1;
3120 +  uint32 tie_t;
3121 +  tie_t = (val << 31) >> 31;
3122    insn[0] = (insn[0] & ~0x80) | (tie_t << 7);
3123 -  tie_t = (val >> 1) & 1;
3124 +  tie_t = (val << 30) >> 31;
3125    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
3126  }
3127  
3128  static unsigned
3129  Field_combined3e2c5767_fld39xt_flix64_slot2_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3130  {
3131 -  unsigned tie_t = (insn[0] >> 12) & 1;
3132 -  tie_t = (tie_t << 1) | ((insn[0] >> 7) & 1);
3133 -  tie_t = (tie_t << 1) | ((insn[0] >> 4) & 1);
3134 +  unsigned tie_t = 0;
3135 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
3136 +  tie_t = (tie_t << 1) | ((insn[0] << 24) >> 31);
3137 +  tie_t = (tie_t << 1) | ((insn[0] << 27) >> 31);
3138    return tie_t;
3139  }
3140  
3141  static void
3142  Field_combined3e2c5767_fld39xt_flix64_slot2_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3143  {
3144 -  uint32 tie_t = val & 1;
3145 +  uint32 tie_t;
3146 +  tie_t = (val << 31) >> 31;
3147    insn[0] = (insn[0] & ~0x10) | (tie_t << 4);
3148 -  tie_t = (val >> 1) & 1;
3149 +  tie_t = (val << 30) >> 31;
3150    insn[0] = (insn[0] & ~0x80) | (tie_t << 7);
3151 -  tie_t = (val >> 2) & 1;
3152 +  tie_t = (val << 29) >> 31;
3153    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
3154  }
3155  
3156  static unsigned
3157  Field_combined3e2c5767_fld41xt_flix64_slot2_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3158  {
3159 -  unsigned tie_t = (insn[0] >> 12) & 1;
3160 -  tie_t = (tie_t << 1) | ((insn[0] >> 7) & 1);
3161 -  tie_t = (tie_t << 1) | ((insn[0] >> 4) & 1);
3162 +  unsigned tie_t = 0;
3163 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
3164 +  tie_t = (tie_t << 1) | ((insn[0] << 24) >> 31);
3165 +  tie_t = (tie_t << 1) | ((insn[0] << 27) >> 31);
3166    return tie_t;
3167  }
3168  
3169  static void
3170  Field_combined3e2c5767_fld41xt_flix64_slot2_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3171  {
3172 -  uint32 tie_t = val & 1;
3173 +  uint32 tie_t;
3174 +  tie_t = (val << 31) >> 31;
3175    insn[0] = (insn[0] & ~0x10) | (tie_t << 4);
3176 -  tie_t = (val >> 1) & 1;
3177 +  tie_t = (val << 30) >> 31;
3178    insn[0] = (insn[0] & ~0x80) | (tie_t << 7);
3179 -  tie_t = (val >> 2) & 1;
3180 +  tie_t = (val << 29) >> 31;
3181    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
3182  }
3183  
3184  static unsigned
3185  Field_combined3e2c5767_fld42xt_flix64_slot2_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3186  {
3187 -  unsigned tie_t = (insn[0] >> 12) & 1;
3188 -  tie_t = (tie_t << 3) | ((insn[0] >> 8) & 7);
3189 +  unsigned tie_t = 0;
3190 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
3191 +  tie_t = (tie_t << 3) | ((insn[0] << 21) >> 29);
3192    return tie_t;
3193  }
3194  
3195  static void
3196  Field_combined3e2c5767_fld42xt_flix64_slot2_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3197  {
3198 -  uint32 tie_t = val & 7;
3199 +  uint32 tie_t;
3200 +  tie_t = (val << 29) >> 29;
3201    insn[0] = (insn[0] & ~0x700) | (tie_t << 8);
3202 -  tie_t = (val >> 3) & 1;
3203 +  tie_t = (val << 28) >> 31;
3204    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
3205  }
3206  
3207  static unsigned
3208  Field_combined3e2c5767_fld44xt_flix64_slot2_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3209  {
3210 -  unsigned tie_t = (insn[0] >> 12) & 1;
3211 -  tie_t = (tie_t << 3) | ((insn[0] >> 8) & 7);
3212 +  unsigned tie_t = 0;
3213 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
3214 +  tie_t = (tie_t << 3) | ((insn[0] << 21) >> 29);
3215    return tie_t;
3216  }
3217  
3218  static void
3219  Field_combined3e2c5767_fld44xt_flix64_slot2_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3220  {
3221 -  uint32 tie_t = val & 7;
3222 +  uint32 tie_t;
3223 +  tie_t = (val << 29) >> 29;
3224    insn[0] = (insn[0] & ~0x700) | (tie_t << 8);
3225 -  tie_t = (val >> 3) & 1;
3226 +  tie_t = (val << 28) >> 31;
3227    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
3228  }
3229  
3230  static unsigned
3231  Field_combined3e2c5767_fld45xt_flix64_slot2_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3232  {
3233 -  unsigned tie_t = (insn[0] >> 12) & 1;
3234 -  tie_t = (tie_t << 2) | ((insn[0] >> 9) & 3);
3235 +  unsigned tie_t = 0;
3236 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
3237 +  tie_t = (tie_t << 2) | ((insn[0] << 21) >> 30);
3238    return tie_t;
3239  }
3240  
3241  static void
3242  Field_combined3e2c5767_fld45xt_flix64_slot2_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3243  {
3244 -  uint32 tie_t = val & 3;
3245 +  uint32 tie_t;
3246 +  tie_t = (val << 30) >> 30;
3247    insn[0] = (insn[0] & ~0x600) | (tie_t << 9);
3248 -  tie_t = (val >> 2) & 1;
3249 +  tie_t = (val << 29) >> 31;
3250    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
3251  }
3252  
3253  static unsigned
3254  Field_combined3e2c5767_fld47xt_flix64_slot2_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3255  {
3256 -  unsigned tie_t = (insn[0] >> 12) & 1;
3257 -  tie_t = (tie_t << 1) | ((insn[0] >> 10) & 1);
3258 +  unsigned tie_t = 0;
3259 +  tie_t = (tie_t << 1) | ((insn[0] << 19) >> 31);
3260 +  tie_t = (tie_t << 1) | ((insn[0] << 21) >> 31);
3261    return tie_t;
3262  }
3263  
3264  static void
3265  Field_combined3e2c5767_fld47xt_flix64_slot2_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3266  {
3267 -  uint32 tie_t = val & 1;
3268 +  uint32 tie_t;
3269 +  tie_t = (val << 31) >> 31;
3270    insn[0] = (insn[0] & ~0x400) | (tie_t << 10);
3271 -  tie_t = (val >> 1) & 1;
3272 +  tie_t = (val << 30) >> 31;
3273    insn[0] = (insn[0] & ~0x1000) | (tie_t << 12);
3274  }
3275  
3276  static unsigned
3277  Field_combined3e2c5767_fld63xt_flix64_slot2_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3278  {
3279 -  unsigned tie_t = (insn[0] >> 5) & 3;
3280 +  unsigned tie_t = 0;
3281 +  tie_t = (tie_t << 2) | ((insn[0] << 25) >> 30);
3282    return tie_t;
3283  }
3284  
3285  static void
3286  Field_combined3e2c5767_fld63xt_flix64_slot2_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3287  {
3288 -  uint32 tie_t = val & 3;
3289 +  uint32 tie_t;
3290 +  tie_t = (val << 30) >> 30;
3291    insn[0] = (insn[0] & ~0x60) | (tie_t << 5);
3292  }
3293  
3294  static unsigned
3295  Field_combined3e2c5767_fld64xt_flix64_slot2_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3296  {
3297 -  unsigned tie_t = (insn[0] >> 11) & 1;
3298 +  unsigned tie_t = 0;
3299 +  tie_t = (tie_t << 1) | ((insn[0] << 20) >> 31);
3300    return tie_t;
3301  }
3302  
3303  static void
3304  Field_combined3e2c5767_fld64xt_flix64_slot2_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3305  {
3306 -  uint32 tie_t = val & 1;
3307 +  uint32 tie_t;
3308 +  tie_t = (val << 31) >> 31;
3309    insn[0] = (insn[0] & ~0x800) | (tie_t << 11);
3310  }
3311  
3312  static unsigned
3313  Field_combined3e2c5767_fld65xt_flix64_slot2_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3314  {
3315 -  unsigned tie_t = (insn[0] >> 8) & 0xf;
3316 -  tie_t = (tie_t << 2) | ((insn[0] >> 5) & 3);
3317 -  tie_t = (tie_t << 4) | (insn[0] & 0xf);
3318 +  unsigned tie_t = 0;
3319 +  tie_t = (tie_t << 4) | ((insn[0] << 20) >> 28);
3320 +  tie_t = (tie_t << 2) | ((insn[0] << 25) >> 30);
3321 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
3322    return tie_t;
3323  }
3324  
3325  static void
3326  Field_combined3e2c5767_fld65xt_flix64_slot2_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3327  {
3328 -  uint32 tie_t = val & 0xf;
3329 +  uint32 tie_t;
3330 +  tie_t = (val << 28) >> 28;
3331    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
3332 -  tie_t = (val >> 4) & 3;
3333 +  tie_t = (val << 26) >> 30;
3334    insn[0] = (insn[0] & ~0x60) | (tie_t << 5);
3335 -  tie_t = (val >> 6) & 0xf;
3336 +  tie_t = (val << 22) >> 28;
3337    insn[0] = (insn[0] & ~0xf00) | (tie_t << 8);
3338  }
3339  
3340  static unsigned
3341  Field_combined3e2c5767_fld66xt_flix64_slot2_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3342  {
3343 -  unsigned tie_t = (insn[0] >> 11) & 1;
3344 -  tie_t = (tie_t << 1) | ((insn[0] >> 8) & 1);
3345 +  unsigned tie_t = 0;
3346 +  tie_t = (tie_t << 1) | ((insn[0] << 20) >> 31);
3347 +  tie_t = (tie_t << 1) | ((insn[0] << 23) >> 31);
3348    return tie_t;
3349  }
3350  
3351  static void
3352  Field_combined3e2c5767_fld66xt_flix64_slot2_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3353  {
3354 -  uint32 tie_t = val & 1;
3355 +  uint32 tie_t;
3356 +  tie_t = (val << 31) >> 31;
3357    insn[0] = (insn[0] & ~0x100) | (tie_t << 8);
3358 -  tie_t = (val >> 1) & 1;
3359 +  tie_t = (val << 30) >> 31;
3360    insn[0] = (insn[0] & ~0x800) | (tie_t << 11);
3361  }
3362  
3363  static unsigned
3364  Field_combined3e2c5767_fld68xt_flix64_slot2_Slot_xt_flix64_slot2_get (const xtensa_insnbuf insn)
3365  {
3366 -  unsigned tie_t = (insn[0] >> 11) & 1;
3367 -  tie_t = (tie_t << 2) | ((insn[0] >> 8) & 3);
3368 +  unsigned tie_t = 0;
3369 +  tie_t = (tie_t << 1) | ((insn[0] << 20) >> 31);
3370 +  tie_t = (tie_t << 2) | ((insn[0] << 22) >> 30);
3371    return tie_t;
3372  }
3373  
3374  static void
3375  Field_combined3e2c5767_fld68xt_flix64_slot2_Slot_xt_flix64_slot2_set (xtensa_insnbuf insn, uint32 val)
3376  {
3377 -  uint32 tie_t = val & 3;
3378 +  uint32 tie_t;
3379 +  tie_t = (val << 30) >> 30;
3380    insn[0] = (insn[0] & ~0x300) | (tie_t << 8);
3381 -  tie_t = (val >> 2) & 1;
3382 +  tie_t = (val << 29) >> 31;
3383    insn[0] = (insn[0] & ~0x800) | (tie_t << 11);
3384  }
3385  
3386  static unsigned
3387  Field_op0_s6_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3388  {
3389 -  unsigned tie_t = (insn[0] >> 27) & 0x1f;
3390 +  unsigned tie_t = 0;
3391 +  tie_t = (tie_t << 5) | ((insn[0] << 0) >> 27);
3392    return tie_t;
3393  }
3394  
3395  static void
3396  Field_op0_s6_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3397  {
3398 -  uint32 tie_t = val & 0x1f;
3399 +  uint32 tie_t;
3400 +  tie_t = (val << 27) >> 27;
3401    insn[0] = (insn[0] & ~0xf8000000) | (tie_t << 27);
3402  }
3403  
3404  static unsigned
3405  Field_combined3e2c5767_fld70xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3406  {
3407 -  unsigned tie_t = insn[1] & 7;
3408 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3409 -  tie_t = (tie_t << 4) | (insn[0] & 0xf);
3410 +  unsigned tie_t = 0;
3411 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3412 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3413 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
3414    return tie_t;
3415  }
3416  
3417  static void
3418  Field_combined3e2c5767_fld70xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3419  {
3420 -  uint32 tie_t = val & 0xf;
3421 +  uint32 tie_t;
3422 +  tie_t = (val << 28) >> 28;
3423    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
3424 -  tie_t = (val >> 4) & 1;
3425 +  tie_t = (val << 27) >> 31;
3426    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3427 -  tie_t = (val >> 5) & 7;
3428 +  tie_t = (val << 24) >> 29;
3429    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3430  }
3431  
3432  static unsigned
3433  Field_combined3e2c5767_fld71_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3434  {
3435 -  unsigned tie_t = insn[1] & 7;
3436 +  unsigned tie_t = 0;
3437 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3438    return tie_t;
3439  }
3440  
3441  static void
3442  Field_combined3e2c5767_fld71_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3443  {
3444 -  uint32 tie_t = val & 7;
3445 +  uint32 tie_t;
3446 +  tie_t = (val << 29) >> 29;
3447    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3448  }
3449  
3450  static unsigned
3451  Field_combined3e2c5767_fld72xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3452  {
3453 -  unsigned tie_t = insn[1] & 7;
3454 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3455 -  tie_t = (tie_t << 4) | (insn[0] & 0xf);
3456 +  unsigned tie_t = 0;
3457 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3458 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3459 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
3460    return tie_t;
3461  }
3462  
3463  static void
3464  Field_combined3e2c5767_fld72xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3465  {
3466 -  uint32 tie_t = val & 0xf;
3467 +  uint32 tie_t;
3468 +  tie_t = (val << 28) >> 28;
3469    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
3470 -  tie_t = (val >> 4) & 1;
3471 +  tie_t = (val << 27) >> 31;
3472    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3473 -  tie_t = (val >> 5) & 7;
3474 +  tie_t = (val << 24) >> 29;
3475    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3476  }
3477  
3478  static unsigned
3479  Field_combined3e2c5767_fld73xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3480  {
3481 -  unsigned tie_t = insn[1] & 7;
3482 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3483 -  tie_t = (tie_t << 4) | (insn[0] & 0xf);
3484 +  unsigned tie_t = 0;
3485 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3486 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3487 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
3488    return tie_t;
3489  }
3490  
3491  static void
3492  Field_combined3e2c5767_fld73xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3493  {
3494 -  uint32 tie_t = val & 0xf;
3495 +  uint32 tie_t;
3496 +  tie_t = (val << 28) >> 28;
3497    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
3498 -  tie_t = (val >> 4) & 1;
3499 +  tie_t = (val << 27) >> 31;
3500    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3501 -  tie_t = (val >> 5) & 7;
3502 +  tie_t = (val << 24) >> 29;
3503    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3504  }
3505  
3506  static unsigned
3507  Field_combined3e2c5767_fld74xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3508  {
3509 -  unsigned tie_t = insn[1] & 7;
3510 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3511 -  tie_t = (tie_t << 4) | (insn[0] & 0xf);
3512 +  unsigned tie_t = 0;
3513 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3514 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3515 +  tie_t = (tie_t << 4) | ((insn[0] << 28) >> 28);
3516    return tie_t;
3517  }
3518  
3519  static void
3520  Field_combined3e2c5767_fld74xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3521  {
3522 -  uint32 tie_t = val & 0xf;
3523 +  uint32 tie_t;
3524 +  tie_t = (val << 28) >> 28;
3525    insn[0] = (insn[0] & ~0xf) | (tie_t << 0);
3526 -  tie_t = (val >> 4) & 1;
3527 +  tie_t = (val << 27) >> 31;
3528    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3529 -  tie_t = (val >> 5) & 7;
3530 +  tie_t = (val << 24) >> 29;
3531    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3532  }
3533  
3534  static unsigned
3535  Field_combined3e2c5767_fld75xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3536  {
3537 -  unsigned tie_t = insn[1] & 7;
3538 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3539 +  unsigned tie_t = 0;
3540 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3541 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3542    return tie_t;
3543  }
3544  
3545  static void
3546  Field_combined3e2c5767_fld75xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3547  {
3548 -  uint32 tie_t = val & 1;
3549 +  uint32 tie_t;
3550 +  tie_t = (val << 31) >> 31;
3551    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3552 -  tie_t = (val >> 1) & 7;
3553 +  tie_t = (val << 28) >> 29;
3554    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3555  }
3556  
3557  static unsigned
3558  Field_combined3e2c5767_fld76xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3559  {
3560 -  unsigned tie_t = insn[1] & 7;
3561 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3562 +  unsigned tie_t = 0;
3563 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3564 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3565    return tie_t;
3566  }
3567  
3568  static void
3569  Field_combined3e2c5767_fld76xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3570  {
3571 -  uint32 tie_t = val & 1;
3572 +  uint32 tie_t;
3573 +  tie_t = (val << 31) >> 31;
3574    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3575 -  tie_t = (val >> 1) & 7;
3576 +  tie_t = (val << 28) >> 29;
3577    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3578  }
3579  
3580  static unsigned
3581  Field_combined3e2c5767_fld77xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3582  {
3583 -  unsigned tie_t = insn[1] & 7;
3584 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3585 +  unsigned tie_t = 0;
3586 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3587 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3588    return tie_t;
3589  }
3590  
3591  static void
3592  Field_combined3e2c5767_fld77xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3593  {
3594 -  uint32 tie_t = val & 1;
3595 +  uint32 tie_t;
3596 +  tie_t = (val << 31) >> 31;
3597    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3598 -  tie_t = (val >> 1) & 7;
3599 +  tie_t = (val << 28) >> 29;
3600    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3601  }
3602  
3603  static unsigned
3604  Field_combined3e2c5767_fld78xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3605  {
3606 -  unsigned tie_t = insn[1] & 7;
3607 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3608 +  unsigned tie_t = 0;
3609 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3610 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3611    return tie_t;
3612  }
3613  
3614  static void
3615  Field_combined3e2c5767_fld78xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3616  {
3617 -  uint32 tie_t = val & 1;
3618 +  uint32 tie_t;
3619 +  tie_t = (val << 31) >> 31;
3620    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3621 -  tie_t = (val >> 1) & 7;
3622 +  tie_t = (val << 28) >> 29;
3623    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3624  }
3625  
3626  static unsigned
3627  Field_combined3e2c5767_fld79xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3628  {
3629 -  unsigned tie_t = insn[1] & 7;
3630 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3631 +  unsigned tie_t = 0;
3632 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3633 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3634    return tie_t;
3635  }
3636  
3637  static void
3638  Field_combined3e2c5767_fld79xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3639  {
3640 -  uint32 tie_t = val & 1;
3641 +  uint32 tie_t;
3642 +  tie_t = (val << 31) >> 31;
3643    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3644 -  tie_t = (val >> 1) & 7;
3645 +  tie_t = (val << 28) >> 29;
3646    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3647  }
3648  
3649  static unsigned
3650  Field_combined3e2c5767_fld80xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3651  {
3652 -  unsigned tie_t = insn[1] & 7;
3653 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3654 +  unsigned tie_t = 0;
3655 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3656 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3657    return tie_t;
3658  }
3659  
3660  static void
3661  Field_combined3e2c5767_fld80xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3662  {
3663 -  uint32 tie_t = val & 1;
3664 +  uint32 tie_t;
3665 +  tie_t = (val << 31) >> 31;
3666    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3667 -  tie_t = (val >> 1) & 7;
3668 +  tie_t = (val << 28) >> 29;
3669    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3670  }
3671  
3672  static unsigned
3673  Field_combined3e2c5767_fld81xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3674  {
3675 -  unsigned tie_t = insn[1] & 7;
3676 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3677 +  unsigned tie_t = 0;
3678 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3679 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3680    return tie_t;
3681  }
3682  
3683  static void
3684  Field_combined3e2c5767_fld81xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3685  {
3686 -  uint32 tie_t = val & 1;
3687 +  uint32 tie_t;
3688 +  tie_t = (val << 31) >> 31;
3689    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3690 -  tie_t = (val >> 1) & 7;
3691 +  tie_t = (val << 28) >> 29;
3692    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3693  }
3694  
3695  static unsigned
3696  Field_combined3e2c5767_fld82xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3697  {
3698 -  unsigned tie_t = insn[1] & 7;
3699 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3700 +  unsigned tie_t = 0;
3701 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3702 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3703    return tie_t;
3704  }
3705  
3706  static void
3707  Field_combined3e2c5767_fld82xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3708  {
3709 -  uint32 tie_t = val & 1;
3710 +  uint32 tie_t;
3711 +  tie_t = (val << 31) >> 31;
3712    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3713 -  tie_t = (val >> 1) & 7;
3714 +  tie_t = (val << 28) >> 29;
3715    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3716  }
3717  
3718  static unsigned
3719  Field_combined3e2c5767_fld83xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3720  {
3721 -  unsigned tie_t = insn[1] & 7;
3722 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3723 +  unsigned tie_t = 0;
3724 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3725 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3726    return tie_t;
3727  }
3728  
3729  static void
3730  Field_combined3e2c5767_fld83xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3731  {
3732 -  uint32 tie_t = val & 1;
3733 +  uint32 tie_t;
3734 +  tie_t = (val << 31) >> 31;
3735    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3736 -  tie_t = (val >> 1) & 7;
3737 +  tie_t = (val << 28) >> 29;
3738    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3739  }
3740  
3741  static unsigned
3742  Field_combined3e2c5767_fld84xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3743  {
3744 -  unsigned tie_t = insn[1] & 7;
3745 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3746 +  unsigned tie_t = 0;
3747 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3748 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3749    return tie_t;
3750  }
3751  
3752  static void
3753  Field_combined3e2c5767_fld84xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3754  {
3755 -  uint32 tie_t = val & 1;
3756 +  uint32 tie_t;
3757 +  tie_t = (val << 31) >> 31;
3758    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3759 -  tie_t = (val >> 1) & 7;
3760 +  tie_t = (val << 28) >> 29;
3761    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3762  }
3763  
3764  static unsigned
3765  Field_combined3e2c5767_fld85xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3766  {
3767 -  unsigned tie_t = insn[1] & 7;
3768 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3769 +  unsigned tie_t = 0;
3770 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3771 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3772    return tie_t;
3773  }
3774  
3775  static void
3776  Field_combined3e2c5767_fld85xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3777  {
3778 -  uint32 tie_t = val & 1;
3779 +  uint32 tie_t;
3780 +  tie_t = (val << 31) >> 31;
3781    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3782 -  tie_t = (val >> 1) & 7;
3783 +  tie_t = (val << 28) >> 29;
3784    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3785  }
3786  
3787  static unsigned
3788  Field_combined3e2c5767_fld86xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3789  {
3790 -  unsigned tie_t = insn[1] & 7;
3791 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3792 +  unsigned tie_t = 0;
3793 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3794 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3795    return tie_t;
3796  }
3797  
3798  static void
3799  Field_combined3e2c5767_fld86xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3800  {
3801 -  uint32 tie_t = val & 1;
3802 +  uint32 tie_t;
3803 +  tie_t = (val << 31) >> 31;
3804    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3805 -  tie_t = (val >> 1) & 7;
3806 +  tie_t = (val << 28) >> 29;
3807    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3808  }
3809  
3810  static unsigned
3811  Field_combined3e2c5767_fld87xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3812  {
3813 -  unsigned tie_t = insn[1] & 7;
3814 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3815 +  unsigned tie_t = 0;
3816 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3817 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3818    return tie_t;
3819  }
3820  
3821  static void
3822  Field_combined3e2c5767_fld87xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3823  {
3824 -  uint32 tie_t = val & 1;
3825 +  uint32 tie_t;
3826 +  tie_t = (val << 31) >> 31;
3827    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3828 -  tie_t = (val >> 1) & 7;
3829 +  tie_t = (val << 28) >> 29;
3830    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3831  }
3832  
3833  static unsigned
3834  Field_combined3e2c5767_fld88xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3835  {
3836 -  unsigned tie_t = insn[1] & 7;
3837 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3838 +  unsigned tie_t = 0;
3839 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3840 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3841    return tie_t;
3842  }
3843  
3844  static void
3845  Field_combined3e2c5767_fld88xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3846  {
3847 -  uint32 tie_t = val & 1;
3848 +  uint32 tie_t;
3849 +  tie_t = (val << 31) >> 31;
3850    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3851 -  tie_t = (val >> 1) & 7;
3852 +  tie_t = (val << 28) >> 29;
3853    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3854  }
3855  
3856  static unsigned
3857  Field_combined3e2c5767_fld89xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3858  {
3859 -  unsigned tie_t = insn[1] & 7;
3860 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3861 +  unsigned tie_t = 0;
3862 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3863 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3864    return tie_t;
3865  }
3866  
3867  static void
3868  Field_combined3e2c5767_fld89xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3869  {
3870 -  uint32 tie_t = val & 1;
3871 +  uint32 tie_t;
3872 +  tie_t = (val << 31) >> 31;
3873    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3874 -  tie_t = (val >> 1) & 7;
3875 +  tie_t = (val << 28) >> 29;
3876    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3877  }
3878  
3879  static unsigned
3880  Field_combined3e2c5767_fld90xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3881  {
3882 -  unsigned tie_t = insn[1] & 7;
3883 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3884 +  unsigned tie_t = 0;
3885 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3886 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3887    return tie_t;
3888  }
3889  
3890  static void
3891  Field_combined3e2c5767_fld90xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3892  {
3893 -  uint32 tie_t = val & 1;
3894 +  uint32 tie_t;
3895 +  tie_t = (val << 31) >> 31;
3896    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3897 -  tie_t = (val >> 1) & 7;
3898 +  tie_t = (val << 28) >> 29;
3899    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3900  }
3901  
3902  static unsigned
3903  Field_combined3e2c5767_fld91xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3904  {
3905 -  unsigned tie_t = insn[1] & 7;
3906 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3907 +  unsigned tie_t = 0;
3908 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3909 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3910    return tie_t;
3911  }
3912  
3913  static void
3914  Field_combined3e2c5767_fld91xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3915  {
3916 -  uint32 tie_t = val & 1;
3917 +  uint32 tie_t;
3918 +  tie_t = (val << 31) >> 31;
3919    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3920 -  tie_t = (val >> 1) & 7;
3921 +  tie_t = (val << 28) >> 29;
3922    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3923  }
3924  
3925  static unsigned
3926  Field_combined3e2c5767_fld92xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3927  {
3928 -  unsigned tie_t = insn[1] & 7;
3929 -  tie_t = (tie_t << 1) | ((insn[0] >> 26) & 1);
3930 +  unsigned tie_t = 0;
3931 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3932 +  tie_t = (tie_t << 1) | ((insn[0] << 5) >> 31);
3933    return tie_t;
3934  }
3935  
3936  static void
3937  Field_combined3e2c5767_fld92xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3938  {
3939 -  uint32 tie_t = val & 1;
3940 +  uint32 tie_t;
3941 +  tie_t = (val << 31) >> 31;
3942    insn[0] = (insn[0] & ~0x4000000) | (tie_t << 26);
3943 -  tie_t = (val >> 1) & 7;
3944 +  tie_t = (val << 28) >> 29;
3945    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3946  }
3947  
3948  static unsigned
3949  Field_combined3e2c5767_fld93xt_flix64_slot3_Slot_xt_flix64_slot3_get (const xtensa_insnbuf insn)
3950  {
3951 -  unsigned tie_t = insn[1] & 7;
3952 -  tie_t = (tie_t << 27) | (insn[0] & 0x7ffffff);
3953 +  unsigned tie_t = 0;
3954 +  tie_t = (tie_t << 3) | ((insn[1] << 29) >> 29);
3955 +  tie_t = (tie_t << 27) | ((insn[0] << 5) >> 5);
3956    return tie_t;
3957  }
3958  
3959 @@ -3301,23 +3695,25 @@ static void
3960  Field_combined3e2c5767_fld93xt_flix64_slot3_Slot_xt_flix64_slot3_set (xtensa_insnbuf insn, uint32 val)
3961  {
3962    uint32 tie_t;
3963 -  tie_t = val & 0x7ffffff;
3964 +  tie_t = (val << 5) >> 5;
3965    insn[0] = (insn[0] & ~0x7ffffff) | (tie_t << 0);
3966 -  tie_t = (val >> 27) & 7;
3967 +  tie_t = (val << 2) >> 29;
3968    insn[1] = (insn[1] & ~0x7) | (tie_t << 0);
3969  }
3970  
3971  static unsigned
3972  Field_op0_xt_flix64_slot0_Slot_xt_flix64_slot0_get (const xtensa_insnbuf insn)
3973  {
3974 -  unsigned tie_t = (insn[0] >> 20) & 0xf;
3975 +  unsigned tie_t = 0;
3976 +  tie_t = (tie_t << 4) | ((insn[0] << 8) >> 28);
3977    return tie_t;
3978  }
3979  
3980  static void
3981  Field_op0_xt_flix64_slot0_Slot_xt_flix64_slot0_set (xtensa_insnbuf insn, uint32 val)
3982  {
3983 -  uint32 tie_t = val & 0xf;
3984 +  uint32 tie_t;
3985 +  tie_t = (val << 28) >> 28;
3986    insn[0] = (insn[0] & ~0xf00000) | (tie_t << 20);
3987  }
3988  
3989 @@ -3502,7 +3898,7 @@ Operand_soffsetx4_decode (uint32 *valp)
3990  {
3991    unsigned soffsetx4_0, offset_0;
3992    offset_0 = *valp & 0x3ffff;
3993 -  soffsetx4_0 = 0x4 + (((offset_0 ^ 0x20000) - 0x20000) << 2);
3994 +  soffsetx4_0 = 0x4 + ((((int) offset_0 << 14) >> 14) << 2);
3995    *valp = soffsetx4_0;
3996    return 0;
3997  }
3998 @@ -3556,7 +3952,7 @@ Operand_simm4_decode (uint32 *valp)
3999  {
4000    unsigned simm4_0, mn_0;
4001    mn_0 = *valp & 0xf;
4002 -  simm4_0 = (mn_0 ^ 0x8) - 0x8;
4003 +  simm4_0 = ((int) mn_0 << 28) >> 28;
4004    *valp = simm4_0;
4005    return 0;
4006  }
4007 @@ -3688,7 +4084,7 @@ Operand_immrx4_decode (uint32 *valp)
4008  {
4009    unsigned immrx4_0, r_0;
4010    r_0 = *valp & 0xf;
4011 -  immrx4_0 = (0xfffffff0 | r_0) << 2;
4012 +  immrx4_0 = (((0xfffffff) << 4) | r_0) << 2;
4013    *valp = immrx4_0;
4014    return 0;
4015  }
4016 @@ -3976,7 +4372,7 @@ Operand_simm8_decode (uint32 *valp)
4017  {
4018    unsigned simm8_0, imm8_0;
4019    imm8_0 = *valp & 0xff;
4020 -  simm8_0 = (imm8_0 ^ 0x80) - 0x80;
4021 +  simm8_0 = ((int) imm8_0 << 24) >> 24;
4022    *valp = simm8_0;
4023    return 0;
4024  }
4025 @@ -3996,7 +4392,7 @@ Operand_simm8x256_decode (uint32 *valp)
4026  {
4027    unsigned simm8x256_0, imm8_0;
4028    imm8_0 = *valp & 0xff;
4029 -  simm8x256_0 = ((imm8_0 ^ 0x80) - 0x80) << 8;
4030 +  simm8x256_0 = (((int) imm8_0 << 24) >> 24) << 8;
4031    *valp = simm8x256_0;
4032    return 0;
4033  }
4034 @@ -4016,7 +4412,7 @@ Operand_simm12b_decode (uint32 *valp)
4035  {
4036    unsigned simm12b_0, imm12b_0;
4037    imm12b_0 = *valp & 0xfff;
4038 -  simm12b_0 = (imm12b_0 ^ 0x800) - 0x800;
4039 +  simm12b_0 = ((int) imm12b_0 << 20) >> 20;
4040    *valp = simm12b_0;
4041    return 0;
4042  }
4043 @@ -4076,7 +4472,7 @@ Operand_label8_decode (uint32 *valp)
4044  {
4045    unsigned label8_0, imm8_0;
4046    imm8_0 = *valp & 0xff;
4047 -  label8_0 = 0x4 + ((imm8_0 ^ 0x80) - 0x80);
4048 +  label8_0 = 0x4 + (((int) imm8_0 << 24) >> 24);
4049    *valp = label8_0;
4050    return 0;
4051  }
4052 @@ -4144,7 +4540,7 @@ Operand_label12_decode (uint32 *valp)
4053  {
4054    unsigned label12_0, imm12_0;
4055    imm12_0 = *valp & 0xfff;
4056 -  label12_0 = 0x4 + ((imm12_0 ^ 0x800) - 0x800);
4057 +  label12_0 = 0x4 + (((int) imm12_0 << 20) >> 20);
4058    *valp = label12_0;
4059    return 0;
4060  }
4061 @@ -4178,7 +4574,7 @@ Operand_soffset_decode (uint32 *valp)
4062  {
4063    unsigned soffset_0, offset_0;
4064    offset_0 = *valp & 0x3ffff;
4065 -  soffset_0 = 0x4 + ((offset_0 ^ 0x20000) - 0x20000);
4066 +  soffset_0 = 0x4 + (((int) offset_0 << 14) >> 14);
4067    *valp = soffset_0;
4068    return 0;
4069  }
4070 @@ -4212,7 +4608,7 @@ Operand_uimm16x4_decode (uint32 *valp)
4071  {
4072    unsigned uimm16x4_0, imm16_0;
4073    imm16_0 = *valp & 0xffff;
4074 -  uimm16x4_0 = (0xffff0000 | imm16_0) << 2;
4075 +  uimm16x4_0 = (((0xffff) << 16) | imm16_0) << 2;
4076    *valp = uimm16x4_0;
4077    return 0;
4078  }
4079 @@ -4656,7 +5052,7 @@ Operand_xt_wbr15_label_decode (uint32 *valp)
4080  {
4081    unsigned xt_wbr15_label_0, xt_wbr15_imm_0;
4082    xt_wbr15_imm_0 = *valp & 0x7fff;
4083 -  xt_wbr15_label_0 = 0x4 + ((xt_wbr15_imm_0 ^ 0x4000) - 0x4000);
4084 +  xt_wbr15_label_0 = 0x4 + (((int) xt_wbr15_imm_0 << 17) >> 17);
4085    *valp = xt_wbr15_label_0;
4086    return 0;
4087  }
4088 @@ -4690,7 +5086,7 @@ Operand_xt_wbr18_label_decode (uint32 *valp)
4089  {
4090    unsigned xt_wbr18_label_0, xt_wbr18_imm_0;
4091    xt_wbr18_imm_0 = *valp & 0x3ffff;
4092 -  xt_wbr18_label_0 = 0x4 + ((xt_wbr18_imm_0 ^ 0x20000) - 0x20000);
4093 +  xt_wbr18_label_0 = 0x4 + (((int) xt_wbr18_imm_0 << 14) >> 14);
4094    *valp = xt_wbr18_label_0;
4095    return 0;
4096  }
4097 -- 
4098 2.20.1
4099