aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>1997-08-02 22:27:33 +0000
committerRichard Kenner <kenner@vlsi1.ultra.nyu.edu>1997-08-02 22:27:33 +0000
commit960ccb0d8830b2652a6294cbd3564491eb4f61ae (patch)
treee5d9d2681422327142eb3e7b74a186eb6bbc25a9
parente0612f87411abc85b440d6c3f0e2b8d5ed05bac2 (diff)
(_trampoline): Rework last change; both getpagesize and mprotect are
in cygwin32. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@14636 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/libgcc2.c28
1 files changed, 15 insertions, 13 deletions
diff --git a/gcc/libgcc2.c b/gcc/libgcc2.c
index 8f853f226ff..eb6a9ba00a0 100644
--- a/gcc/libgcc2.c
+++ b/gcc/libgcc2.c
@@ -2718,9 +2718,7 @@ __clear_cache (char *beg, char *end)
/* Jump to a trampoline, loading the static chain address. */
-#ifdef WINNT
-
-#ifndef __CYGWIN32__
+#if defined(WINNT) && ! defined(__CYGWIN32__)
long getpagesize()
{
@@ -2731,28 +2729,32 @@ long getpagesize()
#endif
}
-#endif
-
#ifdef i386
extern int VirtualProtect (char *, int, int, int *) __attribute__((stdcall));
#endif
-int mprotect(char *addr, int len, int prot)
+int
+mprotect (char *addr, int len, int prot)
{
int np, op;
- if (prot == 7) np = 0x40;
- else if (prot == 5) np = 0x20;
- else if (prot == 4) np = 0x10;
- else if (prot == 3) np = 0x04;
- else if (prot == 1) np = 0x02;
- else if (prot == 0) np = 0x01;
+ if (prot == 7)
+ np = 0x40;
+ else if (prot == 5)
+ np = 0x20;
+ else if (prot == 4)
+ np = 0x10;
+ else if (prot == 3)
+ np = 0x04;
+ else if (prot == 1)
+ np = 0x02;
+ else if (prot == 0)
+ np = 0x01;
if (VirtualProtect (addr, len, np, &op))
return 0;
else
return -1;
-
}
#endif