• Clemens Fruhwirth's avatar
    Add import facility to cmm parser · d55027c9
    Clemens Fruhwirth authored
    The cmm parser classified all unknown variables as imported. This
    behaviour is not changed with this patch. Explicitly imported
    variables get a different internal label type, namely ForeignLabel
    instead of RtsLabel. In PIC compilation, the NCG creates dynamic
    access for ForeignLabel, while RtsLabel are not treated as PIC when
    -package rts. Hence, putting explicit imports into cmm files enables
    the NCG to distinguish between RTS-external and RTS-internal symbols,
    and create the appropriate code.
CmmParse.y 34.6 KB