[M3commit] [modula3/cm3] 48584a: Document a peculiarity in CM3 IR that reflects cal...
GitHub
noreply at github.com
Sun Nov 5 02:46:32 CET 2017
Branch: refs/heads/master
Home: https://github.com/modula3/cm3
Commit: 48584a745d69d37f43b1ee4b8b5fab47682f7d50
https://github.com/modula3/cm3/commit/48584a745d69d37f43b1ee4b8b5fab47682f7d50
Author: Rodney Bates <rodney.m.bates at acm.org>
Date: 2017-11-04 (Sat, 04 Nov 2017)
Changed paths:
M m3-sys/m3middle/src/M3CG_Ops.i3
Log Message:
-----------
Document a peculiarity in CM3 IR that reflects call-site copy.
For parameters of struct types, (which could be any static sized
in-memory aggregate, but used only for records and arrays), only the
call site has IR operators that indicate that a copy should be made,
thus effectively passing by value. There is no IR indication of
by-value passing at procedure entry, making it easy for a back end to
do call site copy and, at best, subtle to do it at procedure entry.
Document this is M3CG_Ops.i3.
More information about the M3commit
mailing list