summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorRichard Henderson <rth@are.twiddle.net>2003-01-05 18:11:43 -0800
committerRichard Henderson <rth@are.twiddle.net>2003-01-05 18:11:43 -0800
commitec146bb1417870970defd3493b00a153ba2ef326 (patch)
tree3288a659844891046a729fae335798301fc613ea /include
parent487cffcd6dbb0dabc333525c1fcb4d452b162ce9 (diff)
[ALPHA] Update for generic exception table cleanup.
Diffstat (limited to 'include')
-rw-r--r--include/asm-alpha/uaccess.h17
1 files changed, 6 insertions, 11 deletions
diff --git a/include/asm-alpha/uaccess.h b/include/asm-alpha/uaccess.h
index 5a3b8681f6af..a5985281aa7f 100644
--- a/include/asm-alpha/uaccess.h
+++ b/include/asm-alpha/uaccess.h
@@ -501,19 +501,14 @@ struct exception_table_entry
} fixup;
};
-/* Returns 0 if exception not found and fixup.unit otherwise. */
-extern unsigned search_exception_table(unsigned long);
-
/* Returns the new pc */
-#define fixup_exception(map_reg, fixup_unit, pc) \
+#define fixup_exception(map_reg, fixup, pc) \
({ \
- union exception_fixup __fie_fixup; \
- __fie_fixup.unit = fixup_unit; \
- if (__fie_fixup.bits.valreg != 31) \
- map_reg(__fie_fixup.bits.valreg) = 0; \
- if (__fie_fixup.bits.errreg != 31) \
- map_reg(__fie_fixup.bits.errreg) = -EFAULT; \
- (pc) + __fie_fixup.bits.nextinsn; \
+ if ((fixup)->fixup.bits.valreg != 31) \
+ map_reg((fixup)->fixup.bits.valreg) = 0; \
+ if ((fixup)->fixup.bits.errreg != 31) \
+ map_reg((fixup)->fixup.bits.errreg) = -EFAULT; \
+ (pc) + (fixup)->fixup.bits.nextinsn; \
})