Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F154868368
D27088.id79172.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
D27088.id79172.diff
View Options
Index: libexec/rtld-elf/mips/rtld_start.S
===================================================================
--- libexec/rtld-elf/mips/rtld_start.S
+++ libexec/rtld-elf/mips/rtld_start.S
@@ -193,7 +193,6 @@
move t9, v0
jr t9
nop
- .cfi_endproc
END(_rtld_bind_start)
@@ -285,5 +284,4 @@
move t9, v0
jr t9
nop
- .cfi_endproc
END(_rtld_pltbind_start)
Index: sys/mips/include/asm.h
===================================================================
--- sys/mips/include/asm.h
+++ sys/mips/include/asm.h
@@ -136,11 +136,15 @@
.globl sym; sym:
#define ENTRY(sym) \
- .text; .globl sym; .ent sym; sym:
+ .text; .globl sym; .ent sym; sym: .cfi_startproc;
#define ASM_ENTRY(sym) \
.text; .globl sym; .type sym,@function; sym:
+
+#define _FRAME_STACK_REG sp
+#define _FRAME_RETURN_REG ra
+
/*
* LEAF
* A leaf routine does
@@ -152,7 +156,8 @@
.globl _C_LABEL(x); \
.ent _C_LABEL(x), 0; \
_C_LABEL(x): ; \
- .frame sp, 0, ra; \
+ .frame _FRAME_STACK_REG, 0, _FRAME_RETURN_REG; \
+ .cfi_startproc; \
MCOUNT
/*
@@ -163,7 +168,8 @@
.globl _C_LABEL(x); \
.ent _C_LABEL(x), 0; \
_C_LABEL(x): ; \
- .frame sp, 0, ra
+ .frame _FRAME_STACK_REG, 0, _FRAME_RETURN_REG; \
+ .cfi_startproc
/*
* XLEAF
@@ -183,7 +189,8 @@
.globl _C_LABEL(x); \
.ent _C_LABEL(x), 0; \
_C_LABEL(x): ; \
- .frame sp, fsize, retpc; \
+ .frame _FRAME_STACK_REG, fsize, retpc; \
+ .cfi_startproc; \
MCOUNT
/*
@@ -194,7 +201,8 @@
.globl _C_LABEL(x); \
.ent _C_LABEL(x), 0; \
_C_LABEL(x): ; \
- .frame sp, fsize, retpc
+ .frame _FRAME_STACK_REG, fsize, retpc; \
+ .cfi_startproc
/*
* XNESTED
@@ -209,9 +217,17 @@
* END
* Mark end of a procedure.
*/
-#define END(x) \
+#define END(x) \
+ .cfi_endproc; \
.end _C_LABEL(x)
+/*
+ * XEND
+ * Mark end of an alternate entry point.
+ */
+#define XEND(x) \
+ .size _C_LABEL(x), . - _C_LABEL(x)
+
/*
* IMPORT -- import external symbol
*/
@@ -233,6 +249,7 @@
#define VECTOR(x, regmask) \
.ent _C_LABEL(x),0; \
EXPORT(x); \
+ .cfi_startproc
#define VECTOR_END(x) \
EXPORT(x ## End); \
@@ -256,9 +273,9 @@
MSG(msg)
#define MSG(msg) \
- .rdata; \
+ .pushsection .rodata; \
9: .asciiz msg; \
- .text
+ .popsection
#define ASMSTR(str) \
.asciiz str; \
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Apr 30, 3:32 PM (7 h, 11 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
32532922
Default Alt Text
D27088.id79172.diff (2 KB)
Attached To
Mode
D27088: Add .cfi_{start,end}proc annotations for MIPS assembly
Attached
Detach File
Event Timeline
Log In to Comment