aboutsummaryrefslogtreecommitdiff
path: root/gdb/config/sparc/tm-sparc.h
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/config/sparc/tm-sparc.h')
-rw-r--r--gdb/config/sparc/tm-sparc.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/gdb/config/sparc/tm-sparc.h b/gdb/config/sparc/tm-sparc.h
index b428657..1e74e4d 100644
--- a/gdb/config/sparc/tm-sparc.h
+++ b/gdb/config/sparc/tm-sparc.h
@@ -583,7 +583,8 @@ arguments. */
#define FIX_CALL_DUMMY(dummyname, pc, fun, nargs, args, type, gcc_p) \
{ \
store_unsigned_integer (dummyname + 168, 4, \
- 0x40000000 | ((fun - (pc + 168)) >> 2)); \
+ (0x40000000 \
+ | (((fun - (pc + 168)) >> 2) & 0x3fffffff))); \
if (!gcc_p \
&& (TYPE_CODE (type) == TYPE_CODE_STRUCT \
|| TYPE_CODE (type) == TYPE_CODE_UNION)) \