aboutsummaryrefslogtreecommitdiffstats
path: root/os
diff options
context:
space:
mode:
Diffstat (limited to 'os')
-rw-r--r--os/ports/GCC/PPC/SPC560BCxx/bam.s7
-rw-r--r--os/ports/GCC/PPC/SPC560BCxx/ld/SPC560B44.ld2
-rw-r--r--os/ports/GCC/PPC/SPC560BCxx/ld/SPC560B50.ld2
-rw-r--r--os/ports/GCC/PPC/SPC560Pxx/bam.s7
-rw-r--r--os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P44.ld2
-rw-r--r--os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P50.ld2
-rw-r--r--os/ports/GCC/PPC/SPC563Mxx/bam.s7
-rw-r--r--os/ports/GCC/PPC/SPC563Mxx/ld/SPC563M64.ld2
-rw-r--r--os/ports/GCC/PPC/SPC564Axx/bam.s7
-rw-r--r--os/ports/GCC/PPC/SPC564Axx/ld/SPC564A80.ld2
-rw-r--r--os/ports/GCC/PPC/SPC56ELxx/bam.s7
-rw-r--r--os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL54_LSM.ld2
-rw-r--r--os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL60_LSM.ld2
-rw-r--r--os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL70_LSM.ld2
-rw-r--r--os/ports/GCC/PPC/rules.mk4
15 files changed, 45 insertions, 12 deletions
diff --git a/os/ports/GCC/PPC/SPC560BCxx/bam.s b/os/ports/GCC/PPC/SPC560BCxx/bam.s
index e37cfaa0c..f62c854dd 100644
--- a/os/ports/GCC/PPC/SPC560BCxx/bam.s
+++ b/os/ports/GCC/PPC/SPC560BCxx/bam.s
@@ -31,9 +31,12 @@
/* BAM record.*/
.section .bam, "ax"
.long 0x015A0000
- .long .init
+ .long _reset_address
-.init:
+ .align 2
+ .globl _reset_address
+ .type _reset_address, @function
+_reset_address:
bl _coreinit
bl _ivinit
diff --git a/os/ports/GCC/PPC/SPC560BCxx/ld/SPC560B44.ld b/os/ports/GCC/PPC/SPC560BCxx/ld/SPC560B44.ld
index 73b25bb09..2b81984d1 100644
--- a/os/ports/GCC/PPC/SPC560BCxx/ld/SPC560B44.ld
+++ b/os/ports/GCC/PPC/SPC560BCxx/ld/SPC560B44.ld
@@ -31,6 +31,8 @@ MEMORY
ram : org = 0x40000000, len = 28k
}
+ENTRY(_reset_address)
+
/*
* Derived constants.
*/
diff --git a/os/ports/GCC/PPC/SPC560BCxx/ld/SPC560B50.ld b/os/ports/GCC/PPC/SPC560BCxx/ld/SPC560B50.ld
index 56b83cfe1..7ccede017 100644
--- a/os/ports/GCC/PPC/SPC560BCxx/ld/SPC560B50.ld
+++ b/os/ports/GCC/PPC/SPC560BCxx/ld/SPC560B50.ld
@@ -31,6 +31,8 @@ MEMORY
ram : org = 0x40000000, len = 32k
}
+ENTRY(_reset_address)
+
/*
* Derived constants.
*/
diff --git a/os/ports/GCC/PPC/SPC560Pxx/bam.s b/os/ports/GCC/PPC/SPC560Pxx/bam.s
index b5a2a6af0..d1feed8d3 100644
--- a/os/ports/GCC/PPC/SPC560Pxx/bam.s
+++ b/os/ports/GCC/PPC/SPC560Pxx/bam.s
@@ -31,9 +31,12 @@
/* BAM record.*/
.section .bam, "ax"
.long 0x015A0000
- .long .init
+ .long _reset_address
-.init:
+ .align 2
+ .globl _reset_address
+ .type _reset_address, @function
+_reset_address:
bl _coreinit
bl _ivinit
diff --git a/os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P44.ld b/os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P44.ld
index b4db1d25b..de3e0bc37 100644
--- a/os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P44.ld
+++ b/os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P44.ld
@@ -31,6 +31,8 @@ MEMORY
ram : org = 0x40000000, len = 36k
}
+ENTRY(_reset_address)
+
/*
* Derived constants.
*/
diff --git a/os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P50.ld b/os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P50.ld
index 37b737bc8..e02b092a5 100644
--- a/os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P50.ld
+++ b/os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P50.ld
@@ -31,6 +31,8 @@ MEMORY
ram : org = 0x40000000, len = 40k
}
+ENTRY(_reset_address)
+
/*
* Derived constants.
*/
diff --git a/os/ports/GCC/PPC/SPC563Mxx/bam.s b/os/ports/GCC/PPC/SPC563Mxx/bam.s
index 6b3012a72..19ce1e014 100644
--- a/os/ports/GCC/PPC/SPC563Mxx/bam.s
+++ b/os/ports/GCC/PPC/SPC563Mxx/bam.s
@@ -35,9 +35,12 @@
#else
.long 0x005A0000
#endif
- .long .init
+ .long _reset_address
-.init:
+ .align 2
+ .globl _reset_address
+ .type _reset_address, @function
+_reset_address:
bl _coreinit
bl _ivinit
diff --git a/os/ports/GCC/PPC/SPC563Mxx/ld/SPC563M64.ld b/os/ports/GCC/PPC/SPC563Mxx/ld/SPC563M64.ld
index d96dd9970..25fe1143b 100644
--- a/os/ports/GCC/PPC/SPC563Mxx/ld/SPC563M64.ld
+++ b/os/ports/GCC/PPC/SPC563Mxx/ld/SPC563M64.ld
@@ -30,6 +30,8 @@ MEMORY
ram : org = 0x40000000, len = 94k
}
+ENTRY(_reset_address)
+
/*
* Derived constants.
*/
diff --git a/os/ports/GCC/PPC/SPC564Axx/bam.s b/os/ports/GCC/PPC/SPC564Axx/bam.s
index 1e5982423..2955cea2f 100644
--- a/os/ports/GCC/PPC/SPC564Axx/bam.s
+++ b/os/ports/GCC/PPC/SPC564Axx/bam.s
@@ -35,9 +35,12 @@
#else
.long 0x005A0000
#endif
- .long .init
+ .long _reset_address
-.init:
+ .align 2
+ .globl _reset_address
+ .type _reset_address, @function
+_reset_address:
bl _coreinit
bl _ivinit
diff --git a/os/ports/GCC/PPC/SPC564Axx/ld/SPC564A80.ld b/os/ports/GCC/PPC/SPC564Axx/ld/SPC564A80.ld
index bdc559e6c..ab503114e 100644
--- a/os/ports/GCC/PPC/SPC564Axx/ld/SPC564A80.ld
+++ b/os/ports/GCC/PPC/SPC564Axx/ld/SPC564A80.ld
@@ -30,6 +30,8 @@ MEMORY
ram : org = 0x40000000, len = 192k
}
+ENTRY(_reset_address)
+
/*
* Derived constants.
*/
diff --git a/os/ports/GCC/PPC/SPC56ELxx/bam.s b/os/ports/GCC/PPC/SPC56ELxx/bam.s
index 0760257a2..623428ce3 100644
--- a/os/ports/GCC/PPC/SPC56ELxx/bam.s
+++ b/os/ports/GCC/PPC/SPC56ELxx/bam.s
@@ -35,9 +35,12 @@
#else
.long 0x005A0000
#endif
- .long .init
+ .long _reset_address
-.init:
+ .align 2
+ .globl _reset_address
+ .type _reset_address, @function
+_reset_address:
bl _coreinit
bl _ivinit
diff --git a/os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL54_LSM.ld b/os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL54_LSM.ld
index a714029b9..592c435f5 100644
--- a/os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL54_LSM.ld
+++ b/os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL54_LSM.ld
@@ -30,6 +30,8 @@ MEMORY
ram : org = 0x40000000, len = 128k
}
+ENTRY(_reset_address)
+
/*
* Derived constants.
*/
diff --git a/os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL60_LSM.ld b/os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL60_LSM.ld
index 87bfe5ad1..193c21c05 100644
--- a/os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL60_LSM.ld
+++ b/os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL60_LSM.ld
@@ -30,6 +30,8 @@ MEMORY
ram : org = 0x40000000, len = 128k
}
+ENTRY(_reset_address)
+
/*
* Derived constants.
*/
diff --git a/os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL70_LSM.ld b/os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL70_LSM.ld
index 0a905c499..7afb4bf78 100644
--- a/os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL70_LSM.ld
+++ b/os/ports/GCC/PPC/SPC56ELxx/ld/SPC56EL70_LSM.ld
@@ -30,6 +30,8 @@ MEMORY
ram : org = 0x40000000, len = 192k
}
+ENTRY(_reset_address)
+
/*
* Derived constants.
*/
diff --git a/os/ports/GCC/PPC/rules.mk b/os/ports/GCC/PPC/rules.mk
index a78e0a376..443eee92c 100644
--- a/os/ports/GCC/PPC/rules.mk
+++ b/os/ports/GCC/PPC/rules.mk
@@ -62,9 +62,9 @@ ASXFLAGS = $(MCFLAGS) -Wa,-amhls=$(LSTDIR)/$(notdir $(<:.S=.lst)) $(ADEFS)
CFLAGS = $(MCFLAGS) $(OPT) $(COPT) $(CWARN) -Wa,-alms=$(LSTDIR)/$(notdir $(<:.c=.lst)) $(DEFS)
CPPFLAGS = $(MCFLAGS) $(OPT) $(CPPOPT) $(CPPWARN) -Wa,-alms=$(LSTDIR)/$(notdir $(<:.cpp=.lst)) $(DEFS)
ifeq ($(USE_LINK_GC),yes)
- LDFLAGS = $(MCFLAGS) -nostartfiles -T$(LDSCRIPT) -Wl,-Map=$(BUILDDIR)/$(PROJECT).map,--cref,--no-warn-mismatch,--gc-sections $(LLIBDIR)
+ LDFLAGS = $(MCFLAGS) -nostartfiles -T$(LDSCRIPT) -Wl,-Map=$(BUILDDIR)/$(PROJECT).map,--cref,--no-warn-mismatch,--gc-sections,$(USE_LDOPT) $(LLIBDIR)
else
- LDFLAGS = $(MCFLAGS) -nostartfiles -T$(LDSCRIPT) -Wl,-Map=$(BUILDDIR)/$(PROJECT).map,--cref,--no-warn-mismatch $(LLIBDIR)
+ LDFLAGS = $(MCFLAGS) -nostartfiles -T$(LDSCRIPT) -Wl,-Map=$(BUILDDIR)/$(PROJECT).map,--cref,--no-warn-mismatch,$(USE_LDOPT) $(LLIBDIR)
endif
# Generate dependency information