summaryrefslogtreecommitdiff
path: root/ldso/ldso/cris/dl-sysdep.h
diff options
context:
space:
mode:
authorTobias Anderberg <tobias.anderberg@axis.com>2003-08-27 12:59:23 +0000
committerTobias Anderberg <tobias.anderberg@axis.com>2003-08-27 12:59:23 +0000
commit7f8820cbdf6a058cdb39163928c70cbd2425eba6 (patch)
tree794835817103665381f58620e88765922a913e7d /ldso/ldso/cris/dl-sysdep.h
parentcbd4ed6c687b42b412a04d20ea77e1c90b68b3cf (diff)
Cosmetic changes.
Diffstat (limited to 'ldso/ldso/cris/dl-sysdep.h')
-rw-r--r--ldso/ldso/cris/dl-sysdep.h121
1 files changed, 61 insertions, 60 deletions
diff --git a/ldso/ldso/cris/dl-sysdep.h b/ldso/ldso/cris/dl-sysdep.h
index e915bf600..cf36752fb 100644
--- a/ldso/ldso/cris/dl-sysdep.h
+++ b/ldso/ldso/cris/dl-sysdep.h
@@ -11,11 +11,11 @@
/*
* Initialization sequence for a GOT.
*/
-#define INIT_GOT(GOT_BASE,MODULE) \
-{ \
- GOT_BASE[1] = (unsigned long) MODULE; \
- GOT_BASE[2] = (unsigned long) _dl_linux_resolve; \
-}
+#define INIT_GOT(GOT_BASE,MODULE) \
+{ \
+ GOT_BASE[1] = (unsigned long) MODULE; \
+ GOT_BASE[2] = (unsigned long) _dl_linux_resolve; \
+}
/*
* Here is a macro to perform a relocation. This is only used when
@@ -24,38 +24,39 @@
* SYMBOL is the symbol involved in the relocation, and LOAD is the
* load address.
*/
-#define PERFORM_BOOTSTRAP_RELOC(RELP, REL, SYMBOL, LOAD) \
- switch (ELF32_R_TYPE((RELP)->r_info)) { \
- case R_CRIS_GLOB_DAT: \
- case R_CRIS_JUMP_SLOT: \
- case R_CRIS_32: \
- *REL = SYMBOL; \
- break; \
- case R_CRIS_16_PCREL: \
+#define PERFORM_BOOTSTRAP_RELOC(RELP, REL, SYMBOL, LOAD) \
+ switch (ELF32_R_TYPE((RELP)->r_info)) { \
+ case R_CRIS_GLOB_DAT: \
+ case R_CRIS_JUMP_SLOT: \
+ case R_CRIS_32: \
+ *REL = SYMBOL; \
+ break; \
+ case R_CRIS_16_PCREL: \
*(short *) *REL = SYMBOL + (RELP)->r_addend - *REL - 2; \
- break; \
- case R_CRIS_32_PCREL: \
- *REL = SYMBOL + (RELP)->r_addend - *REL - 4; \
- break; \
- case R_CRIS_NONE: \
- break; \
- case R_CRIS_RELATIVE: \
- *REL = (unsigned long) LOAD + (RELP)->r_addend; \
- break; \
- default: \
- _dl_exit(1); \
- break; \
- }
+ break; \
+ case R_CRIS_32_PCREL: \
+ *REL = SYMBOL + (RELP)->r_addend - *REL - 4; \
+ break; \
+ case R_CRIS_NONE: \
+ break; \
+ case R_CRIS_RELATIVE: \
+ *REL = (unsigned long) LOAD + (RELP)->r_addend; \
+ break; \
+ default: \
+ _dl_exit(1); \
+ break; \
+ }
/*
* Transfer control to the user's application once the dynamic loader
* is done. This routine has to exit the current function, then call
* _dl_elf_main.
*/
-#define START() __asm__ volatile ("moveq 0,$r8\n\t
- move $r8,$srp\n\t
- move.d %1,$sp\n\t
- jump %0\n\t" : : "r" (_dl_elf_main), "r" (args))
+#define START() __asm__ volatile ("moveq 0,$r8\n\t" \
+ "move $r8,$srp\n\t" \
+ "move.d %1,$sp\n\t" \
+ "jump %0\n\t" \
+ : : "r" (_dl_elf_main), "r" (args))
/* Defined some magic numbers that this ld.so should accept. */
#define MAGIC1 EM_CRIS
@@ -66,41 +67,41 @@ struct elf_resolve;
extern unsigned long _dl_linux_resolver(struct elf_resolve *tpnt, int reloc_entry);
/* Cheap modulo implementation, taken from arm/ld_sysdep.h. */
-static inline unsigned long
-cris_mod(unsigned long m, unsigned long p)
+static inline unsigned long
+cris_mod(unsigned long m, unsigned long p)
{
unsigned long i, t, inc;
-
- i = p;
+
+ i = p;
t = 0;
- while (!(i & (1 << 31))) {
- i <<= 1;
- t++;
- }
-
- t--;
-
+ while (!(i & (1 << 31))) {
+ i <<= 1;
+ t++;
+ }
+
+ t--;
+
for (inc = t; inc > 2; inc--) {
- i = p << inc;
-
- if (i & (1 << 31))
- break;
-
- while (m >= i) {
- m -= i;
- i <<= 1;
- if (i & (1 << 31))
- break;
- if (i < p)
- break;
- }
- }
-
- while (m >= p)
- m -= p;
-
- return m;
+ i = p << inc;
+
+ if (i & (1 << 31))
+ break;
+
+ while (m >= i) {
+ m -= i;
+ i <<= 1;
+ if (i & (1 << 31))
+ break;
+ if (i < p)
+ break;
+ }
+ }
+
+ while (m >= p)
+ m -= p;
+
+ return m;
}
#define do_rem(result, n, base) result = cris_mod(n, base);