diff options
-rw-r--r-- | binutils/ChangeLog | 5 | ||||
-rw-r--r-- | binutils/dlltool.c | 7 |
2 files changed, 9 insertions, 3 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 7cf4f71..4955c13 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +1999-11-03 Nick Clifton <nickc@cygnus.com> + + * dlltool.c (flush_page): Clip short values to prevent warnings + from the assembler. + 1999-10-27 Fred Fish <fnf@cygnus.com> * objdump.c (display_bfd): Break into two functions. The diff --git a/binutils/dlltool.c b/binutils/dlltool.c index ed99d4f..908f798 100644 --- a/binutils/dlltool.c +++ b/binutils/dlltool.c @@ -1572,10 +1572,11 @@ flush_page (f, need, page_addr, on_page) ASM_LONG, (on_page * 2) + (on_page & 1) * 2 + 8, ASM_C); + for (i = 0; i < on_page; i++) - { - fprintf (f, "\t%s\t0x%lx\n", ASM_SHORT, (need[i] - page_addr) | 0x3000); - } + fprintf (f, "\t%s\t0x%lx\n", ASM_SHORT, + ((need[i] - page_addr) | 0x3000) & 0xffff); + /* And padding */ if (on_page & 1) fprintf (f, "\t%s\t0x%x\n", ASM_SHORT, 0 | 0x0000); |