s390: desupport 32-bit Linux kernels on s390/s390x 75/12475/3
authorNeale Ferguson <neale@sinenomine.net>
Thu, 8 Dec 2016 16:47:09 +0000 (11:47 -0500)
committerBenjamin Kaduk <kaduk@mit.edu>
Thu, 15 Dec 2016 05:09:40 +0000 (00:09 -0500)
Remove the obsolete and custom lwp assembler for the s390 and s390x
architectures.  That assembler is no longer needed since 32-bit
mainframe Linux distributions are no longer supported and are very
unlikely to be in use.

The generic process.default.s is sufficient for modern 64-bit Linux
distributions on s390/s390x.

[mmeffie@sinenomine.net: commit message wording]

Change-Id: I654b10dfc257e7de90c9a50048982427276f4d61
Reviewed-on: https://gerrit.openafs.org/12475
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>

src/lwp/Makefile.in
src/lwp/process.s390.s [deleted file]
src/lwp/process.s390x.s [deleted file]

index dc58574..ce1fb11 100644 (file)
@@ -74,14 +74,6 @@ process.o    : process.default.s process.i386.s process.amd64.s process.c lwp.o
                cp ${srcdir}/process.default.s process.s ; \
                $(CCOBJ) ${LWP_DBG} ${LWP_OPTMZ} -c ${XCFLAGS} ${ARCHFLAGS} -I${TOP_INCDIR} -KPIC -G0  process.s; \
                $(RM) -f process.s ;;\
-       s390_*) \
-               $(PATH_CPP) -P -I${TOP_INCDIR} ${srcdir}/process.s390.s >process.s; \
-               ${AS} -ahlns process.s -o process.o >process.lst; \
-               $(RM) process.s ;; \
-       s390x_*) \
-               $(PATH_CPP) -P -I${TOP_INCDIR} ${srcdir}/process.s390x.s >process.s; \
-               ${AS} -ahlns process.s -o process.o >process.lst; \
-               $(RM) process.s ;; \
        *_darwin* ) \
                $(RM) -f process.o ; \
                CURRENTBUILDARCH="${ARCHFLAGS}"; \
