Opened 12 years ago

Last modified 5 years ago

#156 assigned defect

emxomfld: wlink hll support

Reported by: bird Owned by: bird
Priority: normal Milestone:
Component: emx Version: 0.6.5
Severity: normal Keywords: wlink
Cc:

Description

This is mostly done, but need some finishing touches before the OpenWatcom? guys will accept it I guess. I'll upload a patch some day so it won't get lost.

The initial wlink changes was done in #89.

Change History (8)

comment:1 Changed 12 years ago by bird

  • Milestone changed from libc-0.6.3 to libc-0.6.4

comment:2 Changed 8 years ago by bird

  • Status changed from new to assigned

comment:3 Changed 7 years ago by bird

  • Milestone changed from libc-0.6.5 to libc-0.6.6

comment:5 Changed 5 years ago by ydario

  • Milestone libc-0.6.6 deleted

comment:6 Changed 5 years ago by dmik

  • Component changed from emx to libc
  • Milestone set to libc-0.6.6
  • Version changed from 0.6 to 0.6.5

Steven, could you please comment on that? Is there anything else that needs to be done before submitting patches?

A proper handler for the case when there is not enough memory that cleanly aborts WLINK with the appropriate message (instead of letting it hang for many hours) is perhaps one thing.

comment:7 Changed 5 years ago by dmik

  • Component changed from libc to emx
  • Milestone libc-0.6.6 deleted

comment:8 Changed 5 years ago by stevenhl

The changes have all been submitted to the Perforce repository.

The handler should be in place. See

bld\wl\c\mem.c:198

in the OpenWatcom sources. The allocation policy allocates from low memory until there is less than 64MB left and then switches to allocating from upper memory. If the linker is going to run out of memory, it will run out attempting to allocate the buffer that holds the HLL_MISC_SECT section (i.e. the debug data) and it will have plenty of memory available for the cleanup to finish.

Cleanup time is the same whether or not the linker runs to completion without errors.

The extended run time you saw was most likely the result of building firefox with a wlink debug build. A wlink debug build runs additional code during cleanup and this code will run for hours whether or not the link finishes with errors.

There is some work remaining. I need to finish updating the OpenWatcom? docs. Also, Knut's code indicates that some HLL debug data features are not yet implemented.

Note: See TracTickets for help on using tickets.