--- gcc/config/m68k/next.h 2018/04/24 18:20:59 1.1.1.3 +++ gcc/config/m68k/next.h 2018/04/24 18:44:12 1.1.1.5 @@ -15,7 +15,8 @@ GNU General Public License for more deta You should have received a copy of the GNU General Public License along with GNU CC; see the file COPYING. If not, write to -the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ #include "m68k/m68k.h" #include "nextstep.h" @@ -182,21 +183,13 @@ the Free Software Foundation, 675 Mass A #define OBJC_FORWARDING_STACK_OFFSET 8 #define OBJC_FORWARDING_MIN_OFFSET 8 -/* INITIALIZE_TRAMPOLINE is changed so that it also enables executable - stack. The __enable_execute_stack also clears the insn cache. */ +/* FINALIZE_TRAMPOLINE enables executable stack. The + __enable_execute_stack also clears the insn cache. */ -/* NOTE: part of this is copied from m68k.h */ -#undef INITIALIZE_TRAMPOLINE -#define INITIALIZE_TRAMPOLINE(TRAMP, FNADDR, CXT) \ -{ \ - rtx _addr, _func; \ - emit_move_insn (gen_rtx (MEM, SImode, plus_constant (TRAMP, 2)), TRAMP); \ - emit_move_insn (gen_rtx (MEM, SImode, plus_constant (TRAMP, 18)), CXT); \ - emit_move_insn (gen_rtx (MEM, SImode, plus_constant (TRAMP, 22)), FNADDR); \ - _addr = memory_address (SImode, (TRAMP)); \ - _func = gen_rtx (SYMBOL_REF, Pmode, "__enable_execute_stack"); \ - emit_library_call (_func, 0, VOIDmode, 1, _addr, Pmode); \ -} +#undef FINALIZE_TRAMPOLINE +#define FINALIZE_TRAMPOLINE(TRAMP) \ + emit_library_call(gen_rtx(SYMBOL_REF, Pmode, "__enable_execute_stack"), \ + 0, VOIDmode, 1, memory_address(SImode, (TRAMP)), Pmode) /* A C expression used to clear the instruction cache from address BEG to address END. On NeXTSTEP this i a system trap. */