﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
178	Extraordinarily bad code in init_sst.pl1	canthony	Eric Swenson	"In init_sst.pl1 is the code:

{{{
          begin;
declare  1 TEMPLATE_CME aligned like cme;
               unspec (TEMPLATE_CME) = """"b;
               TEMPLATE_CME.fp, TEMPLATE_CME.bp = ""777777""b3;
               CME (*) = TEMPLATE_CME;                      /* compiler is clever with these */
          end;
}}}

The comment is not at all true. The generated code for ""CME(*) ="" is

{{{
    for (*)
      {
         CME.fp = CME_TEMPLATE.fp;
         CME.bp = CME_TEMPLATE.bp;
....
         CME.synch_page_entryp = CME_TEMPLATE.synch_page_entryp;
      }
}}}

Each of the 19 fields in individually copied, usually with a CSL instruction, with its attendant overhead.

There should be a pl1 construct that generates a single MRL instruction to copy the entire CME_TEMPLATE."	defect	new	trivial		Hardcore				
