hppa1.1 support, first cut.
/* -----------------------------------------------------------------------------
/* -----------------------------------------------------------------------------
- * $Id: TailCalls.h,v 1.3 1999/02/05 16:02:31 simonm Exp $
+ * $Id: TailCalls.h,v 1.4 1999/03/01 17:40:55 simonm Exp $
*
* (c) The GHC Team, 1998-1999
*
*
* (c) The GHC Team, 1998-1999
*
+/* -----------------------------------------------------------------------------
+ Tail calling on HP
+ -------------------------------------------------------------------------- */
+
+#ifdef hppa1_1_hp_hpux_TARGET
+
+#define JMP_(cont) \
+ do { void *_procedure = (void *)(cont); \
+ goto *_procedure; \
+ } while(0)
+
+#endif /* hppa1_1_hp_hpux_TARGET */
+
+/* -----------------------------------------------------------------------------
FUNBEGIN and FUNEND.
These are markers indicating the start and end of Real Code in a
function. All instructions between the actual start and end of the
function and these markers is shredded by the mangler.
FUNBEGIN and FUNEND.
These are markers indicating the start and end of Real Code in a
function. All instructions between the actual start and end of the
function and these markers is shredded by the mangler.
+ -------------------------------------------------------------------------- */
#ifndef FB_
#define FB_ __asm__ volatile ("--- BEGIN ---");
#ifndef FB_
#define FB_ __asm__ volatile ("--- BEGIN ---");