diff --git a/src/lwp/process.s390.s b/src/lwp/process.s390.s
deleted file mode 100644 (file)
index bda4522..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright 2000, International Business Machines Corporation and others.
- * All Rights Reserved.
- * 
- * This software has been released under the terms of the IBM Public
- * License.  For details, see the LICENSE file in the top-level source
- * directory or online at http://www.openafs.org/dl/license10.html
- *
- * Linux for S/390 (31 bit)
- *
- * Written by Neale Ferguson <Neale.Ferguson@SoftwareAG-usa.com>
- *
- *  additional munging by Adam Thornton <adam@sinenomine.net>
- */
-
-#define        IGNORE_STDS_H   1
-#include <afs/param.h>
-
-       .file   "process.s"
-
-              .globl savecontext
-              .type  savecontext,%function
-      /*
-       * savecontext(f, area1, newsp)
-       *      int (*f)();    struct savearea *area1; char *newsp;
-       * f     - r2
-       * area1 - r3
-       * newsp - r4
-       */
-
-       /*
-        * struct savearea {
-        *      char    *topstack;
-        * }
-        */
-
-P_PRE:                   .long   PRE_Block
-P_ABORT:                     .long   abort
-
-savecontext:
-              stm     %r6,%r15,24(%r15)       /* Save our registers */
-              lr      %r1,%r15
-              ahi     %r15,-96                /* Move out of harm's way */
-              st      %r1,0(%r15)
-              bras    %r5,.L0                 /* Get A(A(PRE_Block)) */
-              .long   PRE_Block
-      .L0:
-              l       %r5,0(%r5)              /* Get A(PRE_Block) */
-              mvi     3(%r5),1                /* Set it */
-              lr      %r6,%r3                 /* Get base of savearea */
-              st      %r15,0(%r3)             /* Save stack pointer */
-              ltr     %r4,%r4                 /* If new sp is 0 */
-              jz      .L1                     /* ... don't change sp */
-              lr      %r15,%r4                /* Set new stack pointer */
-      .L1:
-              br      %r2                     /* Call the routine */
-              /* Can't get here....*/
-
-              bras    %r5,.L2
-              .long   abort
-      .L2:
-              l      %r5,0(%r5)
-              balr    %r14,%r5
-
-      .savecontext_end:
-              .size   savecontext,.savecontext_end-savecontext
-
-      /*
-       * returnto(area2)
-       *      struct savearea *area2;
-       *
-       * area2 - r2
-       */
-        .globl  returnto
-        .type   returnto,%function
-returnto:
-        l       %r15,0(%r2)             /* New frame, to get correct pointer*/
-        bras    %r5,.L3                         /* Get A(A(PRE_Block))
-      */
-                 .long          PRE_Block
-      .L3:
-              l       %r5,0(%r5)              /* Get A(PRE_Block) */
-              /*xc      0(4,%r5),0(%r5)         /* Clear it */
-             mvi     3(%r5),0                /* Clear it */ 
-             l       %r15,0(%r15)
-              lm      %r6,%r15,24(%r15)       /* Restore registers */
-              br      %r14                    /* Return */
-
-             /* Can't happen */
-              la      %r2,1234
-              bras    %r5,.L4
-                .long          abort
-      .L4:
-              l       %r5,0(%r5)
-              basr    %r14,%r5
-      .returnto_end:
-              .size   returnto,.returnto_end-returnto
-
-#if defined(__linux__) && defined(__ELF__)
-        .section .note.GNU-stack,"",%progbits
-#endif
diff --git a/src/lwp/process.s390x.s b/src/lwp/process.s390x.s
deleted file mode 100644 (file)
index f24afdc..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright 2000, International Business Machines Corporation and others.
- * All Rights Reserved.
- * 
- * This software has been released under the terms of the IBM Public
- * License.  For details, see the LICENSE file in the top-level source
- * directory or online at http://www.openafs.org/dl/license10.html
- *
- * Linux for S/390X (64 bit)
- * by Soewono Effendi <Soewono.Effendi@sysgo.de>
- * & Horst Birthelmer <Horst.Birthelmer@sysgo.de>
- *
- * based on Linux for S/390 (31 bit)
- * Written by Neale Ferguson <Neale.Ferguson@SoftwareAG-usa.com>
-*/
-
-#define IGNORE_STDS_H  1
-#include <afs/param.h>
-
-       .file   "process.s"
-
-              .globl savecontext
-              .type  savecontext,%function
-      /*
-       * savecontext(f, area1, newsp)
-       *      int (*f)();    struct savearea *area1; char *newsp;
-       * f     - r2
-       * area1 - r3
-       * newsp - r4
-       */
-
-       /*
-        * struct savearea {
-        *      char    *topstack;
-        * }
-        */
-
-P_PRE:                   .long   PRE_Block
-P_ABORT:                     .long   abort
-
-savecontext:
-              stmg     %r6,%r15,48(%r15)       /* Save our registers */
-              lgr      %r1,%r15
-              aghi     %r15,-160
-              stg      %r1,0(%r15)
-              brasl    %r5,.L0                 /* Get A(A(PRE_Block)) */
-              .long   PRE_Block
-      .L0:
-              l       %r5,0(%r5)              /* Get A(PRE_Block) */
-              mvi     3(%r5),1                /* Set it */
-              lgr      %r6,%r3                 /* Get base of savearea */
-              stg      %r15,0(%r3)             /* Save stack pointer */
-              ltgr     %r4,%r4                 /* If new sp is 0 */
-              jz      .L1                     /* ... don't change sp */
-              lgr      %r15,%r4                /* Set new stack pointer */
-      .L1:
-              br      %r2                     /* Call the routine */
-              /* Can't get here....*/
-
-              brasl    %r5,.L2
-              .long   abort
-      .L2:
-              l      %r5,0(%r5)
-              balr    %r14,%r5
-
-      .savecontext_end:
-              .size   savecontext,.savecontext_end-savecontext
-
-      /*
-       * returnto(area2)
-       *      struct savearea *area2;
-       *
-       * area2 - r2
-       */
-        .globl  returnto
-        .type   returnto,%function
-returnto:
-        lg       %r15,0(%r2)             /* New frame, to get correct pointer*/
-        brasl    %r5,.L3                         /* Get A(A(PRE_Block)) */
-                 .long          PRE_Block
-      .L3:
-              l       %r5,0(%r5)              /* Get A(PRE_Block) */
-              /*xc      0(4,%r5),0(%r5)         /* Clear it */
-             mvi     3(%r5),0                /* Clear it */ 
-             lg       %r15,0(%r15)
-              lmg      %r6,%r15,48(%r15)       /* Restore registers */
-              br      %r14                    /* Return */
-
-             /* Can't happen */
-              la      %r2,1234
-              brasl    %r5,.L4
-                .long          abort
-      .L4:
-              l       %r5,0(%r5)
-              basr    %r14,%r5
-      .returnto_end:
-              .size   returnto,.returnto_end-returnto
-
-#if defined(__linux__) && defined(__ELF__)
-        .section .note.GNU-stack,"",%progbits
-#endif