Fix unwind section bug found by linux kernel.
* config/tc-ia64.c (output_unw_records): Set U & E flags only if unwind.personality_routine is set.
This commit is contained in:
parent
aca719bf68
commit
efcc591461
|
@ -1,3 +1,8 @@
|
||||||
|
2000-08-23 Jim Wilson <wilson@cygnus.com>
|
||||||
|
|
||||||
|
* config/tc-ia64.c (output_unw_records): Set U & E flags only if
|
||||||
|
unwind.personality_routine is set.
|
||||||
|
|
||||||
2000-08-23 H.J. Lu <hjl@gnu.org>
|
2000-08-23 H.J. Lu <hjl@gnu.org>
|
||||||
|
|
||||||
* write.c (TC_FIX_ADJUSTABLE): Remove the duplicate.
|
* write.c (TC_FIX_ADJUSTABLE): Remove the duplicate.
|
||||||
|
|
|
@ -2589,8 +2589,10 @@ output_unw_records (list, ptr)
|
||||||
/* Clear the padding area and personality. */
|
/* Clear the padding area and personality. */
|
||||||
memset (mem + 8 + size, 0 , extra + 8);
|
memset (mem + 8 + size, 0 , extra + 8);
|
||||||
/* Initialize the header area. */
|
/* Initialize the header area. */
|
||||||
md_number_to_chars (mem, ( ((bfd_vma) 1 << 48) /* version */
|
md_number_to_chars (mem, (((bfd_vma) 1 << 48) /* version */
|
||||||
| ((bfd_vma) 3 << 32) /* U & E handler flags */
|
| (unwind.personality_routine
|
||||||
|
? ((bfd_vma) 3 << 32) /* U & E handler flags */
|
||||||
|
: 0)
|
||||||
| ((size + extra) / 8)), /* length (dwords) */
|
| ((size + extra) / 8)), /* length (dwords) */
|
||||||
8);
|
8);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue