소스 검색

lower L7: remove procs orphaned by the decoupling and -lower retirement

Tree-wide scan (tests included) finds these unreferenced: QbeGen's
SetOutName (EndSession no longer sets an L-suffixed name),
FwdDesignator/FwdAddrOper (Design's fwd branch no longer patches
output), and SymTab's IsExternal/MethUid/FieldOwner (used only by the
ProcHeading/field emit that is gone).

Suite 181/181; FIXPOINT OK (3,367,634 bytes).
Eric Streit 3 일 전
부모
커밋
b4d9e2527f
4개의 변경된 파일과 0개의 추가작업 그리고 64개의 파일을 삭제
  1. 0 9
      compiler/src/QbeGen.def
  2. 0 22
      compiler/src/QbeGen.mod
  3. 0 6
      compiler/src/SymTab.def
  4. 0 27
      compiler/src/SymTab.mod

+ 0 - 9
compiler/src/QbeGen.def

@@ -65,10 +65,6 @@ PROCEDURE SetModule (name: ARRAY OF CHAR);
 (* Names the module being compiled; its globals emit as
    "<mod>_<name>" so separate modules never collide. *)
 
-PROCEDURE SetOutName (name: ARRAY OF CHAR);
-(* Overrides the image file name written by EndModule (gen_ssa/<name>.ssa)
-   without changing the mangled symbol name.  Test-only hook for the
-   two-phase Lower comparison. *)
 
 PROCEDURE Mangled (pname: ARRAY OF CHAR; uid: CARDINAL; VAR q: QVal);
 (* q := "name_uid" (function symbols; same-named methods never
@@ -478,11 +474,6 @@ PROCEDURE LocAdd (name: ARRAY OF CHAR; tag: INTEGER; rep: ARRAY OF CHAR;
                    cls: CHAR; typ: INTEGER);
 PROCEDURE ResClass (t: INTEGER): CHAR;
 PROCEDURE AllocLocal (t: INTEGER; VAR slot: QVal);
-PROCEDURE FwdDesignator (): INTEGER;
-(* Reserves a forward-global patch site and emits a stand-in getaddr
-   (%t =l copy 0).  Returns its id (0 when full). *)
-PROCEDURE FwdAddrOper (id: INTEGER; VAR q: QVal);
-(* The address operand of patch site id. *)
 PROCEDURE HApp (s: ARRAY OF CHAR);
 PROCEDURE UpAddrOf (flat: INTEGER; levels: CARDINAL; VAR q: QVal);
 PROCEDURE Revive;

+ 0 - 22
compiler/src/QbeGen.mod

@@ -312,14 +312,6 @@ PROCEDURE SetModule (name: ARRAY OF CHAR);
     Cpy(curModName, name)
   END SetModule;
 
-PROCEDURE SetOutName (name: ARRAY OF CHAR);
-(* Overrides the image file name written by EndModule (gen_ssa/<name>.ssa)
-   without changing the symbol name EndModule mangles.  Test-only hook for
-   the two-phase Lower comparison. *)
-  BEGIN
-    Cpy(outName, name); hasOutName := TRUE
-  END SetOutName;
-
 PROCEDURE SymRef (name: ARRAY OF CHAR; VAR ref: QVal);
 (* "$<mod>_<sym>" for module-level entries (avoids cross-module
    collisions); "$<name>" fallback otherwise. *)
@@ -357,26 +349,12 @@ PROCEDURE AppNum (VAR d: ARRAY OF CHAR; v: CARDINAL);
     END
   END AppNum;
 
-PROCEDURE FwdDesignator (): INTEGER;
-(* Reserves a forward-global patch site and returns its id. *)
-  BEGIN
-    IF nFwd > HIGH(fwdSite) THEN RETURN 0 END;
-    INC(nFwd);
-    RETURN VAL(INTEGER, nFwd)
-  END FwdDesignator;
-
 PROCEDURE FwdMangle (id: INTEGER; VAR q: QVal);
   BEGIN
     Cpy(q, "$fwd");
     AppNum(q, VAL(CARDINAL, id))
   END FwdMangle;
 
-PROCEDURE FwdAddrOper (id: INTEGER; VAR q: QVal);
-(* Stand-in address operand for forward site id. *)
-  BEGIN
-    FwdMangle(id, q)
-  END FwdAddrOper;
-
 PROCEDURE FixLoadClass (ph: ARRAY OF CHAR; cls: CHAR);
 (* Re-class "<tmp> =<x> load<x> <ph>" -> "<tmp> =<cls> load<cls> <ph>".
    The default emit for an unresolved alias is `l` (pointer-like). *)

+ 0 - 6
compiler/src/SymTab.def

@@ -178,8 +178,6 @@ PROCEDURE MarkExternal (link: ARRAY OF CHAR);
 (* Marks the current procedure EXTERNAL (no body emitted; calls bind
    to the C symbol `link`, or to the procedure's own name if ''). *)
 
-PROCEDURE IsExternal (name: ARRAY OF CHAR): BOOLEAN;
-(* TRUE for an EXTERNAL procedure. *)
 PROCEDURE DeclareCProc (name: ARRAY OF CHAR): BOOLEAN;
 (* Enter name as an intrinsic external C procedure (varargs, no
    result): FROM libc IMPORT. *)
@@ -344,8 +342,6 @@ PROCEDURE VtHasBody (ct: TypeIndex; k: CARDINAL): BOOLEAN;
 PROCEDURE VtUid (ct: TypeIndex; k: CARDINAL): CARDINAL;
 (* Virtual-method slot k of ct (inherited slots first). *)
 
-PROCEDURE MethUid (): CARDINAL;
-(* uid of the procedure currently being headed (0 when none). *)
 
 PROCEDURE ClassMethodUid (t: TypeIndex; name: ARRAY OF CHAR): CARDINAL;
 (* Unique id of method name in class t or an ancestor (0 if none). *)
@@ -503,8 +499,6 @@ PROCEDURE TypeSize (t: TypeIndex): CARDINAL;
 PROCEDURE FieldOffset (rec: TypeIndex; name: ARRAY OF CHAR): INTEGER;
 (* Declaration-order byte offset (-1 if absent). Computed lazily. *)
 
-PROCEDURE FieldOwner (name: ARRAY OF CHAR): TypeIndex;
-(* Owning record/class of the visible field (InvalidType if none). *)
 
 PROCEDURE FieldCount (rec: TypeIndex): CARDINAL;
 PROCEDURE FieldName (rec: TypeIndex; i: CARDINAL; VAR name: Name);

+ 0 - 27
compiler/src/SymTab.mod

@@ -1536,16 +1536,6 @@ PROCEDURE FieldOffset (rec: TypeIndex; name: ARRAY OF CHAR): INTEGER;
     RETURN f^.off
   END FieldOffset;
 
-PROCEDURE FieldOwner (name: ARRAY OF CHAR): TypeIndex;
-  VAR node: SymPtr;
-  BEGIN
-    node := Find(name);
-    IF node = NIL THEN RETURN InvalidType END;
-    IF node^.kind # KindField THEN RETURN InvalidType END;
-    IF node^.scope = NIL THEN RETURN InvalidType END;
-    RETURN node^.scope^.ofRec
-  END FieldOwner;
-
 PROCEDURE FieldCount (rec: TypeIndex): CARDINAL;
   VAR r: TypeIndex;
     f: FieldPtr;
@@ -1674,15 +1664,6 @@ PROCEDURE ResumeMethod (ct: TypeIndex; name: ARRAY OF CHAR): BOOLEAN;
     RETURN TRUE
   END ResumeMethod;
 
-PROCEDURE MethUid (): CARDINAL;
-(* uid of the procedure currently being headed (0 when none): set by
-   ResumeMethod, whose node lives in a detached class scope that
-   ProcUid/Find cannot reach. *)
-  BEGIN
-    IF curProc = NIL THEN RETURN 0 END;
-    RETURN curProc^.uid
-  END MethUid;
-
 PROCEDURE ClassMethodUid (t: TypeIndex; name: ARRAY OF CHAR): CARDINAL;
   VAR n: SymPtr;
   BEGIN
@@ -2102,14 +2083,6 @@ PROCEDURE MarkExternal (link: ARRAY OF CHAR);
     END
   END MarkExternal;
 
-PROCEDURE IsExternal (name: ARRAY OF CHAR): BOOLEAN;
-  VAR node: SymPtr;
-  BEGIN
-    node := Find(name);
-    IF node = NIL THEN RETURN FALSE END;
-    RETURN node^.ext
-  END IsExternal;
-
 PROCEDURE ProcLink (name: ARRAY OF CHAR; VAR link: Name): BOOLEAN;
   VAR node: SymPtr;
   BEGIN