<div dir="ltr"><div dir="ltr">On Sat, Jul 13, 2024 at 9:35 AM Douglas McIlroy <<a href="mailto:douglas.mcilroy@dartmouth.edu">douglas.mcilroy@dartmouth.edu</a>> wrote:</div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr">> Well, doesn't it depend on whether VAX MACRO kept the macros as<br>> high-level entities when translating them, or if it processed macros in<br>> the familiar way into instructions that sat at the same level as<br>> hand-written ‘assembler’.  I don't think this thread has made that clear<br>> so far.<br></div><div dir="ltr"><br></div></div></blockquote><div>The VAX MACRO compiler treats macros the same way that the assembler treats them.  It expands them into individual assembler statements (i.e., instructions, labels, data definitions, etc.).  VAX MACRO then translates those into compiler intermediate language (originally GEM EIL [expanded intermediate language], nowadays probably LLVM IL).</div><div><br></div><div>Neither the VAX assembler nor the VAX MACRO compiler treats macros as high-level entities.  I know of no assembler that would do such a thing.</div><div><br></div><div>-Paul W.<br></div></div></div>