Messages in this thread Patch in this message | | | Subject | Re: [PATCH] Preemptible kernel for SH | From | Robert Love <> | Date | 05 Dec 2001 17:22:27 -0500 |
| |
Users of gcc-3.x will need the attached patch _for gcc_ to compile an SH kernel patched with preempt-kernel. This is _not_ our fault, it is a gcc bug and is now merged into CVS and should be part of gcc-3.1.
gcc-2.9x compiles without problem. It is only 3.x versions that suffer the bug.
Robert Love
P.S. Also of note: yes this works on Sega Dreamcast. You can have a fully preemptible Dreamcast. Impress your friends. Or something. --- gcc/gcc/alias.c 2001/09/11 21:39:24 1.115.4.7 +++ gcc/gcc/alias.c 2001/11/18 08:16:38 1.115.4.8 @@ -1041,6 +1041,9 @@ /* Some RTL can be compared without a recursive examination. */ switch (code) { + case VALUE: + return CSELIB_VAL_PTR (x) == CSELIB_VAL_PTR (y); + case REG: return REGNO (x) == REGNO (y); @@ -1109,6 +1112,12 @@ if (rtx_equal_for_memref_p (XEXP (x, i), XEXP (y, i)) == 0) return 0; break; + + /* This can happen for asm operands. */ + case 's': + if (strcmp (XSTR (x, i), XSTR (y, i))) + return 0; + break; /* This can happen for an asm which clobbers memory. */ case '0': | |