Instruction list length in bco->instrs redundant
While reading through the BCO-related code I notice that in the first word of the instruction list of a BCO (bco->instrs->payload[0]), the length of the list (as the multiple of 16-bit-words) is stored. This is used in debugging code, e.g. in the disassembler.
However as far as I can tell this is duplicate information: bco->instrs->bytes already contains this information (as multiple of bytes).
Maybe the instruction list was not a proper StgArrWords object before and this hack was required? If that is the case, I guess it can be removed now, saving a neglectable amount of memory and cleaning the code a bit.
Trac metadata
| Trac field | Value |
|---|---|
| Version | 7.6.1 |
| Type | Task |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Runtime System |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture |