* [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs
@ 2009-01-07 23:29 Matthew L. Creech
2009-01-22 1:11 ` Kim Phillips
2009-01-31 20:23 ` Wolfgang Denk
0 siblings, 2 replies; 20+ messages in thread
From: Matthew L. Creech @ 2009-01-07 23:29 UTC (permalink / raw)
To: u-boot
This addresses the problem described here:
http://lists.denx.de/pipermail/u-boot/2008-December/045029.html
This changes the link scripts of several of the mpcXXX CPUs to include
everything from '.rodata'. Without this, using a recent
powerpc-linux-gnu toolchain (e.g. from CodeSourcery) to build U-Boot
fails, often producing a multi-GB binary file.
Signed-off-by: Matthew Creech <mlcreech@gmail.com>
---
mpc5xx/u-boot.lds | 4 +---
mpc5xxx/u-boot-customlayout.lds | 4 +---
mpc5xxx/u-boot.lds | 4 +---
mpc8220/u-boot.lds | 4 +---
mpc824x/u-boot.lds | 4 +---
mpc8260/u-boot.lds | 4 +---
mpc83xx/u-boot.lds | 4 +---
7 files changed, 7 insertions(+), 21 deletions(-)
diff -purN orig/cpu/mpc5xx/u-boot.lds u-boot/cpu/mpc5xx/u-boot.lds
--- orig/cpu/mpc5xx/u-boot.lds 2009-01-07 17:57:22.000000000 -0500
+++ u-boot/cpu/mpc5xx/u-boot.lds 2009-01-07 17:59:25.000000000 -0500
@@ -65,9 +65,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(.rodata*)
*(.eh_frame)
}
.fini : { *(.fini) } =0
diff -purN orig/cpu/mpc5xxx/u-boot-customlayout.lds
u-boot/cpu/mpc5xxx/u-boot-customlayout.lds
--- orig/cpu/mpc5xxx/u-boot-customlayout.lds 2009-01-07 17:57:22.000000000 -0500
+++ u-boot/cpu/mpc5xxx/u-boot-customlayout.lds 2009-01-07
18:00:33.000000000 -0500
@@ -68,9 +68,7 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(.rodata*)
*(.eh_frame)
}
.fini : { *(.fini) } =0
diff -purN orig/cpu/mpc5xxx/u-boot.lds u-boot/cpu/mpc5xxx/u-boot.lds
--- orig/cpu/mpc5xxx/u-boot.lds 2009-01-07 17:57:22.000000000 -0500
+++ u-boot/cpu/mpc5xxx/u-boot.lds 2009-01-07 17:59:01.000000000 -0500
@@ -57,9 +57,7 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(.rodata*)
*(.eh_frame)
}
.fini : { *(.fini) } =0
diff -purN orig/cpu/mpc8220/u-boot.lds u-boot/cpu/mpc8220/u-boot.lds
--- orig/cpu/mpc8220/u-boot.lds 2009-01-07 17:57:22.000000000 -0500
+++ u-boot/cpu/mpc8220/u-boot.lds 2009-01-07 17:59:41.000000000 -0500
@@ -57,9 +57,7 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(.rodata*)
*(.eh_frame)
}
.fini : { *(.fini) } =0
diff -purN orig/cpu/mpc824x/u-boot.lds u-boot/cpu/mpc824x/u-boot.lds
--- orig/cpu/mpc824x/u-boot.lds 2009-01-07 17:57:22.000000000 -0500
+++ u-boot/cpu/mpc824x/u-boot.lds 2009-01-07 17:58:45.000000000 -0500
@@ -57,9 +57,7 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(.rodata*)
*(.eh_frame)
}
.fini : { *(.fini) } =0
diff -purN orig/cpu/mpc8260/u-boot.lds u-boot/cpu/mpc8260/u-boot.lds
--- orig/cpu/mpc8260/u-boot.lds 2009-01-07 17:57:22.000000000 -0500
+++ u-boot/cpu/mpc8260/u-boot.lds 2009-01-07 17:58:27.000000000 -0500
@@ -57,9 +57,7 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(.rodata*)
*(.eh_frame)
}
.fini : { *(.fini) } =0
diff -purN orig/cpu/mpc83xx/u-boot.lds u-boot/cpu/mpc83xx/u-boot.lds
--- orig/cpu/mpc83xx/u-boot.lds 2009-01-07 17:57:22.000000000 -0500
+++ u-boot/cpu/mpc83xx/u-boot.lds 2009-01-07 17:58:11.000000000 -0500
@@ -55,9 +55,7 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(.rodata*)
*(.eh_frame)
}
.fini : { *(.fini) } =0
--
Matthew L. Creech
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs
2009-01-07 23:29 [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs Matthew L. Creech
@ 2009-01-22 1:11 ` Kim Phillips
2009-01-31 11:02 ` Trent Piepho
2009-01-31 20:23 ` [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs Wolfgang Denk
2009-01-31 20:23 ` Wolfgang Denk
1 sibling, 2 replies; 20+ messages in thread
From: Kim Phillips @ 2009-01-22 1:11 UTC (permalink / raw)
To: u-boot
On Wed, 7 Jan 2009 18:29:54 -0500
"Matthew L. Creech" <mlcreech@gmail.com> wrote:
> This addresses the problem described here:
>
> http://lists.denx.de/pipermail/u-boot/2008-December/045029.html
>
> This changes the link scripts of several of the mpcXXX CPUs to include
> everything from '.rodata'. Without this, using a recent
> powerpc-linux-gnu toolchain (e.g. from CodeSourcery) to build U-Boot
> fails, often producing a multi-GB binary file.
>
>
> Signed-off-by: Matthew Creech <mlcreech@gmail.com>
> ---
so, what's the status of this patch? I've seen this fail on 83xx.
Most of these types of patches that fix the newer gcc's behaviour have
been dropped, one of which even did sorting on name and alignment:
http://www.mail-archive.com/u-boot at lists.denx.de/msg03193.html
Do I need to make one for 83xx and apply it myself?
Kim
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs
2009-01-22 1:11 ` Kim Phillips
@ 2009-01-31 11:02 ` Trent Piepho
2009-01-31 20:23 ` Wolfgang Denk
2009-01-31 20:23 ` [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs Wolfgang Denk
1 sibling, 1 reply; 20+ messages in thread
From: Trent Piepho @ 2009-01-31 11:02 UTC (permalink / raw)
To: u-boot
On Wed, 21 Jan 2009, Kim Phillips wrote:
> On Wed, 7 Jan 2009 18:29:54 -0500
>> This addresses the problem described here:
>>
>> http://lists.denx.de/pipermail/u-boot/2008-December/045029.html
>>
>> This changes the link scripts of several of the mpcXXX CPUs to include
>> everything from '.rodata'. Without this, using a recent
>> powerpc-linux-gnu toolchain (e.g. from CodeSourcery) to build U-Boot
>> fails, often producing a multi-GB binary file.
See my patch as to why ".rodata*" is non-optimal.
> so, what's the status of this patch? I've seen this fail on 83xx.
> Most of these types of patches that fix the newer gcc's behaviour have
> been dropped, one of which even did sorting on name and alignment:
>
> http://www.mail-archive.com/u-boot at lists.denx.de/msg03193.html
>
> Do I need to make one for 83xx and apply it myself?
Wolfgang rejected mine because he wanted a patch that fixed every single
board in one shot. I didn't feel like patching a hundred other linker
scripts I knew nothing about.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs
2009-01-07 23:29 [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs Matthew L. Creech
2009-01-22 1:11 ` Kim Phillips
@ 2009-01-31 20:23 ` Wolfgang Denk
1 sibling, 0 replies; 20+ messages in thread
From: Wolfgang Denk @ 2009-01-31 20:23 UTC (permalink / raw)
To: u-boot
Dear "Matthew L. Creech",
In message <5ee96a840901071529q6eb7d7fblfeb8e3097305b2e0@mail.gmail.com> you wrote:
> This addresses the problem described here:
>
> http://lists.denx.de/pipermail/u-boot/2008-December/045029.html
>
> This changes the link scripts of several of the mpcXXX CPUs to include
> everything from '.rodata'. Without this, using a recent
> powerpc-linux-gnu toolchain (e.g. from CodeSourcery) to build U-Boot
> fails, often producing a multi-GB binary file.
If I understand correctly, this problem affects not only the Freescale
processors, but all ppc - then we should fix it for all ppc.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Brain: an apparatus with which we think we think. - Ambrose Bierce
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs
2009-01-31 11:02 ` Trent Piepho
@ 2009-01-31 20:23 ` Wolfgang Denk
2009-02-03 4:11 ` Trent Piepho
0 siblings, 1 reply; 20+ messages in thread
From: Wolfgang Denk @ 2009-01-31 20:23 UTC (permalink / raw)
To: u-boot
Dear Trent Piepho,
In message <Pine.LNX.4.64.0901310259430.8685@t2.domain.actdsltmp> you wrote:
>
> > so, what's the status of this patch? I've seen this fail on 83xx.
> > Most of these types of patches that fix the newer gcc's behaviour have
> > been dropped, one of which even did sorting on name and alignment:
> >
> > http://www.mail-archive.com/u-boot at lists.denx.de/msg03193.html
> >
> > Do I need to make one for 83xx and apply it myself?
>
> Wolfgang rejected mine because he wanted a patch that fixed every single
> board in one shot. I didn't feel like patching a hundred other linker
> scripts I knew nothing about.
Why not? If you know what you are doing (and I have strong resons to
believe that you do) then I think your fix should be applied to all
systems that are affected by the problem.
I do not want to fix only a subset of the boards and see people
wasting time because they run into the same issue gaiagn and again on
still unfixed systems.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
It is dangerous to be right on a subject on which the established
authorities are wrong. -- Voltaire
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs
2009-01-22 1:11 ` Kim Phillips
2009-01-31 11:02 ` Trent Piepho
@ 2009-01-31 20:23 ` Wolfgang Denk
1 sibling, 0 replies; 20+ messages in thread
From: Wolfgang Denk @ 2009-01-31 20:23 UTC (permalink / raw)
To: u-boot
Dear Kim Phillips,
In message <20090121191124.92ec314a.kim.phillips@freescale.com> you wrote:
>
> so, what's the status of this patch? I've seen this fail on 83xx.
I'm waiting for a reworked version that fixes this for all affected
systems.
> Do I need to make one for 83xx and apply it myself?
Please don't create isolated fixes - it makes little sense to fix the
problem only partially.
Viele Gr??e,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
It is easier to change the specification to fit the program than vice
versa.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs
2009-01-31 20:23 ` Wolfgang Denk
@ 2009-02-03 4:11 ` Trent Piepho
2009-02-17 2:05 ` Kim Phillips
0 siblings, 1 reply; 20+ messages in thread
From: Trent Piepho @ 2009-02-03 4:11 UTC (permalink / raw)
To: u-boot
On Sat, 31 Jan 2009, Wolfgang Denk wrote:
> In message <Pine.LNX.4.64.0901310259430.8685@t2.domain.actdsltmp> you wrote:
> > > so, what's the status of this patch? I've seen this fail on 83xx.
> > > Most of these types of patches that fix the newer gcc's behaviour have
> > > been dropped, one of which even did sorting on name and alignment:
> > >
> > > http://www.mail-archive.com/u-boot at lists.denx.de/msg03193.html
> > >
> > > Do I need to make one for 83xx and apply it myself?
> >
> > Wolfgang rejected mine because he wanted a patch that fixed every single
> > board in one shot. I didn't feel like patching a hundred other linker
> > scripts I knew nothing about.
>
> Why not? If you know what you are doing (and I have strong resons to
> believe that you do) then I think your fix should be applied to all
> systems that are affected by the problem.
But what systems are affected by the problem? For instance ms7750se only
has ".rodata", not even ".rodata.str1.4". So should it get changed too?
There are CPUs that have a special segment for byte aligned data. Does
u-boot support any of these CPUs? I don't know. But changing ".rodata" to
".rodata*" could break a system if ".rodata1" was supposed to be picked up
by a ".*data*1" somewhere else in the linker script. It seems like people
who know the platform would be less likely to get caught by this.
Or take something like mpc8220, which has this for a text segment:
*(.text)
*(.fixup)
*(.got1)
. = ALIGN(16);
*(.rodata)
*(.rodata1)
*(.rodata.str1.4)
*(.eh_frame)
Why is the start of rodata aligned to 16 bytes? I'd guess some sort of I/D
cache issue. Though aren't fixup and got1 data, not code? I can't
find any docs on what the differences between fixup, got, got1, and got2
are. It seems like current gcc only uses got2. The mpc8220 ld script also
lists fixup a second time, in the reloc section, a mistake that probably
doesn't break anything since I think gcc hasn't used fixup in some time.
Anyway, not knowing if it's ok to delete fixup and got1, I would change
this to:
*(.text)
*(.fixup)
*(.got1)
. = ALIGN(16);
*(.eh_frame)
*(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
eh_frame should go before rodata* since it has has a larger alignment, but
now rodata isn't 16 byte aligned like it was before. Does that matter? I
doubt it, but I don't know for sure.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs
2009-02-03 4:11 ` Trent Piepho
@ 2009-02-17 2:05 ` Kim Phillips
2009-02-18 0:04 ` Wolfgang Denk
0 siblings, 1 reply; 20+ messages in thread
From: Kim Phillips @ 2009-02-17 2:05 UTC (permalink / raw)
To: u-boot
On Mon, 2 Feb 2009 20:11:56 -0800 (PST)
Trent Piepho <xyzzy@speakeasy.org> wrote:
> On Sat, 31 Jan 2009, Wolfgang Denk wrote:
> > In message <Pine.LNX.4.64.0901310259430.8685@t2.domain.actdsltmp> you wrote:
> > > > so, what's the status of this patch? I've seen this fail on 83xx.
> > > > Most of these types of patches that fix the newer gcc's behaviour have
> > > > been dropped, one of which even did sorting on name and alignment:
> > > >
> > > > http://www.mail-archive.com/u-boot at lists.denx.de/msg03193.html
> > > >
> > > > Do I need to make one for 83xx and apply it myself?
> > >
> > > Wolfgang rejected mine because he wanted a patch that fixed every single
> > > board in one shot. I didn't feel like patching a hundred other linker
> > > scripts I knew nothing about.
> >
> > Why not? If you know what you are doing (and I have strong resons to
> > believe that you do) then I think your fix should be applied to all
> > systems that are affected by the problem.
>
> But what systems are affected by the problem? For instance ms7750se only
> has ".rodata", not even ".rodata.str1.4". So should it get changed too?
>
> There are CPUs that have a special segment for byte aligned data. Does
> u-boot support any of these CPUs? I don't know. But changing ".rodata" to
> ".rodata*" could break a system if ".rodata1" was supposed to be picked up
> by a ".*data*1" somewhere else in the linker script. It seems like people
> who know the platform would be less likely to get caught by this.
>
> Or take something like mpc8220, which has this for a text segment:
> *(.text)
> *(.fixup)
> *(.got1)
> . = ALIGN(16);
> *(.rodata)
> *(.rodata1)
> *(.rodata.str1.4)
> *(.eh_frame)
>
> Why is the start of rodata aligned to 16 bytes? I'd guess some sort of I/D
> cache issue. Though aren't fixup and got1 data, not code? I can't
> find any docs on what the differences between fixup, got, got1, and got2
> are. It seems like current gcc only uses got2. The mpc8220 ld script also
> lists fixup a second time, in the reloc section, a mistake that probably
> doesn't break anything since I think gcc hasn't used fixup in some time.
>
> Anyway, not knowing if it's ok to delete fixup and got1, I would change
> this to:
> *(.text)
> *(.fixup)
> *(.got1)
> . = ALIGN(16);
> *(.eh_frame)
> *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
>
> eh_frame should go before rodata* since it has has a larger alignment, but
> now rodata isn't 16 byte aligned like it was before. Does that matter? I
> doubt it, but I don't know for sure.
>
WD, do you have a response to the above? Otherwise, I'll put this
in my queue:
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs
2009-02-17 2:05 ` Kim Phillips
@ 2009-02-18 0:04 ` Wolfgang Denk
2009-02-18 18:52 ` Jon Loeliger
0 siblings, 1 reply; 20+ messages in thread
From: Wolfgang Denk @ 2009-02-18 0:04 UTC (permalink / raw)
To: u-boot
Dear Kim,
In message <20090216200502.1e25c494.kim.phillips@freescale.com> you wrote:
>
> Trent Piepho <xyzzy@speakeasy.org> wrote:
...
> > But what systems are affected by the problem? For instance ms7750se only
> > has ".rodata", not even ".rodata.str1.4". So should it get changed too?
> >
> > There are CPUs that have a special segment for byte aligned data. Does
> > u-boot support any of these CPUs? I don't know. But changing ".rodata" to
> > ".rodata*" could break a system if ".rodata1" was supposed to be picked up
> > by a ".*data*1" somewhere else in the linker script. It seems like people
> > who know the platform would be less likely to get caught by this.
> >
> > Or take something like mpc8220, which has this for a text segment:
> > *(.text)
> > *(.fixup)
> > *(.got1)
> > . = ALIGN(16);
> > *(.rodata)
> > *(.rodata1)
> > *(.rodata.str1.4)
> > *(.eh_frame)
> >
> > Why is the start of rodata aligned to 16 bytes? I'd guess some sort of I/D
> > cache issue. Though aren't fixup and got1 data, not code? I can't
> > find any docs on what the differences between fixup, got, got1, and got2
> > are. It seems like current gcc only uses got2. The mpc8220 ld script also
> > lists fixup a second time, in the reloc section, a mistake that probably
> > doesn't break anything since I think gcc hasn't used fixup in some time.
> >
> > Anyway, not knowing if it's ok to delete fixup and got1, I would change
> > this to:
> > *(.text)
> > *(.fixup)
> > *(.got1)
> > . = ALIGN(16);
> > *(.eh_frame)
> > *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
> >
> > eh_frame should go before rodata* since it has has a larger alignment, but
> > now rodata isn't 16 byte aligned like it was before. Does that matter? I
> > doubt it, but I don't know for sure.
> >
>
> WD, do you have a response to the above? Otherwise, I'll put this
> in my queue:
Please don't. I really want to see this fixed for ALL affected boards,
not only for a small subset so everbody forgets it again and we run
into it later again and again.
Trent - you have obviously already spend a lot of effort into
analyzing this code - most probably more time than any other of us.
Based on your experience and the effort you already spent I think it
would be best if you could provided a patch to fix all boards.
Thanks in advance.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"'Tis true, 'tis pity, and pity 'tis 'tis true."
- Poloniouius, in Willie the Shake's _Hamlet, Prince of Darkness_
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs
2009-02-18 0:04 ` Wolfgang Denk
@ 2009-02-18 18:52 ` Jon Loeliger
2009-02-18 21:54 ` Wolfgang Denk
0 siblings, 1 reply; 20+ messages in thread
From: Jon Loeliger @ 2009-02-18 18:52 UTC (permalink / raw)
To: u-boot
Wolfgang Denk wrote:
> Please don't. I really want to see this fixed for ALL affected boards,
> not only for a small subset so everbody forgets it again and we run
> into it later again and again.
>
> Trent - you have obviously already spend a lot of effort into
> analyzing this code - most probably more time than any other of us.
> Based on your experience and the effort you already spent I think it
> would be best if you could provided a patch to fix all boards.
Just as a clarification, are you asking Trent to *fix* it
for all boards, or to generate a patch that will apply to
all boards?
Specifically, I recall Trent's hesitation was he doesn't have
access to most boards (not even all PPC boards), and he wasn't
even sure it was a problem on some other ARCHes in the first place.
But, if you are asking for an off-the-cuff patch that can be
applied to all boards without testing by Trent, then I am
confident he would be willing to help here.
jdl
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs
2009-02-18 18:52 ` Jon Loeliger
@ 2009-02-18 21:54 ` Wolfgang Denk
2009-02-18 22:00 ` ksi at koi8.net
2009-02-18 23:17 ` Trent Piepho
0 siblings, 2 replies; 20+ messages in thread
From: Wolfgang Denk @ 2009-02-18 21:54 UTC (permalink / raw)
To: u-boot
Dear Jon,
In message <499C58FA.20507@freescale.com> you wrote:
>
> > Trent - you have obviously already spend a lot of effort into
> > analyzing this code - most probably more time than any other of us.
> > Based on your experience and the effort you already spent I think it
> > would be best if you could provided a patch to fix all boards.
>
> Just as a clarification, are you asking Trent to *fix* it
> for all boards, or to generate a patch that will apply to
> all boards?
He. Of course I can only ask to provide patch that, to the best of
Trent's experience, is supposed to fix the problems. I am aware
thatthere is a chance that it will not work on some boards, but then
it's up to the board maintainers to complain and to help fixing this
(rpobabmly small) number of remaining issues.
> Specifically, I recall Trent's hesitation was he doesn't have
> access to most boards (not even all PPC boards), and he wasn't
> even sure it was a problem on some other ARCHes in the first place.
Good point. But which other options do we have?
We can:
1) apply the patch to a small subset of the boards that are known to
be affected (at least all PowerPC boards)
2) apply the patch to all boards that are known to be affected (all
PowerPC boards)
3) apply the patch to all boards that are most probably affected (all
boards)
If we go for 1) or even 2), ther eis a pretty high chance that the
problem will byte us later, and until somebody remembers that this
was raised (and fixed) before in another architecture, lots of
efforts will be wasted.
However, if we now apply a patch that breaks a number of boards we
will quickly learn where the change works and where not.
In my point of view the risk of a potential damage involved with 3) is
smaller than the probability for damage and the amount of effort cause
by 2) and especially by 1).
I don;t think such a patch should go into the current release, but
it's a good candidate for the "next" branch and thus for v2009.05.
> But, if you are asking for an off-the-cuff patch that can be
> applied to all boards without testing by Trent, then I am
> confident he would be willing to help here.
I really hope Trent will help out.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"We don't have to protect the environment -- the Second Coming is at
hand." - James Watt
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs
2009-02-18 21:54 ` Wolfgang Denk
@ 2009-02-18 22:00 ` ksi at koi8.net
2009-02-18 23:17 ` Trent Piepho
1 sibling, 0 replies; 20+ messages in thread
From: ksi at koi8.net @ 2009-02-18 22:00 UTC (permalink / raw)
To: u-boot
On Wed, 18 Feb 2009, Wolfgang Denk wrote:
> Dear Jon,
>
> In message <499C58FA.20507@freescale.com> you wrote:
> >
> > > Trent - you have obviously already spend a lot of effort into
> > > analyzing this code - most probably more time than any other of us.
> > > Based on your experience and the effort you already spent I think it
> > > would be best if you could provided a patch to fix all boards.
> >
> > Just as a clarification, are you asking Trent to *fix* it
> > for all boards, or to generate a patch that will apply to
> > all boards?
>
> He. Of course I can only ask to provide patch that, to the best of
> Trent's experience, is supposed to fix the problems. I am aware
> thatthere is a chance that it will not work on some boards, but then
> it's up to the board maintainers to complain and to help fixing this
> (rpobabmly small) number of remaining issues.
>
> > Specifically, I recall Trent's hesitation was he doesn't have
> > access to most boards (not even all PPC boards), and he wasn't
> > even sure it was a problem on some other ARCHes in the first place.
>
> Good point. But which other options do we have?
>
> We can:
>
> 1) apply the patch to a small subset of the boards that are known to
> be affected (at least all PowerPC boards)
>
> 2) apply the patch to all boards that are known to be affected (all
> PowerPC boards)
>
> 3) apply the patch to all boards that are most probably affected (all
> boards)
>
> If we go for 1) or even 2), ther eis a pretty high chance that the
> problem will byte us later, and until somebody remembers that this
> was raised (and fixed) before in another architecture, lots of
> efforts will be wasted.
>
> However, if we now apply a patch that breaks a number of boards we
> will quickly learn where the change works and where not.
>
> In my point of view the risk of a potential damage involved with 3) is
> smaller than the probability for damage and the amount of effort cause
> by 2) and especially by 1).
I would say apply it to all boards (option 3) and see what broke than fix
it.
---
******************************************************************
* KSI at home KOI8 Net < > The impossible we do immediately. *
* Las Vegas NV, USA < > Miracles require 24-hour notice. *
******************************************************************
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs
2009-02-18 21:54 ` Wolfgang Denk
2009-02-18 22:00 ` ksi at koi8.net
@ 2009-02-18 23:17 ` Trent Piepho
2009-02-18 23:22 ` [U-Boot] [PATCH] Fix all linker script to handle all rodata sections Trent Piepho
1 sibling, 1 reply; 20+ messages in thread
From: Trent Piepho @ 2009-02-18 23:17 UTC (permalink / raw)
To: u-boot
On Wed, 18 Feb 2009, Wolfgang Denk wrote:
> He. Of course I can only ask to provide patch that, to the best of
> Trent's experience, is supposed to fix the problems. I am aware
> thatthere is a chance that it will not work on some boards, but then
> it's up to the board maintainers to complain and to help fixing this
> (rpobabmly small) number of remaining issues.
Very well, I will send a jumbo patch that fixes all boards. It was
produced by an overly complicated perl script that attempts to parse the
entire linker script and make sure there is no weirdness. Like rodata
sections intermixed with non-rodata sections, multiple sections defined on
a single line, eh_frame appearing in a different section than rodata,
rodata sections not all placed into the same linker section, etc.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix all linker script to handle all rodata sections
2009-02-18 23:17 ` Trent Piepho
@ 2009-02-18 23:22 ` Trent Piepho
2009-02-19 0:00 ` Wolfgang Denk
` (2 more replies)
0 siblings, 3 replies; 20+ messages in thread
From: Trent Piepho @ 2009-02-18 23:22 UTC (permalink / raw)
To: u-boot
From: Trent Piepho <xyzzy@speakeasy.org>
A recent gcc added a new unaligned rodata section called '.rodata.str1.1',
which needs to be added the the linker script. Instead of just adding this
one section, we use a wildcard ".rodata*" to get all rodata linker section
gcc has now and might add in the future.
However, '*(.rodata*)' by itself will result in sub-optimal section
ordering. The sections will be sorted by object file, which causes extra
padding between the unaligned rodata.str.1.1 of one object file and the
aligned rodata of the next object file. This is easy to fix by using the
SORT_BY_ALIGNMENT command.
This patch has not be tested one most of the boards modified. Some boards
have a linker script that looks something like this:
*(.text)
. = ALIGN(16);
*(.rodata)
*(.rodata.str1.4)
*(.eh_frame)
I change this to:
*(.text)
. = ALIGN(16);
*(.eh_frame)
*(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
This means the start of rodata will no longer be 16 bytes aligned.
However, the boundary between text and rodata/eh_frame is still aligned to
16 bytes, which is what I think the real purpose of the ALIGN call is.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
---
board/AtmarkTechno/suzaku/u-boot.lds | 2 +-
board/BuS/EB+MCF-EV123/u-boot.lds | 3 +--
board/LEOX/elpt860/u-boot.lds | 4 +---
board/MAI/AmigaOneG3SE/u-boot.lds | 4 +---
board/Marvell/db64360/u-boot.lds | 4 +---
board/Marvell/db64460/u-boot.lds | 4 +---
board/RPXClassic/u-boot.lds | 4 +---
board/RPXlite/u-boot.lds | 4 +---
board/RPXlite_dw/u-boot.lds | 4 +---
board/RRvision/u-boot.lds | 4 +---
board/actux1/u-boot.lds | 2 +-
board/actux2/u-boot.lds | 2 +-
board/actux3/u-boot.lds | 2 +-
board/actux4/u-boot.lds | 2 +-
board/adder/u-boot.lds | 4 +---
board/ads5121/u-boot.lds | 4 +---
board/altera/dk1c20/u-boot.lds | 2 +-
board/altera/dk1s10/u-boot.lds | 2 +-
board/altera/ep1c20/u-boot.lds | 3 +--
board/altera/ep1s10/u-boot.lds | 3 +--
board/altera/ep1s40/u-boot.lds | 3 +--
board/amcc/acadia/u-boot-nand.lds | 4 +---
board/amcc/acadia/u-boot.lds | 4 +---
board/amcc/bamboo/u-boot-nand.lds | 4 +---
board/amcc/bamboo/u-boot.lds | 4 +---
board/amcc/bubinga/u-boot.lds | 4 +---
board/amcc/canyonlands/u-boot-nand.lds | 4 +---
board/amcc/canyonlands/u-boot.lds | 4 +---
board/amcc/ebony/u-boot.lds | 4 +---
board/amcc/katmai/u-boot.lds | 4 +---
board/amcc/kilauea/u-boot-nand.lds | 4 +---
board/amcc/kilauea/u-boot.lds | 4 +---
board/amcc/luan/u-boot.lds | 4 +---
board/amcc/makalu/u-boot.lds | 4 +---
board/amcc/ocotea/u-boot.lds | 4 +---
board/amcc/redwood/u-boot.lds | 4 +---
board/amcc/sequoia/u-boot-nand.lds | 4 +---
board/amcc/sequoia/u-boot.lds | 4 +---
board/amcc/taihu/u-boot.lds | 4 +---
board/amcc/taishan/u-boot.lds | 4 +---
board/amcc/walnut/u-boot.lds | 4 +---
board/amcc/yosemite/u-boot.lds | 4 +---
board/amcc/yucca/u-boot.lds | 4 +---
board/amirix/ap1000/u-boot.lds | 4 +---
board/apollon/u-boot.lds | 2 +-
board/armadillo/u-boot.lds | 2 +-
board/armltd/versatile/u-boot.lds | 2 +-
board/assabet/u-boot.lds | 2 +-
board/atmel/at91rm9200dk/u-boot.lds | 2 +-
board/atmel/atngw100/u-boot.lds | 3 +--
board/atmel/atstk1000/u-boot.lds | 3 +--
board/atum8548/u-boot.lds | 4 +---
board/c2mon/u-boot.lds | 4 +---
board/cerf250/u-boot.lds | 2 +-
board/cm4008/u-boot.lds | 2 +-
board/cm41xx/u-boot.lds | 2 +-
board/cm5200/u-boot.lds | 4 +---
board/cmc_pu2/u-boot.lds | 2 +-
board/cobra5272/u-boot.lds | 3 +--
board/cogent/u-boot.lds | 4 +---
board/cradle/u-boot.lds | 2 +-
board/cray/L1/u-boot.lds | 4 +---
board/csb226/u-boot.lds | 2 +-
board/csb272/u-boot.lds | 4 +---
board/csb472/u-boot.lds | 4 +---
board/csb637/u-boot.lds | 2 +-
board/dave/B2/u-boot.lds | 2 +-
board/dave/PPChameleonEVB/u-boot.lds | 4 +---
board/davinci/dvevm/u-boot.lds | 2 +-
board/davinci/schmoogie/u-boot.lds | 2 +-
board/davinci/sffsdr/u-boot.lds | 2 +-
board/davinci/sonata/u-boot.lds | 2 +-
board/dbau1x00/u-boot.lds | 2 +-
board/delta/u-boot.lds | 2 +-
board/dnp1110/u-boot.lds | 2 +-
board/eNET/u-boot.lds | 2 +-
board/earthlcd/favr-32-ezkit/u-boot.lds | 3 +--
board/eltec/bab7xx/u-boot.lds | 4 +---
board/eltec/elppc/u-boot.lds | 4 +---
board/eltec/mhpc/u-boot.lds | 4 +---
board/emk/top860/u-boot.lds | 4 +---
board/ep7312/u-boot.lds | 2 +-
board/ep88x/u-boot.lds | 4 +---
board/eric/u-boot.lds | 4 +---
board/esd/adciop/u-boot.lds | 4 +---
board/esd/apc405/u-boot.lds | 4 +---
board/esd/ar405/u-boot.lds | 4 +---
board/esd/ash405/u-boot.lds | 4 +---
board/esd/canbt/u-boot.lds | 4 +---
board/esd/cms700/u-boot.lds | 4 +---
board/esd/cpci2dp/u-boot.lds | 4 +---
board/esd/cpci405/u-boot.lds | 4 +---
board/esd/cpci750/u-boot.lds | 4 +---
board/esd/cpciiser4/u-boot.lds | 4 +---
board/esd/dasa_sim/u-boot.lds | 4 +---
board/esd/dp405/u-boot.lds | 4 +---
board/esd/du405/u-boot.lds | 4 +---
board/esd/du440/u-boot.lds | 4 +---
board/esd/hh405/u-boot.lds | 4 +---
board/esd/hub405/u-boot.lds | 4 +---
board/esd/ocrtc/u-boot.lds | 4 +---
board/esd/pci405/u-boot.lds | 4 +---
board/esd/plu405/u-boot.lds | 4 +---
board/esd/pmc405/u-boot.lds | 4 +---
board/esd/pmc440/u-boot-nand.lds | 4 +---
board/esd/pmc440/u-boot.lds | 4 +---
board/esd/tasreg/u-boot.lds | 4 +---
board/esd/voh405/u-boot.lds | 4 +---
board/esd/vom405/u-boot.lds | 4 +---
board/esd/wuh405/u-boot.lds | 4 +---
board/esteem192e/u-boot.lds | 4 +---
board/etx094/u-boot.lds | 4 +---
board/evb4510/u-boot.lds | 2 +-
board/evb64260/u-boot.lds | 4 +---
board/exbitgen/u-boot.lds | 4 +---
board/fads/u-boot.lds | 4 +---
board/flagadm/u-boot.lds | 4 +---
board/freescale/m5249evb/u-boot.lds | 4 +---
board/freescale/m5253demo/u-boot.lds | 3 +--
board/freescale/m5253evbe/u-boot.lds | 3 +--
board/freescale/m5271evb/u-boot.lds | 3 +--
board/freescale/m5272c3/u-boot.lds | 3 +--
board/freescale/m5275evb/u-boot.lds | 3 +--
board/freescale/m5282evb/u-boot.lds | 3 +--
board/freescale/m53017evb/u-boot.lds | 3 +--
board/freescale/m5329evb/u-boot.lds | 3 +--
board/freescale/m5373evb/u-boot.lds | 3 +--
board/freescale/m547xevb/u-boot.lds | 3 +--
board/freescale/m548xevb/u-boot.lds | 3 +--
board/freescale/mpc7448hpc2/u-boot.lds | 4 +---
board/freescale/mpc8536ds/u-boot.lds | 4 +---
board/freescale/mpc8540ads/u-boot.lds | 4 +---
board/freescale/mpc8541cds/u-boot.lds | 4 +---
board/freescale/mpc8544ds/u-boot.lds | 4 +---
board/freescale/mpc8548cds/u-boot.lds | 4 +---
board/freescale/mpc8555cds/u-boot.lds | 4 +---
board/freescale/mpc8560ads/u-boot.lds | 4 +---
board/freescale/mpc8568mds/u-boot.lds | 4 +---
board/freescale/mpc8572ds/u-boot.lds | 4 +---
board/freescale/mpc8610hpcd/u-boot.lds | 4 +---
board/freescale/mpc8641hpcn/u-boot.lds | 4 +---
board/freescale/mx31ads/u-boot.lds | 2 +-
board/g2000/u-boot.lds | 4 +---
board/gaisler/gr_cpci_ax2000/u-boot.lds | 4 +---
board/gaisler/gr_ep2s60/u-boot.lds | 4 +---
board/gaisler/gr_xc3s_1500/u-boot.lds | 4 +---
board/gaisler/grsim/u-boot.lds | 4 +---
board/gaisler/grsim_leon2/u-boot.lds | 4 +---
board/gcplus/u-boot.lds | 2 +-
board/gdsys/gdppc440etx/u-boot.lds | 4 +---
board/gdsys/neo/u-boot.lds | 4 +---
board/gen860t/u-boot-flashenv.lds | 4 +---
board/gen860t/u-boot.lds | 4 +---
board/genietv/u-boot.lds | 4 +---
board/gth/u-boot.lds | 4 +---
board/gth2/u-boot.lds | 2 +-
board/hermes/u-boot.lds | 4 +---
board/hymod/u-boot.lds | 4 +---
board/icu862/u-boot.lds | 4 +---
board/idmr/u-boot.lds | 3 +--
board/impa7/u-boot.lds | 2 +-
board/imx31_litekit/u-boot.lds | 2 +-
board/imx31_phycore/u-boot.lds | 2 +-
board/incaip/u-boot.lds | 2 +-
board/innokom/u-boot.lds | 2 +-
board/ip860/u-boot.lds | 4 +---
board/ivm/u-boot.lds | 4 +---
board/ixdp425/u-boot.lds | 2 +-
board/jse/u-boot.lds | 4 +---
board/kb9202/u-boot.lds | 2 +-
board/keymile/mgsuvd/u-boot.lds | 4 +---
board/korat/u-boot-F7FC.lds | 4 +---
board/korat/u-boot.lds | 4 +---
board/kup/kup4k/u-boot.lds | 4 +---
board/kup/kup4x/u-boot.lds | 4 +---
board/lantec/u-boot.lds | 4 +---
board/lart/u-boot.lds | 2 +-
board/logodl/u-boot.lds | 2 +-
board/lpc2292sodimm/u-boot.lds | 2 +-
board/lpd7a40x/u-boot.lds | 2 +-
board/lubbock/u-boot.lds | 2 +-
board/lwmon/u-boot.lds | 4 +---
board/lwmon5/u-boot.lds | 4 +---
board/m501sk/u-boot.lds | 2 +-
board/mbx8xx/u-boot.lds | 4 +---
board/micronas/vct/u-boot.lds | 2 +-
board/mimc/mimc200/u-boot.lds | 3 +--
board/miromico/hammerhead/u-boot.lds | 3 +--
board/ml2/u-boot.lds | 4 +---
board/modnet50/u-boot.lds | 2 +-
board/mousse/u-boot.lds | 4 +---
board/mp2usb/u-boot.lds | 2 +-
board/mpc8540eval/u-boot.lds | 4 +---
board/mpl/mip405/u-boot.lds | 4 +---
board/mpl/pip405/u-boot.lds | 4 +---
board/mpl/vcma9/u-boot.lds | 2 +-
board/mpr2/u-boot.lds | 2 +-
board/ms7720se/u-boot.lds | 2 +-
board/ms7722se/u-boot.lds | 2 +-
board/ms7750se/u-boot.lds | 2 +-
board/munices/u-boot.lds | 4 +---
board/mx1ads/u-boot.lds | 2 +-
board/mx1fs2/u-boot.lds | 2 +-
board/nc650/u-boot.lds | 4 +---
board/netphone/u-boot.lds | 4 +---
board/netstal/hcu4/u-boot.lds | 4 +---
board/netstal/hcu5/u-boot.lds | 4 +---
board/netstal/mcu25/u-boot.lds | 4 +---
board/netstar/eeprom.lds | 2 +-
board/netstar/u-boot.lds | 2 +-
board/netta/u-boot.lds | 4 +---
board/netta2/u-boot.lds | 4 +---
board/netvia/u-boot.lds | 4 +---
board/ns9750dev/u-boot.lds | 2 +-
board/nx823/u-boot.lds | 4 +---
board/omap1510inn/u-boot.lds | 2 +-
board/omap1610inn/u-boot.lds | 2 +-
board/omap2420h4/u-boot.lds | 2 +-
board/omap3/beagle/u-boot.lds | 2 +-
board/omap3/evm/u-boot.lds | 2 +-
board/omap3/overo/u-boot.lds | 2 +-
board/omap3/pandora/u-boot.lds | 2 +-
board/omap3/zoom1/u-boot.lds | 2 +-
board/omap5912osk/u-boot.lds | 2 +-
board/omap730p2/u-boot.lds | 2 +-
board/pb1x00/u-boot.lds | 2 +-
board/pcippc2/u-boot.lds | 4 +---
board/pcs440ep/u-boot.lds | 4 +---
board/pleb2/u-boot.lds | 2 +-
board/pm854/u-boot.lds | 4 +---
board/pm856/u-boot.lds | 4 +---
board/ppmc7xx/u-boot.lds | 4 +---
board/prodrive/alpr/u-boot.lds | 4 +---
board/prodrive/p3mx/u-boot.lds | 4 +---
board/prodrive/p3p440/u-boot.lds | 4 +---
board/prodrive/pdnb3/u-boot.lds | 2 +-
board/psyent/pci5441/u-boot.lds | 3 +--
board/psyent/pk1c20/u-boot.lds | 3 +--
board/purple/u-boot.lds | 2 +-
board/pxa255_idp/u-boot.lds | 2 +-
board/qemu-mips/u-boot.lds | 2 +-
board/quad100hd/u-boot.lds | 4 +---
board/quantum/u-boot.lds | 4 +---
board/r360mpi/u-boot.lds | 4 +---
board/rbc823/u-boot.lds | 4 +---
board/renesas/MigoR/u-boot.lds | 2 +-
board/renesas/ap325rxa/u-boot.lds | 2 +-
board/renesas/r2dplus/u-boot.lds | 2 +-
board/renesas/r7780mp/u-boot.lds | 2 +-
board/renesas/rsk7203/u-boot.lds | 2 +-
board/renesas/sh7763rdp/u-boot.lds | 2 +-
board/renesas/sh7785lcr/u-boot.lds | 2 +-
board/rmu/u-boot.lds | 4 +---
board/rsdproto/u-boot.lds | 4 +---
board/samsung/smdk2400/u-boot.lds | 2 +-
board/samsung/smdk2410/u-boot.lds | 2 +-
board/samsung/smdk6400/u-boot-nand.lds | 2 +-
board/sandburst/karef/u-boot.lds | 4 +---
board/sandburst/metrobox/u-boot.lds | 4 +---
board/sbc2410x/u-boot.lds | 2 +-
board/sbc405/u-boot.lds | 4 +---
board/sbc8548/u-boot.lds | 4 +---
board/sbc8560/u-boot.lds | 4 +---
board/sbc8641d/u-boot.lds | 4 +---
board/sc3/u-boot.lds | 4 +---
board/sc520_cdp/u-boot.lds | 2 +-
board/sc520_spunk/u-boot.lds | 2 +-
board/scb9328/u-boot.lds | 2 +-
board/shannon/u-boot.lds | 2 +-
board/siemens/CCM/u-boot.lds | 4 +---
board/siemens/IAD210/u-boot.lds | 4 +---
board/siemens/SMN42/u-boot.lds | 2 +-
board/siemens/pcu_e/u-boot.lds | 4 +---
board/sixnet/u-boot.lds | 4 +---
board/snmc/qs850/u-boot.lds | 4 +---
board/snmc/qs860t/u-boot.lds | 4 +---
board/socrates/u-boot.lds | 4 +---
board/spc1920/u-boot.lds | 4 +---
board/spd8xx/u-boot.lds | 4 +---
board/ssv/adnpesc1/u-boot.lds | 2 +-
board/st/nmdk8815/u-boot.lds | 2 +-
board/stxgp3/u-boot.lds | 4 +---
board/stxssa/u-boot.lds | 4 +---
board/stxxtc/u-boot.lds | 4 +---
board/svm_sc8xx/u-boot.lds | 4 +---
board/sx1/u-boot.lds | 2 +-
board/tb0229/u-boot.lds | 2 +-
board/tqc/tqm85xx/u-boot.lds | 4 +---
board/tqc/tqm8xx/u-boot.lds | 4 +---
board/trab/u-boot.lds | 2 +-
board/trizepsiv/u-boot.lds | 2 +-
board/uc100/u-boot.lds | 4 +---
board/v37/u-boot.lds | 4 +---
board/voiceblue/eeprom.lds | 2 +-
board/voiceblue/u-boot.lds | 2 +-
board/w7o/u-boot.lds | 4 +---
board/wepep250/u-boot.lds | 2 +-
board/westel/amx860/u-boot.lds | 4 +---
board/xaeniax/u-boot.lds | 2 +-
board/xes/xpedite5200/u-boot.lds | 4 +---
board/xes/xpedite5370/u-boot.lds | 4 +---
board/xilinx/microblaze-generic/u-boot.lds | 2 +-
board/xilinx/ml300/u-boot.lds | 4 +---
board/xilinx/ppc405-generic/u-boot-ram.lds | 4 +---
board/xilinx/ppc405-generic/u-boot-rom.lds | 4 +---
board/xilinx/ppc440-generic/u-boot-ram.lds | 4 +---
board/xilinx/ppc440-generic/u-boot-rom.lds | 4 +---
board/xm250/u-boot.lds | 2 +-
board/xpedite1k/u-boot.lds | 4 +---
board/xsengine/u-boot.lds | 2 +-
board/zeus/u-boot.lds | 4 +---
board/zylonite/u-boot.lds | 2 +-
cpu/arm926ejs/at91/u-boot.lds | 2 +-
cpu/mpc5xx/u-boot.lds | 4 +---
cpu/mpc5xxx/u-boot-customlayout.lds | 4 +---
cpu/mpc5xxx/u-boot.lds | 4 +---
cpu/mpc8220/u-boot.lds | 4 +---
cpu/mpc824x/u-boot.lds | 4 +---
cpu/mpc8260/u-boot.lds | 4 +---
cpu/mpc83xx/u-boot.lds | 4 +---
examples/mips.lds | 2 +-
examples/nios.lds | 2 +-
examples/nios2.lds | 3 +--
examples/sparc.lds | 2 +-
nand_spl/board/amcc/acadia/u-boot.lds | 2 +-
nand_spl/board/amcc/bamboo/u-boot.lds | 2 +-
nand_spl/board/amcc/canyonlands/u-boot.lds | 2 +-
nand_spl/board/amcc/kilauea/u-boot.lds | 2 +-
nand_spl/board/amcc/sequoia/u-boot.lds | 2 +-
nand_spl/board/freescale/mpc8313erdb/u-boot.lds | 2 +-
nand_spl/board/samsung/smdk6400/u-boot.lds | 2 +-
nand_spl/board/sheldon/simpc8313/u-boot.lds | 2 +-
onenand_ipl/board/apollon/u-boot.onenand.lds | 2 +-
333 files changed, 333 insertions(+), 738 deletions(-)
diff --git a/board/AtmarkTechno/suzaku/u-boot.lds b/board/AtmarkTechno/suzaku/u-boot.lds
index b38f648..5a08680 100644
--- a/board/AtmarkTechno/suzaku/u-boot.lds
+++ b/board/AtmarkTechno/suzaku/u-boot.lds
@@ -38,7 +38,7 @@ SECTIONS
.rodata ALIGN(0x4):
{
__rodata_start = .;
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
__rodata_end = .;
}
diff --git a/board/BuS/EB+MCF-EV123/u-boot.lds b/board/BuS/EB+MCF-EV123/u-boot.lds
index b22b332..3450793 100644
--- a/board/BuS/EB+MCF-EV123/u-boot.lds
+++ b/board/BuS/EB+MCF-EV123/u-boot.lds
@@ -73,8 +73,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/LEOX/elpt860/u-boot.lds b/board/LEOX/elpt860/u-boot.lds
index 9b9b980..c6b1f94 100644
--- a/board/LEOX/elpt860/u-boot.lds
+++ b/board/LEOX/elpt860/u-boot.lds
@@ -87,10 +87,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/MAI/AmigaOneG3SE/u-boot.lds b/board/MAI/AmigaOneG3SE/u-boot.lds
index e107b47..66440da 100644
--- a/board/MAI/AmigaOneG3SE/u-boot.lds
+++ b/board/MAI/AmigaOneG3SE/u-boot.lds
@@ -72,10 +72,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/Marvell/db64360/u-boot.lds b/board/Marvell/db64360/u-boot.lds
index ff2d8b7..632921a 100644
--- a/board/Marvell/db64360/u-boot.lds
+++ b/board/Marvell/db64360/u-boot.lds
@@ -70,10 +70,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/Marvell/db64460/u-boot.lds b/board/Marvell/db64460/u-boot.lds
index ff2d8b7..632921a 100644
--- a/board/Marvell/db64460/u-boot.lds
+++ b/board/Marvell/db64460/u-boot.lds
@@ -70,10 +70,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/RPXClassic/u-boot.lds b/board/RPXClassic/u-boot.lds
index 55cb5ec..faa1c6c 100644
--- a/board/RPXClassic/u-boot.lds
+++ b/board/RPXClassic/u-boot.lds
@@ -74,10 +74,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/RPXlite/u-boot.lds b/board/RPXlite/u-boot.lds
index 55cb5ec..faa1c6c 100644
--- a/board/RPXlite/u-boot.lds
+++ b/board/RPXlite/u-boot.lds
@@ -74,10 +74,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/RPXlite_dw/u-boot.lds b/board/RPXlite_dw/u-boot.lds
index 8d17894..7b7b83b 100644
--- a/board/RPXlite_dw/u-boot.lds
+++ b/board/RPXlite_dw/u-boot.lds
@@ -74,10 +74,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/RRvision/u-boot.lds b/board/RRvision/u-boot.lds
index 9fd77f8..17e6fa0 100644
--- a/board/RRvision/u-boot.lds
+++ b/board/RRvision/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/actux1/u-boot.lds b/board/actux1/u-boot.lds
index ccdb78e..836775f 100644
--- a/board/actux1/u-boot.lds
+++ b/board/actux1/u-boot.lds
@@ -43,7 +43,7 @@ SECTIONS
. = ALIGN (4);
.rodata : {
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN (4);
.data : {
diff --git a/board/actux2/u-boot.lds b/board/actux2/u-boot.lds
index 1131936..0752656 100644
--- a/board/actux2/u-boot.lds
+++ b/board/actux2/u-boot.lds
@@ -45,7 +45,7 @@ SECTIONS
. = ALIGN (4);
.rodata : {
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN (4);
diff --git a/board/actux3/u-boot.lds b/board/actux3/u-boot.lds
index e861955..a69e7db 100644
--- a/board/actux3/u-boot.lds
+++ b/board/actux3/u-boot.lds
@@ -45,7 +45,7 @@ SECTIONS
. = ALIGN (4);
.rodata : {
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN (4);
diff --git a/board/actux4/u-boot.lds b/board/actux4/u-boot.lds
index 0e1155a..10a5da9 100644
--- a/board/actux4/u-boot.lds
+++ b/board/actux4/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
. = ALIGN (4);
.rodata : {
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN (4);
diff --git a/board/adder/u-boot.lds b/board/adder/u-boot.lds
index d97c049..186dfe6 100644
--- a/board/adder/u-boot.lds
+++ b/board/adder/u-boot.lds
@@ -57,10 +57,8 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/ads5121/u-boot.lds b/board/ads5121/u-boot.lds
index a059033..dae3269 100644
--- a/board/ads5121/u-boot.lds
+++ b/board/ads5121/u-boot.lds
@@ -54,10 +54,8 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/altera/dk1c20/u-boot.lds b/board/altera/dk1c20/u-boot.lds
index be77952..98ee8f8 100644
--- a/board/altera/dk1c20/u-boot.lds
+++ b/board/altera/dk1c20/u-boot.lds
@@ -38,7 +38,7 @@ SECTIONS
. = ALIGN(4);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
__rodata_end = .;
diff --git a/board/altera/dk1s10/u-boot.lds b/board/altera/dk1s10/u-boot.lds
index be77952..98ee8f8 100644
--- a/board/altera/dk1s10/u-boot.lds
+++ b/board/altera/dk1s10/u-boot.lds
@@ -38,7 +38,7 @@ SECTIONS
. = ALIGN(4);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
__rodata_end = .;
diff --git a/board/altera/ep1c20/u-boot.lds b/board/altera/ep1c20/u-boot.lds
index 73dfe9d..e2eb3aa 100644
--- a/board/altera/ep1c20/u-boot.lds
+++ b/board/altera/ep1c20/u-boot.lds
@@ -34,8 +34,7 @@ SECTIONS
*(.text)
*(.text.*)
*(.gnu.linkonce.t*)
- *(.rodata)
- *(.rodata.*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
*(.gnu.linkonce.r*)
}
. = ALIGN (4);
diff --git a/board/altera/ep1s10/u-boot.lds b/board/altera/ep1s10/u-boot.lds
index 73dfe9d..e2eb3aa 100644
--- a/board/altera/ep1s10/u-boot.lds
+++ b/board/altera/ep1s10/u-boot.lds
@@ -34,8 +34,7 @@ SECTIONS
*(.text)
*(.text.*)
*(.gnu.linkonce.t*)
- *(.rodata)
- *(.rodata.*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
*(.gnu.linkonce.r*)
}
. = ALIGN (4);
diff --git a/board/altera/ep1s40/u-boot.lds b/board/altera/ep1s40/u-boot.lds
index 73dfe9d..e2eb3aa 100644
--- a/board/altera/ep1s40/u-boot.lds
+++ b/board/altera/ep1s40/u-boot.lds
@@ -34,8 +34,7 @@ SECTIONS
*(.text)
*(.text.*)
*(.gnu.linkonce.t*)
- *(.rodata)
- *(.rodata.*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
*(.gnu.linkonce.r*)
}
. = ALIGN (4);
diff --git a/board/amcc/acadia/u-boot-nand.lds b/board/amcc/acadia/u-boot-nand.lds
index 799c28f..b769e94 100644
--- a/board/amcc/acadia/u-boot-nand.lds
+++ b/board/amcc/acadia/u-boot-nand.lds
@@ -69,9 +69,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/acadia/u-boot.lds b/board/amcc/acadia/u-boot.lds
index fd5f3df..b7aa160 100644
--- a/board/amcc/acadia/u-boot.lds
+++ b/board/amcc/acadia/u-boot.lds
@@ -70,10 +70,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/bamboo/u-boot-nand.lds b/board/amcc/bamboo/u-boot-nand.lds
index 799c28f..b769e94 100644
--- a/board/amcc/bamboo/u-boot-nand.lds
+++ b/board/amcc/bamboo/u-boot-nand.lds
@@ -69,9 +69,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/bamboo/u-boot.lds b/board/amcc/bamboo/u-boot.lds
index 113418d..997d844 100644
--- a/board/amcc/bamboo/u-boot.lds
+++ b/board/amcc/bamboo/u-boot.lds
@@ -77,10 +77,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/bubinga/u-boot.lds b/board/amcc/bubinga/u-boot.lds
index fd5f3df..b7aa160 100644
--- a/board/amcc/bubinga/u-boot.lds
+++ b/board/amcc/bubinga/u-boot.lds
@@ -70,10 +70,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/canyonlands/u-boot-nand.lds b/board/amcc/canyonlands/u-boot-nand.lds
index 9f13d03..d18c536 100644
--- a/board/amcc/canyonlands/u-boot-nand.lds
+++ b/board/amcc/canyonlands/u-boot-nand.lds
@@ -69,9 +69,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/canyonlands/u-boot.lds b/board/amcc/canyonlands/u-boot.lds
index f0db0b2..b768532 100644
--- a/board/amcc/canyonlands/u-boot.lds
+++ b/board/amcc/canyonlands/u-boot.lds
@@ -76,9 +76,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/ebony/u-boot.lds b/board/amcc/ebony/u-boot.lds
index 17d1ba8..d569a14 100644
--- a/board/amcc/ebony/u-boot.lds
+++ b/board/amcc/ebony/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/katmai/u-boot.lds b/board/amcc/katmai/u-boot.lds
index 464bc6e..71a8b69 100644
--- a/board/amcc/katmai/u-boot.lds
+++ b/board/amcc/katmai/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/kilauea/u-boot-nand.lds b/board/amcc/kilauea/u-boot-nand.lds
index 799c28f..b769e94 100644
--- a/board/amcc/kilauea/u-boot-nand.lds
+++ b/board/amcc/kilauea/u-boot-nand.lds
@@ -69,9 +69,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/kilauea/u-boot.lds b/board/amcc/kilauea/u-boot.lds
index 0ac21e3..a44613d 100644
--- a/board/amcc/kilauea/u-boot.lds
+++ b/board/amcc/kilauea/u-boot.lds
@@ -71,9 +71,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/luan/u-boot.lds b/board/amcc/luan/u-boot.lds
index b66c768..7c1bc82 100644
--- a/board/amcc/luan/u-boot.lds
+++ b/board/amcc/luan/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/makalu/u-boot.lds b/board/amcc/makalu/u-boot.lds
index 0ac21e3..a44613d 100644
--- a/board/amcc/makalu/u-boot.lds
+++ b/board/amcc/makalu/u-boot.lds
@@ -71,9 +71,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/ocotea/u-boot.lds b/board/amcc/ocotea/u-boot.lds
index 8f61873..95cac85 100644
--- a/board/amcc/ocotea/u-boot.lds
+++ b/board/amcc/ocotea/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/redwood/u-boot.lds b/board/amcc/redwood/u-boot.lds
index 8362c9b..32eff52 100644
--- a/board/amcc/redwood/u-boot.lds
+++ b/board/amcc/redwood/u-boot.lds
@@ -80,10 +80,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/sequoia/u-boot-nand.lds b/board/amcc/sequoia/u-boot-nand.lds
index 6e1e169..b580e0b 100644
--- a/board/amcc/sequoia/u-boot-nand.lds
+++ b/board/amcc/sequoia/u-boot-nand.lds
@@ -69,9 +69,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/sequoia/u-boot.lds b/board/amcc/sequoia/u-boot.lds
index 05152b7..7798722 100644
--- a/board/amcc/sequoia/u-boot.lds
+++ b/board/amcc/sequoia/u-boot.lds
@@ -75,9 +75,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/taihu/u-boot.lds b/board/amcc/taihu/u-boot.lds
index fd5f3df..b7aa160 100644
--- a/board/amcc/taihu/u-boot.lds
+++ b/board/amcc/taihu/u-boot.lds
@@ -70,10 +70,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/taishan/u-boot.lds b/board/amcc/taishan/u-boot.lds
index e620808..75b7fc9 100644
--- a/board/amcc/taishan/u-boot.lds
+++ b/board/amcc/taishan/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/walnut/u-boot.lds b/board/amcc/walnut/u-boot.lds
index c9472f9..f6cbe13 100644
--- a/board/amcc/walnut/u-boot.lds
+++ b/board/amcc/walnut/u-boot.lds
@@ -70,10 +70,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/yosemite/u-boot.lds b/board/amcc/yosemite/u-boot.lds
index ccb510e..e31f071 100644
--- a/board/amcc/yosemite/u-boot.lds
+++ b/board/amcc/yosemite/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amcc/yucca/u-boot.lds b/board/amcc/yucca/u-boot.lds
index adfa28b..60135b9 100644
--- a/board/amcc/yucca/u-boot.lds
+++ b/board/amcc/yucca/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/amirix/ap1000/u-boot.lds b/board/amirix/ap1000/u-boot.lds
index 27a6f8b..a4c48d6 100644
--- a/board/amirix/ap1000/u-boot.lds
+++ b/board/amirix/ap1000/u-boot.lds
@@ -79,10 +79,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/apollon/u-boot.lds b/board/apollon/u-boot.lds
index 0aeb437..7fb7e04 100644
--- a/board/apollon/u-boot.lds
+++ b/board/apollon/u-boot.lds
@@ -43,7 +43,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/armadillo/u-boot.lds b/board/armadillo/u-boot.lds
index 49d18f7..cb5a3ba 100644
--- a/board/armadillo/u-boot.lds
+++ b/board/armadillo/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/armltd/versatile/u-boot.lds b/board/armltd/versatile/u-boot.lds
index 6e6e29b..48c2613 100644
--- a/board/armltd/versatile/u-boot.lds
+++ b/board/armltd/versatile/u-boot.lds
@@ -33,7 +33,7 @@ SECTIONS
cpu/arm926ejs/start.o (.text)
*(.text)
}
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
. = ALIGN(4);
diff --git a/board/assabet/u-boot.lds b/board/assabet/u-boot.lds
index 5507dd3..bd97436 100644
--- a/board/assabet/u-boot.lds
+++ b/board/assabet/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/atmel/at91rm9200dk/u-boot.lds b/board/atmel/at91rm9200dk/u-boot.lds
index 987b07d..33363c2 100644
--- a/board/atmel/at91rm9200dk/u-boot.lds
+++ b/board/atmel/at91rm9200dk/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/atmel/atngw100/u-boot.lds b/board/atmel/atngw100/u-boot.lds
index e736adf..a7243f2 100644
--- a/board/atmel/atngw100/u-boot.lds
+++ b/board/atmel/atngw100/u-boot.lds
@@ -36,8 +36,7 @@ SECTIONS
_etext = .;
.rodata : {
- *(.rodata)
- *(.rodata.*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN(8);
diff --git a/board/atmel/atstk1000/u-boot.lds b/board/atmel/atstk1000/u-boot.lds
index 0d3b19c..86ef939 100644
--- a/board/atmel/atstk1000/u-boot.lds
+++ b/board/atmel/atstk1000/u-boot.lds
@@ -36,8 +36,7 @@ SECTIONS
_etext = .;
.rodata : {
- *(.rodata)
- *(.rodata.*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN(8);
diff --git a/board/atum8548/u-boot.lds b/board/atum8548/u-boot.lds
index 650cb9e..3067846 100644
--- a/board/atum8548/u-boot.lds
+++ b/board/atum8548/u-boot.lds
@@ -78,10 +78,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/c2mon/u-boot.lds b/board/c2mon/u-boot.lds
index ef9a251..61650a8 100644
--- a/board/c2mon/u-boot.lds
+++ b/board/c2mon/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/cerf250/u-boot.lds b/board/cerf250/u-boot.lds
index 7cf9fdf..a077bc5 100644
--- a/board/cerf250/u-boot.lds
+++ b/board/cerf250/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/cm4008/u-boot.lds b/board/cm4008/u-boot.lds
index e1febe1..e96c45f 100644
--- a/board/cm4008/u-boot.lds
+++ b/board/cm4008/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/cm41xx/u-boot.lds b/board/cm41xx/u-boot.lds
index e1febe1..e96c45f 100644
--- a/board/cm41xx/u-boot.lds
+++ b/board/cm41xx/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/cm5200/u-boot.lds b/board/cm5200/u-boot.lds
index 7bd6d4d..3a72bd3 100644
--- a/board/cm5200/u-boot.lds
+++ b/board/cm5200/u-boot.lds
@@ -55,10 +55,8 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/cmc_pu2/u-boot.lds b/board/cmc_pu2/u-boot.lds
index 987b07d..33363c2 100644
--- a/board/cmc_pu2/u-boot.lds
+++ b/board/cmc_pu2/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/cobra5272/u-boot.lds b/board/cobra5272/u-boot.lds
index bed1177..7e716bb 100644
--- a/board/cobra5272/u-boot.lds
+++ b/board/cobra5272/u-boot.lds
@@ -72,8 +72,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/cogent/u-boot.lds b/board/cogent/u-boot.lds
index 5fd9f79..3ea6f1c 100644
--- a/board/cogent/u-boot.lds
+++ b/board/cogent/u-boot.lds
@@ -61,10 +61,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/cradle/u-boot.lds b/board/cradle/u-boot.lds
index 7cf9fdf..a077bc5 100644
--- a/board/cradle/u-boot.lds
+++ b/board/cradle/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/cray/L1/u-boot.lds b/board/cray/L1/u-boot.lds
index d278866..86c8ecb 100644
--- a/board/cray/L1/u-boot.lds
+++ b/board/cray/L1/u-boot.lds
@@ -85,10 +85,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/csb226/u-boot.lds b/board/csb226/u-boot.lds
index 7cf9fdf..a077bc5 100644
--- a/board/csb226/u-boot.lds
+++ b/board/csb226/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/csb272/u-boot.lds b/board/csb272/u-boot.lds
index af87188..0aa6f8f 100644
--- a/board/csb272/u-boot.lds
+++ b/board/csb272/u-boot.lds
@@ -86,10 +86,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/csb472/u-boot.lds b/board/csb472/u-boot.lds
index 3736377..565e021 100644
--- a/board/csb472/u-boot.lds
+++ b/board/csb472/u-boot.lds
@@ -86,10 +86,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/csb637/u-boot.lds b/board/csb637/u-boot.lds
index d0666ac..3eae0e2 100644
--- a/board/csb637/u-boot.lds
+++ b/board/csb637/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/dave/B2/u-boot.lds b/board/dave/B2/u-boot.lds
index a6fc6d7..1690b6e 100644
--- a/board/dave/B2/u-boot.lds
+++ b/board/dave/B2/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/dave/PPChameleonEVB/u-boot.lds b/board/dave/PPChameleonEVB/u-boot.lds
index d3e6df9..b36827d 100644
--- a/board/dave/PPChameleonEVB/u-boot.lds
+++ b/board/dave/PPChameleonEVB/u-boot.lds
@@ -80,10 +80,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/davinci/dvevm/u-boot.lds b/board/davinci/dvevm/u-boot.lds
index d86eb36..4d50f2c 100644
--- a/board/davinci/dvevm/u-boot.lds
+++ b/board/davinci/dvevm/u-boot.lds
@@ -34,7 +34,7 @@ SECTIONS
*(.text)
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
. = ALIGN(4);
diff --git a/board/davinci/schmoogie/u-boot.lds b/board/davinci/schmoogie/u-boot.lds
index d86eb36..4d50f2c 100644
--- a/board/davinci/schmoogie/u-boot.lds
+++ b/board/davinci/schmoogie/u-boot.lds
@@ -34,7 +34,7 @@ SECTIONS
*(.text)
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
. = ALIGN(4);
diff --git a/board/davinci/sffsdr/u-boot.lds b/board/davinci/sffsdr/u-boot.lds
index d86eb36..4d50f2c 100644
--- a/board/davinci/sffsdr/u-boot.lds
+++ b/board/davinci/sffsdr/u-boot.lds
@@ -34,7 +34,7 @@ SECTIONS
*(.text)
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
. = ALIGN(4);
diff --git a/board/davinci/sonata/u-boot.lds b/board/davinci/sonata/u-boot.lds
index d86eb36..4d50f2c 100644
--- a/board/davinci/sonata/u-boot.lds
+++ b/board/davinci/sonata/u-boot.lds
@@ -34,7 +34,7 @@ SECTIONS
*(.text)
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
. = ALIGN(4);
diff --git a/board/dbau1x00/u-boot.lds b/board/dbau1x00/u-boot.lds
index da20de1..9a6cd1b 100644
--- a/board/dbau1x00/u-boot.lds
+++ b/board/dbau1x00/u-boot.lds
@@ -38,7 +38,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/delta/u-boot.lds b/board/delta/u-boot.lds
index 7cf9fdf..a077bc5 100644
--- a/board/delta/u-boot.lds
+++ b/board/delta/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/dnp1110/u-boot.lds b/board/dnp1110/u-boot.lds
index fce2533..13b7bb7 100644
--- a/board/dnp1110/u-boot.lds
+++ b/board/dnp1110/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/eNET/u-boot.lds b/board/eNET/u-boot.lds
index 671305a..4ea424d 100644
--- a/board/eNET/u-boot.lds
+++ b/board/eNET/u-boot.lds
@@ -31,7 +31,7 @@ SECTIONS
.text : { *(.text); }
. = ALIGN(4);
- .rodata : { *(.rodata) *(.rodata.str1.1) *(.rodata.str1.32) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
_i386boot_text_size = SIZEOF(.text) + SIZEOF(.rodata);
diff --git a/board/earthlcd/favr-32-ezkit/u-boot.lds b/board/earthlcd/favr-32-ezkit/u-boot.lds
index ad056b3..0d413a0 100644
--- a/board/earthlcd/favr-32-ezkit/u-boot.lds
+++ b/board/earthlcd/favr-32-ezkit/u-boot.lds
@@ -34,8 +34,7 @@ SECTIONS
_etext = .;
.rodata : {
- *(.rodata)
- *(.rodata.*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN(8);
diff --git a/board/eltec/bab7xx/u-boot.lds b/board/eltec/bab7xx/u-boot.lds
index ff2d8b7..632921a 100644
--- a/board/eltec/bab7xx/u-boot.lds
+++ b/board/eltec/bab7xx/u-boot.lds
@@ -70,10 +70,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/eltec/elppc/u-boot.lds b/board/eltec/elppc/u-boot.lds
index ff2d8b7..632921a 100644
--- a/board/eltec/elppc/u-boot.lds
+++ b/board/eltec/elppc/u-boot.lds
@@ -70,10 +70,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/eltec/mhpc/u-boot.lds b/board/eltec/mhpc/u-boot.lds
index 759b412..ee74eb9 100644
--- a/board/eltec/mhpc/u-boot.lds
+++ b/board/eltec/mhpc/u-boot.lds
@@ -63,10 +63,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/emk/top860/u-boot.lds b/board/emk/top860/u-boot.lds
index da23fff..b4e093c 100644
--- a/board/emk/top860/u-boot.lds
+++ b/board/emk/top860/u-boot.lds
@@ -62,10 +62,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/ep7312/u-boot.lds b/board/ep7312/u-boot.lds
index a79bb8c..8c9f624 100644
--- a/board/ep7312/u-boot.lds
+++ b/board/ep7312/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/ep88x/u-boot.lds b/board/ep88x/u-boot.lds
index 1b6e417..dd62e58 100644
--- a/board/ep88x/u-boot.lds
+++ b/board/ep88x/u-boot.lds
@@ -57,9 +57,7 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/eric/u-boot.lds b/board/eric/u-boot.lds
index bf46e18..e62896f 100644
--- a/board/eric/u-boot.lds
+++ b/board/eric/u-boot.lds
@@ -85,10 +85,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/adciop/u-boot.lds b/board/esd/adciop/u-boot.lds
index e918163..497eb1f 100644
--- a/board/esd/adciop/u-boot.lds
+++ b/board/esd/adciop/u-boot.lds
@@ -71,10 +71,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/apc405/u-boot.lds b/board/esd/apc405/u-boot.lds
index 9697cc6..9af2c09 100644
--- a/board/esd/apc405/u-boot.lds
+++ b/board/esd/apc405/u-boot.lds
@@ -82,10 +82,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/ar405/u-boot.lds b/board/esd/ar405/u-boot.lds
index 2c1cf92..d8fa93d 100644
--- a/board/esd/ar405/u-boot.lds
+++ b/board/esd/ar405/u-boot.lds
@@ -95,10 +95,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/ash405/u-boot.lds b/board/esd/ash405/u-boot.lds
index e2e2512..5308acb 100644
--- a/board/esd/ash405/u-boot.lds
+++ b/board/esd/ash405/u-boot.lds
@@ -82,10 +82,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/canbt/u-boot.lds b/board/esd/canbt/u-boot.lds
index 74280e6..e619ecf 100644
--- a/board/esd/canbt/u-boot.lds
+++ b/board/esd/canbt/u-boot.lds
@@ -93,10 +93,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/cms700/u-boot.lds b/board/esd/cms700/u-boot.lds
index 9697cc6..9af2c09 100644
--- a/board/esd/cms700/u-boot.lds
+++ b/board/esd/cms700/u-boot.lds
@@ -82,10 +82,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/cpci2dp/u-boot.lds b/board/esd/cpci2dp/u-boot.lds
index 9697cc6..9af2c09 100644
--- a/board/esd/cpci2dp/u-boot.lds
+++ b/board/esd/cpci2dp/u-boot.lds
@@ -82,10 +82,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/cpci405/u-boot.lds b/board/esd/cpci405/u-boot.lds
index 5d59761..8c01016 100644
--- a/board/esd/cpci405/u-boot.lds
+++ b/board/esd/cpci405/u-boot.lds
@@ -67,10 +67,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/cpci750/u-boot.lds b/board/esd/cpci750/u-boot.lds
index ff2d8b7..632921a 100644
--- a/board/esd/cpci750/u-boot.lds
+++ b/board/esd/cpci750/u-boot.lds
@@ -70,10 +70,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/cpciiser4/u-boot.lds b/board/esd/cpciiser4/u-boot.lds
index 9697cc6..9af2c09 100644
--- a/board/esd/cpciiser4/u-boot.lds
+++ b/board/esd/cpciiser4/u-boot.lds
@@ -82,10 +82,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/dasa_sim/u-boot.lds b/board/esd/dasa_sim/u-boot.lds
index 6acf7b8..02e29bb 100644
--- a/board/esd/dasa_sim/u-boot.lds
+++ b/board/esd/dasa_sim/u-boot.lds
@@ -96,10 +96,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/dp405/u-boot.lds b/board/esd/dp405/u-boot.lds
index d8fbea3..9beb5b0 100644
--- a/board/esd/dp405/u-boot.lds
+++ b/board/esd/dp405/u-boot.lds
@@ -83,10 +83,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/du405/u-boot.lds b/board/esd/du405/u-boot.lds
index 858ae61..8c57905 100644
--- a/board/esd/du405/u-boot.lds
+++ b/board/esd/du405/u-boot.lds
@@ -82,10 +82,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/du440/u-boot.lds b/board/esd/du440/u-boot.lds
index 05152b7..7798722 100644
--- a/board/esd/du440/u-boot.lds
+++ b/board/esd/du440/u-boot.lds
@@ -75,9 +75,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/hh405/u-boot.lds b/board/esd/hh405/u-boot.lds
index 9697cc6..9af2c09 100644
--- a/board/esd/hh405/u-boot.lds
+++ b/board/esd/hh405/u-boot.lds
@@ -82,10 +82,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/hub405/u-boot.lds b/board/esd/hub405/u-boot.lds
index 6908106..f51fc56 100644
--- a/board/esd/hub405/u-boot.lds
+++ b/board/esd/hub405/u-boot.lds
@@ -83,10 +83,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/ocrtc/u-boot.lds b/board/esd/ocrtc/u-boot.lds
index 1fb754c..1b50b6d 100644
--- a/board/esd/ocrtc/u-boot.lds
+++ b/board/esd/ocrtc/u-boot.lds
@@ -82,10 +82,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/pci405/u-boot.lds b/board/esd/pci405/u-boot.lds
index 9697cc6..9af2c09 100644
--- a/board/esd/pci405/u-boot.lds
+++ b/board/esd/pci405/u-boot.lds
@@ -82,10 +82,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/plu405/u-boot.lds b/board/esd/plu405/u-boot.lds
index fd5f3df..b7aa160 100644
--- a/board/esd/plu405/u-boot.lds
+++ b/board/esd/plu405/u-boot.lds
@@ -70,10 +70,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/pmc405/u-boot.lds b/board/esd/pmc405/u-boot.lds
index ca615f5..30c3ad9 100644
--- a/board/esd/pmc405/u-boot.lds
+++ b/board/esd/pmc405/u-boot.lds
@@ -82,10 +82,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/pmc440/u-boot-nand.lds b/board/esd/pmc440/u-boot-nand.lds
index 6e1e169..b580e0b 100644
--- a/board/esd/pmc440/u-boot-nand.lds
+++ b/board/esd/pmc440/u-boot-nand.lds
@@ -69,9 +69,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/pmc440/u-boot.lds b/board/esd/pmc440/u-boot.lds
index 05152b7..7798722 100644
--- a/board/esd/pmc440/u-boot.lds
+++ b/board/esd/pmc440/u-boot.lds
@@ -75,9 +75,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/tasreg/u-boot.lds b/board/esd/tasreg/u-boot.lds
index aec7e9b..e3230b9 100644
--- a/board/esd/tasreg/u-boot.lds
+++ b/board/esd/tasreg/u-boot.lds
@@ -72,10 +72,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/voh405/u-boot.lds b/board/esd/voh405/u-boot.lds
index d8fbea3..9beb5b0 100644
--- a/board/esd/voh405/u-boot.lds
+++ b/board/esd/voh405/u-boot.lds
@@ -83,10 +83,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/vom405/u-boot.lds b/board/esd/vom405/u-boot.lds
index c9472f9..f6cbe13 100644
--- a/board/esd/vom405/u-boot.lds
+++ b/board/esd/vom405/u-boot.lds
@@ -70,10 +70,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esd/wuh405/u-boot.lds b/board/esd/wuh405/u-boot.lds
index e2e2512..5308acb 100644
--- a/board/esd/wuh405/u-boot.lds
+++ b/board/esd/wuh405/u-boot.lds
@@ -82,10 +82,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/esteem192e/u-boot.lds b/board/esteem192e/u-boot.lds
index c4e17d6..57aabed 100644
--- a/board/esteem192e/u-boot.lds
+++ b/board/esteem192e/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/etx094/u-boot.lds b/board/etx094/u-boot.lds
index 340825e..eb3d487 100644
--- a/board/etx094/u-boot.lds
+++ b/board/etx094/u-boot.lds
@@ -75,10 +75,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/evb4510/u-boot.lds b/board/evb4510/u-boot.lds
index a435466..b72e126 100644
--- a/board/evb4510/u-boot.lds
+++ b/board/evb4510/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/evb64260/u-boot.lds b/board/evb64260/u-boot.lds
index ff2d8b7..632921a 100644
--- a/board/evb64260/u-boot.lds
+++ b/board/evb64260/u-boot.lds
@@ -70,10 +70,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/exbitgen/u-boot.lds b/board/exbitgen/u-boot.lds
index d76b97e..2798dc8 100644
--- a/board/exbitgen/u-boot.lds
+++ b/board/exbitgen/u-boot.lds
@@ -84,10 +84,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/fads/u-boot.lds b/board/fads/u-boot.lds
index 194ca69..b39ef14 100644
--- a/board/fads/u-boot.lds
+++ b/board/fads/u-boot.lds
@@ -63,10 +63,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/flagadm/u-boot.lds b/board/flagadm/u-boot.lds
index f36259a..1c8180a 100644
--- a/board/flagadm/u-boot.lds
+++ b/board/flagadm/u-boot.lds
@@ -62,10 +62,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/m5249evb/u-boot.lds b/board/freescale/m5249evb/u-boot.lds
index aec7e9b..e3230b9 100644
--- a/board/freescale/m5249evb/u-boot.lds
+++ b/board/freescale/m5249evb/u-boot.lds
@@ -72,10 +72,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/m5253demo/u-boot.lds b/board/freescale/m5253demo/u-boot.lds
index a295764..6cb5ee0 100644
--- a/board/freescale/m5253demo/u-boot.lds
+++ b/board/freescale/m5253demo/u-boot.lds
@@ -73,8 +73,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/m5253evbe/u-boot.lds b/board/freescale/m5253evbe/u-boot.lds
index 239cf95..132fccf 100644
--- a/board/freescale/m5253evbe/u-boot.lds
+++ b/board/freescale/m5253evbe/u-boot.lds
@@ -72,8 +72,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/m5271evb/u-boot.lds b/board/freescale/m5271evb/u-boot.lds
index 0bc7fa1..00c1f2a 100644
--- a/board/freescale/m5271evb/u-boot.lds
+++ b/board/freescale/m5271evb/u-boot.lds
@@ -73,8 +73,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/m5272c3/u-boot.lds b/board/freescale/m5272c3/u-boot.lds
index e5c7b67..9d20b22 100644
--- a/board/freescale/m5272c3/u-boot.lds
+++ b/board/freescale/m5272c3/u-boot.lds
@@ -72,8 +72,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/m5275evb/u-boot.lds b/board/freescale/m5275evb/u-boot.lds
index a3e03d5..daf8724 100644
--- a/board/freescale/m5275evb/u-boot.lds
+++ b/board/freescale/m5275evb/u-boot.lds
@@ -71,8 +71,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/m5282evb/u-boot.lds b/board/freescale/m5282evb/u-boot.lds
index 707b228..dc18b7d 100644
--- a/board/freescale/m5282evb/u-boot.lds
+++ b/board/freescale/m5282evb/u-boot.lds
@@ -72,8 +72,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/m53017evb/u-boot.lds b/board/freescale/m53017evb/u-boot.lds
index dc53141..c79d06c 100644
--- a/board/freescale/m53017evb/u-boot.lds
+++ b/board/freescale/m53017evb/u-boot.lds
@@ -72,8 +72,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/m5329evb/u-boot.lds b/board/freescale/m5329evb/u-boot.lds
index c9da922..af31098 100644
--- a/board/freescale/m5329evb/u-boot.lds
+++ b/board/freescale/m5329evb/u-boot.lds
@@ -72,8 +72,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/m5373evb/u-boot.lds b/board/freescale/m5373evb/u-boot.lds
index fcf1ff1..dff74b6 100644
--- a/board/freescale/m5373evb/u-boot.lds
+++ b/board/freescale/m5373evb/u-boot.lds
@@ -72,8 +72,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/m547xevb/u-boot.lds b/board/freescale/m547xevb/u-boot.lds
index c25c8dc..a3014bd 100644
--- a/board/freescale/m547xevb/u-boot.lds
+++ b/board/freescale/m547xevb/u-boot.lds
@@ -71,8 +71,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/m548xevb/u-boot.lds b/board/freescale/m548xevb/u-boot.lds
index c25c8dc..a3014bd 100644
--- a/board/freescale/m548xevb/u-boot.lds
+++ b/board/freescale/m548xevb/u-boot.lds
@@ -71,8 +71,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/mpc7448hpc2/u-boot.lds b/board/freescale/mpc7448hpc2/u-boot.lds
index f3f6c54..cd11f39 100644
--- a/board/freescale/mpc7448hpc2/u-boot.lds
+++ b/board/freescale/mpc7448hpc2/u-boot.lds
@@ -70,9 +70,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/mpc8536ds/u-boot.lds b/board/freescale/mpc8536ds/u-boot.lds
index 901f633..f4ff756 100644
--- a/board/freescale/mpc8536ds/u-boot.lds
+++ b/board/freescale/mpc8536ds/u-boot.lds
@@ -65,10 +65,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
} :text
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/mpc8540ads/u-boot.lds b/board/freescale/mpc8540ads/u-boot.lds
index 515d320..41ff3f3 100644
--- a/board/freescale/mpc8540ads/u-boot.lds
+++ b/board/freescale/mpc8540ads/u-boot.lds
@@ -68,10 +68,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
} :text
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/mpc8541cds/u-boot.lds b/board/freescale/mpc8541cds/u-boot.lds
index d728d8b..35d5ff2 100644
--- a/board/freescale/mpc8541cds/u-boot.lds
+++ b/board/freescale/mpc8541cds/u-boot.lds
@@ -65,10 +65,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
} :text
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/mpc8544ds/u-boot.lds b/board/freescale/mpc8544ds/u-boot.lds
index a05ece5..159642d 100644
--- a/board/freescale/mpc8544ds/u-boot.lds
+++ b/board/freescale/mpc8544ds/u-boot.lds
@@ -65,10 +65,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
} :text
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/mpc8548cds/u-boot.lds b/board/freescale/mpc8548cds/u-boot.lds
index d4a2f72..c363fe7 100644
--- a/board/freescale/mpc8548cds/u-boot.lds
+++ b/board/freescale/mpc8548cds/u-boot.lds
@@ -65,10 +65,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
} :text
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/mpc8555cds/u-boot.lds b/board/freescale/mpc8555cds/u-boot.lds
index 11885e8..d6584a5 100644
--- a/board/freescale/mpc8555cds/u-boot.lds
+++ b/board/freescale/mpc8555cds/u-boot.lds
@@ -65,10 +65,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
} :text
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/mpc8560ads/u-boot.lds b/board/freescale/mpc8560ads/u-boot.lds
index 515d320..41ff3f3 100644
--- a/board/freescale/mpc8560ads/u-boot.lds
+++ b/board/freescale/mpc8560ads/u-boot.lds
@@ -68,10 +68,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
} :text
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/mpc8568mds/u-boot.lds b/board/freescale/mpc8568mds/u-boot.lds
index ad96410..ffc1888 100644
--- a/board/freescale/mpc8568mds/u-boot.lds
+++ b/board/freescale/mpc8568mds/u-boot.lds
@@ -65,10 +65,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
} :text
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/mpc8572ds/u-boot.lds b/board/freescale/mpc8572ds/u-boot.lds
index a05ece5..159642d 100644
--- a/board/freescale/mpc8572ds/u-boot.lds
+++ b/board/freescale/mpc8572ds/u-boot.lds
@@ -65,10 +65,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
} :text
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/mpc8610hpcd/u-boot.lds b/board/freescale/mpc8610hpcd/u-boot.lds
index 4127492..5cc88ae 100644
--- a/board/freescale/mpc8610hpcd/u-boot.lds
+++ b/board/freescale/mpc8610hpcd/u-boot.lds
@@ -68,10 +68,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/mpc8641hpcn/u-boot.lds b/board/freescale/mpc8641hpcn/u-boot.lds
index 6c9da1f..e188722 100644
--- a/board/freescale/mpc8641hpcn/u-boot.lds
+++ b/board/freescale/mpc8641hpcn/u-boot.lds
@@ -69,10 +69,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/freescale/mx31ads/u-boot.lds b/board/freescale/mx31ads/u-boot.lds
index e682f30..079184e 100644
--- a/board/freescale/mx31ads/u-boot.lds
+++ b/board/freescale/mx31ads/u-boot.lds
@@ -50,7 +50,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/g2000/u-boot.lds b/board/g2000/u-boot.lds
index d8fbea3..9beb5b0 100644
--- a/board/g2000/u-boot.lds
+++ b/board/g2000/u-boot.lds
@@ -83,10 +83,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/gaisler/gr_cpci_ax2000/u-boot.lds b/board/gaisler/gr_cpci_ax2000/u-boot.lds
index a087631..d5d7842 100644
--- a/board/gaisler/gr_cpci_ax2000/u-boot.lds
+++ b/board/gaisler/gr_cpci_ax2000/u-boot.lds
@@ -77,10 +77,8 @@ SECTIONS
*(.gnu.warning)
/* *(.got1)*/
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.*)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN(4);
_etext = .;
diff --git a/board/gaisler/gr_ep2s60/u-boot.lds b/board/gaisler/gr_ep2s60/u-boot.lds
index e461a36..99aa0ad 100644
--- a/board/gaisler/gr_ep2s60/u-boot.lds
+++ b/board/gaisler/gr_ep2s60/u-boot.lds
@@ -77,10 +77,8 @@ SECTIONS
*(.gnu.warning)
/* *(.got1)*/
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.*)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN(4);
_etext = .;
diff --git a/board/gaisler/gr_xc3s_1500/u-boot.lds b/board/gaisler/gr_xc3s_1500/u-boot.lds
index ddd27d4..3b13190 100644
--- a/board/gaisler/gr_xc3s_1500/u-boot.lds
+++ b/board/gaisler/gr_xc3s_1500/u-boot.lds
@@ -77,10 +77,8 @@ SECTIONS
*(.gnu.warning)
/* *(.got1)*/
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.*)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN(4);
_etext = .;
diff --git a/board/gaisler/grsim/u-boot.lds b/board/gaisler/grsim/u-boot.lds
index a9cc7ca..0fa6627 100644
--- a/board/gaisler/grsim/u-boot.lds
+++ b/board/gaisler/grsim/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
*(.gnu.warning)
/* *(.got1)*/
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.*)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN(4);
_etext = .;
diff --git a/board/gaisler/grsim_leon2/u-boot.lds b/board/gaisler/grsim_leon2/u-boot.lds
index b3462d4..c5311a6 100644
--- a/board/gaisler/grsim_leon2/u-boot.lds
+++ b/board/gaisler/grsim_leon2/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
*(.gnu.warning)
/* *(.got1)*/
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.*)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN(4);
_etext = .;
diff --git a/board/gcplus/u-boot.lds b/board/gcplus/u-boot.lds
index ab7f76b..65b8167 100644
--- a/board/gcplus/u-boot.lds
+++ b/board/gcplus/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/gdsys/gdppc440etx/u-boot.lds b/board/gdsys/gdppc440etx/u-boot.lds
index 1df817b..77f0aae 100644
--- a/board/gdsys/gdppc440etx/u-boot.lds
+++ b/board/gdsys/gdppc440etx/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/gdsys/neo/u-boot.lds b/board/gdsys/neo/u-boot.lds
index d803625..b95eb5c 100644
--- a/board/gdsys/neo/u-boot.lds
+++ b/board/gdsys/neo/u-boot.lds
@@ -67,9 +67,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/gen860t/u-boot-flashenv.lds b/board/gen860t/u-boot-flashenv.lds
index 6c8346a..9785639 100644
--- a/board/gen860t/u-boot-flashenv.lds
+++ b/board/gen860t/u-boot-flashenv.lds
@@ -64,9 +64,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/gen860t/u-boot.lds b/board/gen860t/u-boot.lds
index cab7a10..fbe3c70 100644
--- a/board/gen860t/u-boot.lds
+++ b/board/gen860t/u-boot.lds
@@ -63,10 +63,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/genietv/u-boot.lds b/board/genietv/u-boot.lds
index 3c19d19..ee0b719 100644
--- a/board/genietv/u-boot.lds
+++ b/board/genietv/u-boot.lds
@@ -72,10 +72,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/gth/u-boot.lds b/board/gth/u-boot.lds
index d5df1f4..8826550 100644
--- a/board/gth/u-boot.lds
+++ b/board/gth/u-boot.lds
@@ -62,10 +62,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/gth2/u-boot.lds b/board/gth2/u-boot.lds
index 0594643..e6eee9b 100644
--- a/board/gth2/u-boot.lds
+++ b/board/gth2/u-boot.lds
@@ -38,7 +38,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/hermes/u-boot.lds b/board/hermes/u-boot.lds
index 540e614..02216fb 100644
--- a/board/hermes/u-boot.lds
+++ b/board/hermes/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/hymod/u-boot.lds b/board/hymod/u-boot.lds
index fdd584d..03fefec 100644
--- a/board/hymod/u-boot.lds
+++ b/board/hymod/u-boot.lds
@@ -75,10 +75,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/icu862/u-boot.lds b/board/icu862/u-boot.lds
index 645baa0..9a28cfd 100644
--- a/board/icu862/u-boot.lds
+++ b/board/icu862/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/idmr/u-boot.lds b/board/idmr/u-boot.lds
index 0bc7fa1..00c1f2a 100644
--- a/board/idmr/u-boot.lds
+++ b/board/idmr/u-boot.lds
@@ -73,8 +73,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/impa7/u-boot.lds b/board/impa7/u-boot.lds
index a79bb8c..8c9f624 100644
--- a/board/impa7/u-boot.lds
+++ b/board/impa7/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/imx31_litekit/u-boot.lds b/board/imx31_litekit/u-boot.lds
index 9285bd5..f840017 100644
--- a/board/imx31_litekit/u-boot.lds
+++ b/board/imx31_litekit/u-boot.lds
@@ -39,7 +39,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/imx31_phycore/u-boot.lds b/board/imx31_phycore/u-boot.lds
index 9285bd5..f840017 100644
--- a/board/imx31_phycore/u-boot.lds
+++ b/board/imx31_phycore/u-boot.lds
@@ -39,7 +39,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/incaip/u-boot.lds b/board/incaip/u-boot.lds
index da20de1..9a6cd1b 100644
--- a/board/incaip/u-boot.lds
+++ b/board/incaip/u-boot.lds
@@ -38,7 +38,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/innokom/u-boot.lds b/board/innokom/u-boot.lds
index 7cf9fdf..a077bc5 100644
--- a/board/innokom/u-boot.lds
+++ b/board/innokom/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/ip860/u-boot.lds b/board/ip860/u-boot.lds
index d1cb7e2..b47ae8e 100644
--- a/board/ip860/u-boot.lds
+++ b/board/ip860/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/ivm/u-boot.lds b/board/ivm/u-boot.lds
index 2583a59..ab51bd8 100644
--- a/board/ivm/u-boot.lds
+++ b/board/ivm/u-boot.lds
@@ -62,10 +62,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/ixdp425/u-boot.lds b/board/ixdp425/u-boot.lds
index f46a7c7..7c287e1 100644
--- a/board/ixdp425/u-boot.lds
+++ b/board/ixdp425/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/jse/u-boot.lds b/board/jse/u-boot.lds
index 7141c5a..12d3938 100644
--- a/board/jse/u-boot.lds
+++ b/board/jse/u-boot.lds
@@ -75,10 +75,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/kb9202/u-boot.lds b/board/kb9202/u-boot.lds
index d0666ac..3eae0e2 100644
--- a/board/kb9202/u-boot.lds
+++ b/board/kb9202/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/keymile/mgsuvd/u-boot.lds b/board/keymile/mgsuvd/u-boot.lds
index 5af36c9..4e221bc 100644
--- a/board/keymile/mgsuvd/u-boot.lds
+++ b/board/keymile/mgsuvd/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/korat/u-boot-F7FC.lds b/board/korat/u-boot-F7FC.lds
index 9bed401..c175f91 100644
--- a/board/korat/u-boot-F7FC.lds
+++ b/board/korat/u-boot-F7FC.lds
@@ -75,9 +75,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/korat/u-boot.lds b/board/korat/u-boot.lds
index 05152b7..7798722 100644
--- a/board/korat/u-boot.lds
+++ b/board/korat/u-boot.lds
@@ -75,9 +75,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/kup/kup4k/u-boot.lds b/board/kup/kup4k/u-boot.lds
index 120ca00..f2b6650 100644
--- a/board/kup/kup4k/u-boot.lds
+++ b/board/kup/kup4k/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/kup/kup4x/u-boot.lds b/board/kup/kup4x/u-boot.lds
index 120ca00..f2b6650 100644
--- a/board/kup/kup4x/u-boot.lds
+++ b/board/kup/kup4x/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/lantec/u-boot.lds b/board/lantec/u-boot.lds
index 6028c26..b9fa2d6 100644
--- a/board/lantec/u-boot.lds
+++ b/board/lantec/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/lart/u-boot.lds b/board/lart/u-boot.lds
index fce2533..13b7bb7 100644
--- a/board/lart/u-boot.lds
+++ b/board/lart/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/logodl/u-boot.lds b/board/logodl/u-boot.lds
index 7cf9fdf..a077bc5 100644
--- a/board/logodl/u-boot.lds
+++ b/board/logodl/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/lpc2292sodimm/u-boot.lds b/board/lpc2292sodimm/u-boot.lds
index 49d18f7..cb5a3ba 100644
--- a/board/lpc2292sodimm/u-boot.lds
+++ b/board/lpc2292sodimm/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/lpd7a40x/u-boot.lds b/board/lpd7a40x/u-boot.lds
index 3c14437..b98ed95 100644
--- a/board/lpd7a40x/u-boot.lds
+++ b/board/lpd7a40x/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/lubbock/u-boot.lds b/board/lubbock/u-boot.lds
index 7cf9fdf..a077bc5 100644
--- a/board/lubbock/u-boot.lds
+++ b/board/lubbock/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/lwmon/u-boot.lds b/board/lwmon/u-boot.lds
index 319cc7b..9e46f9d 100644
--- a/board/lwmon/u-boot.lds
+++ b/board/lwmon/u-boot.lds
@@ -62,10 +62,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/lwmon5/u-boot.lds b/board/lwmon5/u-boot.lds
index 05152b7..7798722 100644
--- a/board/lwmon5/u-boot.lds
+++ b/board/lwmon5/u-boot.lds
@@ -75,9 +75,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/m501sk/u-boot.lds b/board/m501sk/u-boot.lds
index ae6caf5..2247c37 100644
--- a/board/m501sk/u-boot.lds
+++ b/board/m501sk/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/mbx8xx/u-boot.lds b/board/mbx8xx/u-boot.lds
index 24484c7..ca35e88 100644
--- a/board/mbx8xx/u-boot.lds
+++ b/board/mbx8xx/u-boot.lds
@@ -62,10 +62,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/micronas/vct/u-boot.lds b/board/micronas/vct/u-boot.lds
index da9e605..b90b186 100644
--- a/board/micronas/vct/u-boot.lds
+++ b/board/micronas/vct/u-boot.lds
@@ -35,7 +35,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/mimc/mimc200/u-boot.lds b/board/mimc/mimc200/u-boot.lds
index e736adf..a7243f2 100644
--- a/board/mimc/mimc200/u-boot.lds
+++ b/board/mimc/mimc200/u-boot.lds
@@ -36,8 +36,7 @@ SECTIONS
_etext = .;
.rodata : {
- *(.rodata)
- *(.rodata.*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN(8);
diff --git a/board/miromico/hammerhead/u-boot.lds b/board/miromico/hammerhead/u-boot.lds
index e736adf..a7243f2 100644
--- a/board/miromico/hammerhead/u-boot.lds
+++ b/board/miromico/hammerhead/u-boot.lds
@@ -36,8 +36,7 @@ SECTIONS
_etext = .;
.rodata : {
- *(.rodata)
- *(.rodata.*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN(8);
diff --git a/board/ml2/u-boot.lds b/board/ml2/u-boot.lds
index 13ceea0..a6b6748 100644
--- a/board/ml2/u-boot.lds
+++ b/board/ml2/u-boot.lds
@@ -79,10 +79,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/modnet50/u-boot.lds b/board/modnet50/u-boot.lds
index a435466..b72e126 100644
--- a/board/modnet50/u-boot.lds
+++ b/board/modnet50/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/mousse/u-boot.lds b/board/mousse/u-boot.lds
index 8188873..44144e2 100644
--- a/board/mousse/u-boot.lds
+++ b/board/mousse/u-boot.lds
@@ -62,10 +62,8 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/mp2usb/u-boot.lds b/board/mp2usb/u-boot.lds
index d0666ac..3eae0e2 100644
--- a/board/mp2usb/u-boot.lds
+++ b/board/mp2usb/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/mpc8540eval/u-boot.lds b/board/mpc8540eval/u-boot.lds
index d65ccbe..0747913 100644
--- a/board/mpc8540eval/u-boot.lds
+++ b/board/mpc8540eval/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/mpl/mip405/u-boot.lds b/board/mpl/mip405/u-boot.lds
index 8714c2b..d71a299 100644
--- a/board/mpl/mip405/u-boot.lds
+++ b/board/mpl/mip405/u-boot.lds
@@ -89,10 +89,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/mpl/pip405/u-boot.lds b/board/mpl/pip405/u-boot.lds
index afe203b..f6f88a7 100644
--- a/board/mpl/pip405/u-boot.lds
+++ b/board/mpl/pip405/u-boot.lds
@@ -84,10 +84,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/mpl/vcma9/u-boot.lds b/board/mpl/vcma9/u-boot.lds
index 987b07d..33363c2 100644
--- a/board/mpl/vcma9/u-boot.lds
+++ b/board/mpl/vcma9/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/mpr2/u-boot.lds b/board/mpr2/u-boot.lds
index b1f0e1d..deae344 100644
--- a/board/mpr2/u-boot.lds
+++ b/board/mpr2/u-boot.lds
@@ -63,7 +63,7 @@ SECTIONS
PROVIDE (_ecode = .);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
. = ALIGN(4);
}
PROVIDE (_etext = .);
diff --git a/board/ms7720se/u-boot.lds b/board/ms7720se/u-boot.lds
index 2156f6a..1f9b792 100644
--- a/board/ms7720se/u-boot.lds
+++ b/board/ms7720se/u-boot.lds
@@ -62,7 +62,7 @@ SECTIONS
PROVIDE (_ecode = .);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
. = ALIGN(4);
}
PROVIDE (_etext = .);
diff --git a/board/ms7722se/u-boot.lds b/board/ms7722se/u-boot.lds
index 7dffe00..7b0fb67 100644
--- a/board/ms7722se/u-boot.lds
+++ b/board/ms7722se/u-boot.lds
@@ -59,7 +59,7 @@ SECTIONS
PROVIDE (_ecode = .);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
. = ALIGN(4);
}
PROVIDE (_etext = .);
diff --git a/board/ms7750se/u-boot.lds b/board/ms7750se/u-boot.lds
index 7dffe00..7b0fb67 100644
--- a/board/ms7750se/u-boot.lds
+++ b/board/ms7750se/u-boot.lds
@@ -59,7 +59,7 @@ SECTIONS
PROVIDE (_ecode = .);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
. = ALIGN(4);
}
PROVIDE (_etext = .);
diff --git a/board/munices/u-boot.lds b/board/munices/u-boot.lds
index 0a1a6ad..5fe8707 100644
--- a/board/munices/u-boot.lds
+++ b/board/munices/u-boot.lds
@@ -57,9 +57,7 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/mx1ads/u-boot.lds b/board/mx1ads/u-boot.lds
index 5460c8c..1c710cb 100644
--- a/board/mx1ads/u-boot.lds
+++ b/board/mx1ads/u-boot.lds
@@ -38,7 +38,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/mx1fs2/u-boot.lds b/board/mx1fs2/u-boot.lds
index c96e58a..d912d93 100644
--- a/board/mx1fs2/u-boot.lds
+++ b/board/mx1fs2/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/nc650/u-boot.lds b/board/nc650/u-boot.lds
index ca91ac4..dd040f0 100644
--- a/board/nc650/u-boot.lds
+++ b/board/nc650/u-boot.lds
@@ -61,10 +61,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/netphone/u-boot.lds b/board/netphone/u-boot.lds
index 8836560..68fe165 100644
--- a/board/netphone/u-boot.lds
+++ b/board/netphone/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/netstal/hcu4/u-boot.lds b/board/netstal/hcu4/u-boot.lds
index d9abcd6..0c38ea2 100644
--- a/board/netstal/hcu4/u-boot.lds
+++ b/board/netstal/hcu4/u-boot.lds
@@ -72,10 +72,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/netstal/hcu5/u-boot.lds b/board/netstal/hcu5/u-boot.lds
index c3009bb..21a2be2 100644
--- a/board/netstal/hcu5/u-boot.lds
+++ b/board/netstal/hcu5/u-boot.lds
@@ -74,9 +74,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/netstal/mcu25/u-boot.lds b/board/netstal/mcu25/u-boot.lds
index a00f570..b589956 100644
--- a/board/netstal/mcu25/u-boot.lds
+++ b/board/netstal/mcu25/u-boot.lds
@@ -72,10 +72,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/netstar/eeprom.lds b/board/netstar/eeprom.lds
index f3be320..132476d 100644
--- a/board/netstar/eeprom.lds
+++ b/board/netstar/eeprom.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/netstar/u-boot.lds b/board/netstar/u-boot.lds
index 5823f62..6a5510a 100644
--- a/board/netstar/u-boot.lds
+++ b/board/netstar/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/netta/u-boot.lds b/board/netta/u-boot.lds
index 4966f4d..14201ac 100644
--- a/board/netta/u-boot.lds
+++ b/board/netta/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/netta2/u-boot.lds b/board/netta2/u-boot.lds
index 4966f4d..14201ac 100644
--- a/board/netta2/u-boot.lds
+++ b/board/netta2/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/netvia/u-boot.lds b/board/netvia/u-boot.lds
index 6bc5768..8c48f1f 100644
--- a/board/netvia/u-boot.lds
+++ b/board/netvia/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/ns9750dev/u-boot.lds b/board/ns9750dev/u-boot.lds
index c656701..b7fc19c 100644
--- a/board/ns9750dev/u-boot.lds
+++ b/board/ns9750dev/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/nx823/u-boot.lds b/board/nx823/u-boot.lds
index 759b412..ee74eb9 100644
--- a/board/nx823/u-boot.lds
+++ b/board/nx823/u-boot.lds
@@ -63,10 +63,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/omap1510inn/u-boot.lds b/board/omap1510inn/u-boot.lds
index 1c70fcd..13b3643 100644
--- a/board/omap1510inn/u-boot.lds
+++ b/board/omap1510inn/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/omap1610inn/u-boot.lds b/board/omap1610inn/u-boot.lds
index d86eb36..4d50f2c 100644
--- a/board/omap1610inn/u-boot.lds
+++ b/board/omap1610inn/u-boot.lds
@@ -34,7 +34,7 @@ SECTIONS
*(.text)
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
. = ALIGN(4);
diff --git a/board/omap2420h4/u-boot.lds b/board/omap2420h4/u-boot.lds
index 89e627b..46535dd 100644
--- a/board/omap2420h4/u-boot.lds
+++ b/board/omap2420h4/u-boot.lds
@@ -39,7 +39,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/omap3/beagle/u-boot.lds b/board/omap3/beagle/u-boot.lds
index 69d8ac9..66a8925 100644
--- a/board/omap3/beagle/u-boot.lds
+++ b/board/omap3/beagle/u-boot.lds
@@ -39,7 +39,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) }
__exidx_start = .;
diff --git a/board/omap3/evm/u-boot.lds b/board/omap3/evm/u-boot.lds
index 69d8ac9..66a8925 100644
--- a/board/omap3/evm/u-boot.lds
+++ b/board/omap3/evm/u-boot.lds
@@ -39,7 +39,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) }
__exidx_start = .;
diff --git a/board/omap3/overo/u-boot.lds b/board/omap3/overo/u-boot.lds
index 69d8ac9..66a8925 100644
--- a/board/omap3/overo/u-boot.lds
+++ b/board/omap3/overo/u-boot.lds
@@ -39,7 +39,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) }
__exidx_start = .;
diff --git a/board/omap3/pandora/u-boot.lds b/board/omap3/pandora/u-boot.lds
index 69d8ac9..66a8925 100644
--- a/board/omap3/pandora/u-boot.lds
+++ b/board/omap3/pandora/u-boot.lds
@@ -39,7 +39,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) }
__exidx_start = .;
diff --git a/board/omap3/zoom1/u-boot.lds b/board/omap3/zoom1/u-boot.lds
index 01047c3..0eb318b 100644
--- a/board/omap3/zoom1/u-boot.lds
+++ b/board/omap3/zoom1/u-boot.lds
@@ -39,7 +39,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) }
__exidx_start = .;
diff --git a/board/omap5912osk/u-boot.lds b/board/omap5912osk/u-boot.lds
index 0bf6eff..3132b9a 100644
--- a/board/omap5912osk/u-boot.lds
+++ b/board/omap5912osk/u-boot.lds
@@ -34,7 +34,7 @@ SECTIONS
*(.text)
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
. = ALIGN(4);
diff --git a/board/omap730p2/u-boot.lds b/board/omap730p2/u-boot.lds
index d86eb36..4d50f2c 100644
--- a/board/omap730p2/u-boot.lds
+++ b/board/omap730p2/u-boot.lds
@@ -34,7 +34,7 @@ SECTIONS
*(.text)
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
. = ALIGN(4);
diff --git a/board/pb1x00/u-boot.lds b/board/pb1x00/u-boot.lds
index da20de1..9a6cd1b 100644
--- a/board/pb1x00/u-boot.lds
+++ b/board/pb1x00/u-boot.lds
@@ -38,7 +38,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/pcippc2/u-boot.lds b/board/pcippc2/u-boot.lds
index 5395108..4bb582d 100644
--- a/board/pcippc2/u-boot.lds
+++ b/board/pcippc2/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/pcs440ep/u-boot.lds b/board/pcs440ep/u-boot.lds
index 6b7dd21..a4c537e 100644
--- a/board/pcs440ep/u-boot.lds
+++ b/board/pcs440ep/u-boot.lds
@@ -74,10 +74,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/pleb2/u-boot.lds b/board/pleb2/u-boot.lds
index 7cf9fdf..a077bc5 100644
--- a/board/pleb2/u-boot.lds
+++ b/board/pleb2/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/pm854/u-boot.lds b/board/pm854/u-boot.lds
index 18cb27a..45aaadc 100644
--- a/board/pm854/u-boot.lds
+++ b/board/pm854/u-boot.lds
@@ -81,10 +81,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/pm856/u-boot.lds b/board/pm856/u-boot.lds
index e9c6a12..1dce2ab 100644
--- a/board/pm856/u-boot.lds
+++ b/board/pm856/u-boot.lds
@@ -81,10 +81,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/ppmc7xx/u-boot.lds b/board/ppmc7xx/u-boot.lds
index ca2e300..b0da216 100644
--- a/board/ppmc7xx/u-boot.lds
+++ b/board/ppmc7xx/u-boot.lds
@@ -70,9 +70,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/prodrive/alpr/u-boot.lds b/board/prodrive/alpr/u-boot.lds
index 33b03af..e7c5fe6 100644
--- a/board/prodrive/alpr/u-boot.lds
+++ b/board/prodrive/alpr/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/prodrive/p3mx/u-boot.lds b/board/prodrive/p3mx/u-boot.lds
index ff2d8b7..632921a 100644
--- a/board/prodrive/p3mx/u-boot.lds
+++ b/board/prodrive/p3mx/u-boot.lds
@@ -70,10 +70,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/prodrive/p3p440/u-boot.lds b/board/prodrive/p3p440/u-boot.lds
index 17cfde8..9327970 100644
--- a/board/prodrive/p3p440/u-boot.lds
+++ b/board/prodrive/p3p440/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/prodrive/pdnb3/u-boot.lds b/board/prodrive/pdnb3/u-boot.lds
index dc59119..6324436 100644
--- a/board/prodrive/pdnb3/u-boot.lds
+++ b/board/prodrive/pdnb3/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/psyent/pci5441/u-boot.lds b/board/psyent/pci5441/u-boot.lds
index d3b7c31..b2d88a5 100644
--- a/board/psyent/pci5441/u-boot.lds
+++ b/board/psyent/pci5441/u-boot.lds
@@ -34,8 +34,7 @@ SECTIONS
*(.text)
*(.text.*)
*(.gnu.linkonce.t*)
- *(.rodata)
- *(.rodata.*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
*(.gnu.linkonce.r*)
}
. = ALIGN (4);
diff --git a/board/psyent/pk1c20/u-boot.lds b/board/psyent/pk1c20/u-boot.lds
index d3b7c31..b2d88a5 100644
--- a/board/psyent/pk1c20/u-boot.lds
+++ b/board/psyent/pk1c20/u-boot.lds
@@ -34,8 +34,7 @@ SECTIONS
*(.text)
*(.text.*)
*(.gnu.linkonce.t*)
- *(.rodata)
- *(.rodata.*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
*(.gnu.linkonce.r*)
}
. = ALIGN (4);
diff --git a/board/purple/u-boot.lds b/board/purple/u-boot.lds
index bf1394b..04a641a 100644
--- a/board/purple/u-boot.lds
+++ b/board/purple/u-boot.lds
@@ -48,7 +48,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/pxa255_idp/u-boot.lds b/board/pxa255_idp/u-boot.lds
index 96ac25c..fb4358b 100644
--- a/board/pxa255_idp/u-boot.lds
+++ b/board/pxa255_idp/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/qemu-mips/u-boot.lds b/board/qemu-mips/u-boot.lds
index 03bcb09..ad058ca 100644
--- a/board/qemu-mips/u-boot.lds
+++ b/board/qemu-mips/u-boot.lds
@@ -38,7 +38,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/quad100hd/u-boot.lds b/board/quad100hd/u-boot.lds
index 7cf4d4f..24d31a1 100644
--- a/board/quad100hd/u-boot.lds
+++ b/board/quad100hd/u-boot.lds
@@ -68,9 +68,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/quantum/u-boot.lds b/board/quantum/u-boot.lds
index 55cb5ec..faa1c6c 100644
--- a/board/quantum/u-boot.lds
+++ b/board/quantum/u-boot.lds
@@ -74,10 +74,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/r360mpi/u-boot.lds b/board/r360mpi/u-boot.lds
index db28544..61d4b11 100644
--- a/board/r360mpi/u-boot.lds
+++ b/board/r360mpi/u-boot.lds
@@ -71,10 +71,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/rbc823/u-boot.lds b/board/rbc823/u-boot.lds
index 63bd21b..552f15d 100644
--- a/board/rbc823/u-boot.lds
+++ b/board/rbc823/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/renesas/MigoR/u-boot.lds b/board/renesas/MigoR/u-boot.lds
index f9c1eff..c004b83 100644
--- a/board/renesas/MigoR/u-boot.lds
+++ b/board/renesas/MigoR/u-boot.lds
@@ -59,7 +59,7 @@ SECTIONS
PROVIDE (_ecode = .);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
. = ALIGN(4);
}
PROVIDE (_etext = .);
diff --git a/board/renesas/ap325rxa/u-boot.lds b/board/renesas/ap325rxa/u-boot.lds
index e9f8dc0..94bacca 100644
--- a/board/renesas/ap325rxa/u-boot.lds
+++ b/board/renesas/ap325rxa/u-boot.lds
@@ -59,7 +59,7 @@ SECTIONS
PROVIDE (_ecode = .);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
. = ALIGN(4);
}
PROVIDE (_etext = .);
diff --git a/board/renesas/r2dplus/u-boot.lds b/board/renesas/r2dplus/u-boot.lds
index 040e530..e1c15b0 100644
--- a/board/renesas/r2dplus/u-boot.lds
+++ b/board/renesas/r2dplus/u-boot.lds
@@ -59,7 +59,7 @@ SECTIONS
PROVIDE (_ecode = .);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
. = ALIGN(4);
}
PROVIDE (_etext = .);
diff --git a/board/renesas/r7780mp/u-boot.lds b/board/renesas/r7780mp/u-boot.lds
index eaa05d0..f32d0b8 100644
--- a/board/renesas/r7780mp/u-boot.lds
+++ b/board/renesas/r7780mp/u-boot.lds
@@ -59,7 +59,7 @@ SECTIONS
PROVIDE (_ecode = .);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
. = ALIGN(4);
}
PROVIDE (_etext = .);
diff --git a/board/renesas/rsk7203/u-boot.lds b/board/renesas/rsk7203/u-boot.lds
index 63e5b97..bd4a550 100644
--- a/board/renesas/rsk7203/u-boot.lds
+++ b/board/renesas/rsk7203/u-boot.lds
@@ -56,7 +56,7 @@ SECTIONS
PROVIDE (_ecode = .);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
. = ALIGN(4);
}
PROVIDE (_etext = .);
diff --git a/board/renesas/sh7763rdp/u-boot.lds b/board/renesas/sh7763rdp/u-boot.lds
index 7177416..b1a967d 100644
--- a/board/renesas/sh7763rdp/u-boot.lds
+++ b/board/renesas/sh7763rdp/u-boot.lds
@@ -59,7 +59,7 @@ SECTIONS
PROVIDE (_ecode = .);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
. = ALIGN(4);
}
PROVIDE (_etext = .);
diff --git a/board/renesas/sh7785lcr/u-boot.lds b/board/renesas/sh7785lcr/u-boot.lds
index 231769f..fd418fe 100644
--- a/board/renesas/sh7785lcr/u-boot.lds
+++ b/board/renesas/sh7785lcr/u-boot.lds
@@ -50,7 +50,7 @@ SECTIONS
PROVIDE (_ecode = .);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
. = ALIGN(4);
}
PROVIDE (_etext = .);
diff --git a/board/rmu/u-boot.lds b/board/rmu/u-boot.lds
index 55cb5ec..faa1c6c 100644
--- a/board/rmu/u-boot.lds
+++ b/board/rmu/u-boot.lds
@@ -74,10 +74,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/rsdproto/u-boot.lds b/board/rsdproto/u-boot.lds
index b2bd576..771f7de 100644
--- a/board/rsdproto/u-boot.lds
+++ b/board/rsdproto/u-boot.lds
@@ -62,10 +62,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/samsung/smdk2400/u-boot.lds b/board/samsung/smdk2400/u-boot.lds
index 987b07d..33363c2 100644
--- a/board/samsung/smdk2400/u-boot.lds
+++ b/board/samsung/smdk2400/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/samsung/smdk2410/u-boot.lds b/board/samsung/smdk2410/u-boot.lds
index 987b07d..33363c2 100644
--- a/board/samsung/smdk2410/u-boot.lds
+++ b/board/samsung/smdk2410/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/samsung/smdk6400/u-boot-nand.lds b/board/samsung/smdk6400/u-boot-nand.lds
index bd6b24f..b868fdd 100644
--- a/board/samsung/smdk6400/u-boot-nand.lds
+++ b/board/samsung/smdk6400/u-boot-nand.lds
@@ -40,7 +40,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/sandburst/karef/u-boot.lds b/board/sandburst/karef/u-boot.lds
index 6223f4e..f509100 100644
--- a/board/sandburst/karef/u-boot.lds
+++ b/board/sandburst/karef/u-boot.lds
@@ -91,10 +91,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/sandburst/metrobox/u-boot.lds b/board/sandburst/metrobox/u-boot.lds
index 54e18e0..f1bc4a0 100644
--- a/board/sandburst/metrobox/u-boot.lds
+++ b/board/sandburst/metrobox/u-boot.lds
@@ -91,10 +91,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/sbc2410x/u-boot.lds b/board/sbc2410x/u-boot.lds
index d0666ac..3eae0e2 100644
--- a/board/sbc2410x/u-boot.lds
+++ b/board/sbc2410x/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/sbc405/u-boot.lds b/board/sbc405/u-boot.lds
index d6f34c9..d9410fa 100644
--- a/board/sbc405/u-boot.lds
+++ b/board/sbc405/u-boot.lds
@@ -83,10 +83,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/sbc8548/u-boot.lds b/board/sbc8548/u-boot.lds
index 70d11f2..a54a001 100644
--- a/board/sbc8548/u-boot.lds
+++ b/board/sbc8548/u-boot.lds
@@ -80,10 +80,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/sbc8560/u-boot.lds b/board/sbc8560/u-boot.lds
index 759ee82..8c12ba4 100644
--- a/board/sbc8560/u-boot.lds
+++ b/board/sbc8560/u-boot.lds
@@ -86,10 +86,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/sbc8641d/u-boot.lds b/board/sbc8641d/u-boot.lds
index adfa816..f156d4f 100644
--- a/board/sbc8641d/u-boot.lds
+++ b/board/sbc8641d/u-boot.lds
@@ -68,10 +68,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/sc3/u-boot.lds b/board/sc3/u-boot.lds
index d729f2e..75174e1 100644
--- a/board/sc3/u-boot.lds
+++ b/board/sc3/u-boot.lds
@@ -84,10 +84,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/sc520_cdp/u-boot.lds b/board/sc520_cdp/u-boot.lds
index 0f5011a..df437c7 100644
--- a/board/sc520_cdp/u-boot.lds
+++ b/board/sc520_cdp/u-boot.lds
@@ -31,7 +31,7 @@ SECTIONS
.text : { *(.text); }
. = ALIGN(4);
- .rodata : { *(.rodata) *(.rodata.str1.1) *(.rodata.str1.32) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = 0x400000; /* Ram data segment to use */
_i386boot_romdata_dest = ABSOLUTE(.);
diff --git a/board/sc520_spunk/u-boot.lds b/board/sc520_spunk/u-boot.lds
index d2436bc..efb570b 100644
--- a/board/sc520_spunk/u-boot.lds
+++ b/board/sc520_spunk/u-boot.lds
@@ -32,7 +32,7 @@ SECTIONS
.text : { *(.text); }
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = 0x400000; /* Ram data segment to use */
_i386boot_romdata_dest = ABSOLUTE(.);
diff --git a/board/scb9328/u-boot.lds b/board/scb9328/u-boot.lds
index c96e58a..d912d93 100644
--- a/board/scb9328/u-boot.lds
+++ b/board/scb9328/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/shannon/u-boot.lds b/board/shannon/u-boot.lds
index fce2533..13b7bb7 100644
--- a/board/shannon/u-boot.lds
+++ b/board/shannon/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/siemens/CCM/u-boot.lds b/board/siemens/CCM/u-boot.lds
index ef9a251..61650a8 100644
--- a/board/siemens/CCM/u-boot.lds
+++ b/board/siemens/CCM/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/siemens/IAD210/u-boot.lds b/board/siemens/IAD210/u-boot.lds
index 47677c6..12a53ba 100644
--- a/board/siemens/IAD210/u-boot.lds
+++ b/board/siemens/IAD210/u-boot.lds
@@ -71,10 +71,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/siemens/SMN42/u-boot.lds b/board/siemens/SMN42/u-boot.lds
index 49d18f7..cb5a3ba 100644
--- a/board/siemens/SMN42/u-boot.lds
+++ b/board/siemens/SMN42/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/siemens/pcu_e/u-boot.lds b/board/siemens/pcu_e/u-boot.lds
index 319cc7b..9e46f9d 100644
--- a/board/siemens/pcu_e/u-boot.lds
+++ b/board/siemens/pcu_e/u-boot.lds
@@ -62,10 +62,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/sixnet/u-boot.lds b/board/sixnet/u-boot.lds
index efa4244..bde981b 100644
--- a/board/sixnet/u-boot.lds
+++ b/board/sixnet/u-boot.lds
@@ -62,10 +62,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/snmc/qs850/u-boot.lds b/board/snmc/qs850/u-boot.lds
index 6fa9b81..7de0de8 100644
--- a/board/snmc/qs850/u-boot.lds
+++ b/board/snmc/qs850/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/snmc/qs860t/u-boot.lds b/board/snmc/qs860t/u-boot.lds
index 6fa9b81..7de0de8 100644
--- a/board/snmc/qs860t/u-boot.lds
+++ b/board/snmc/qs860t/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/socrates/u-boot.lds b/board/socrates/u-boot.lds
index 499f531..9241b5c 100644
--- a/board/socrates/u-boot.lds
+++ b/board/socrates/u-boot.lds
@@ -84,10 +84,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/spc1920/u-boot.lds b/board/spc1920/u-boot.lds
index 5af36c9..4e221bc 100644
--- a/board/spc1920/u-boot.lds
+++ b/board/spc1920/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/spd8xx/u-boot.lds b/board/spd8xx/u-boot.lds
index 7d94421..a06d8c6 100644
--- a/board/spd8xx/u-boot.lds
+++ b/board/spd8xx/u-boot.lds
@@ -62,10 +62,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/ssv/adnpesc1/u-boot.lds b/board/ssv/adnpesc1/u-boot.lds
index be77952..98ee8f8 100644
--- a/board/ssv/adnpesc1/u-boot.lds
+++ b/board/ssv/adnpesc1/u-boot.lds
@@ -38,7 +38,7 @@ SECTIONS
. = ALIGN(4);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
__rodata_end = .;
diff --git a/board/st/nmdk8815/u-boot.lds b/board/st/nmdk8815/u-boot.lds
index 6d6481b..c2adbab 100644
--- a/board/st/nmdk8815/u-boot.lds
+++ b/board/st/nmdk8815/u-boot.lds
@@ -34,7 +34,7 @@ SECTIONS
*(.text)
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
. = ALIGN(4);
diff --git a/board/stxgp3/u-boot.lds b/board/stxgp3/u-boot.lds
index cdcb39a..182e940 100644
--- a/board/stxgp3/u-boot.lds
+++ b/board/stxgp3/u-boot.lds
@@ -88,10 +88,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/stxssa/u-boot.lds b/board/stxssa/u-boot.lds
index 6ee8d60..750ddb3 100644
--- a/board/stxssa/u-boot.lds
+++ b/board/stxssa/u-boot.lds
@@ -88,10 +88,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/stxxtc/u-boot.lds b/board/stxxtc/u-boot.lds
index 4966f4d..14201ac 100644
--- a/board/stxxtc/u-boot.lds
+++ b/board/stxxtc/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/svm_sc8xx/u-boot.lds b/board/svm_sc8xx/u-boot.lds
index ceab4d2..11a819a 100644
--- a/board/svm_sc8xx/u-boot.lds
+++ b/board/svm_sc8xx/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/sx1/u-boot.lds b/board/sx1/u-boot.lds
index 9a9dd21..af0b4d0 100644
--- a/board/sx1/u-boot.lds
+++ b/board/sx1/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/tb0229/u-boot.lds b/board/tb0229/u-boot.lds
index 086d74d..56d7c25 100644
--- a/board/tb0229/u-boot.lds
+++ b/board/tb0229/u-boot.lds
@@ -38,7 +38,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/tqc/tqm85xx/u-boot.lds b/board/tqc/tqm85xx/u-boot.lds
index b1637a5..91c8952 100644
--- a/board/tqc/tqm85xx/u-boot.lds
+++ b/board/tqc/tqm85xx/u-boot.lds
@@ -81,10 +81,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/tqc/tqm8xx/u-boot.lds b/board/tqc/tqm8xx/u-boot.lds
index 5af36c9..4e221bc 100644
--- a/board/tqc/tqm8xx/u-boot.lds
+++ b/board/tqc/tqm8xx/u-boot.lds
@@ -76,10 +76,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/trab/u-boot.lds b/board/trab/u-boot.lds
index bd13d13..912a2bb 100644
--- a/board/trab/u-boot.lds
+++ b/board/trab/u-boot.lds
@@ -45,7 +45,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/trizepsiv/u-boot.lds b/board/trizepsiv/u-boot.lds
index 7cf9fdf..a077bc5 100644
--- a/board/trizepsiv/u-boot.lds
+++ b/board/trizepsiv/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/uc100/u-boot.lds b/board/uc100/u-boot.lds
index 66a57e6..1450d37 100644
--- a/board/uc100/u-boot.lds
+++ b/board/uc100/u-boot.lds
@@ -75,10 +75,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/v37/u-boot.lds b/board/v37/u-boot.lds
index bf78a32..d24289c 100644
--- a/board/v37/u-boot.lds
+++ b/board/v37/u-boot.lds
@@ -78,10 +78,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/voiceblue/eeprom.lds b/board/voiceblue/eeprom.lds
index f3be320..132476d 100644
--- a/board/voiceblue/eeprom.lds
+++ b/board/voiceblue/eeprom.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/voiceblue/u-boot.lds b/board/voiceblue/u-boot.lds
index 8bf1990..97fcef3 100644
--- a/board/voiceblue/u-boot.lds
+++ b/board/voiceblue/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/w7o/u-boot.lds b/board/w7o/u-boot.lds
index 80e960b..191a179 100644
--- a/board/w7o/u-boot.lds
+++ b/board/w7o/u-boot.lds
@@ -67,10 +67,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/wepep250/u-boot.lds b/board/wepep250/u-boot.lds
index 7cf9fdf..a077bc5 100644
--- a/board/wepep250/u-boot.lds
+++ b/board/wepep250/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/westel/amx860/u-boot.lds b/board/westel/amx860/u-boot.lds
index ef9a251..61650a8 100644
--- a/board/westel/amx860/u-boot.lds
+++ b/board/westel/amx860/u-boot.lds
@@ -73,10 +73,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/xaeniax/u-boot.lds b/board/xaeniax/u-boot.lds
index 7cf9fdf..a077bc5 100644
--- a/board/xaeniax/u-boot.lds
+++ b/board/xaeniax/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/xes/xpedite5200/u-boot.lds b/board/xes/xpedite5200/u-boot.lds
index bd952d2..af4f016 100644
--- a/board/xes/xpedite5200/u-boot.lds
+++ b/board/xes/xpedite5200/u-boot.lds
@@ -65,10 +65,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
} :text
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/xes/xpedite5370/u-boot.lds b/board/xes/xpedite5370/u-boot.lds
index cb39912..f117d9b 100644
--- a/board/xes/xpedite5370/u-boot.lds
+++ b/board/xes/xpedite5370/u-boot.lds
@@ -65,10 +65,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
} :text
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/xilinx/microblaze-generic/u-boot.lds b/board/xilinx/microblaze-generic/u-boot.lds
index b38f648..5a08680 100644
--- a/board/xilinx/microblaze-generic/u-boot.lds
+++ b/board/xilinx/microblaze-generic/u-boot.lds
@@ -38,7 +38,7 @@ SECTIONS
.rodata ALIGN(0x4):
{
__rodata_start = .;
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
__rodata_end = .;
}
diff --git a/board/xilinx/ml300/u-boot.lds b/board/xilinx/ml300/u-boot.lds
index 913ff6e..fa60e6b 100644
--- a/board/xilinx/ml300/u-boot.lds
+++ b/board/xilinx/ml300/u-boot.lds
@@ -81,10 +81,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/xilinx/ppc405-generic/u-boot-ram.lds b/board/xilinx/ppc405-generic/u-boot-ram.lds
index 6bbd3bd..908d84b 100644
--- a/board/xilinx/ppc405-generic/u-boot-ram.lds
+++ b/board/xilinx/ppc405-generic/u-boot-ram.lds
@@ -64,10 +64,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/xilinx/ppc405-generic/u-boot-rom.lds b/board/xilinx/ppc405-generic/u-boot-rom.lds
index d094006..592976a 100644
--- a/board/xilinx/ppc405-generic/u-boot-rom.lds
+++ b/board/xilinx/ppc405-generic/u-boot-rom.lds
@@ -74,10 +74,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/xilinx/ppc440-generic/u-boot-ram.lds b/board/xilinx/ppc440-generic/u-boot-ram.lds
index d65f3de..3ab9a31 100644
--- a/board/xilinx/ppc440-generic/u-boot-ram.lds
+++ b/board/xilinx/ppc440-generic/u-boot-ram.lds
@@ -64,10 +64,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/xilinx/ppc440-generic/u-boot-rom.lds b/board/xilinx/ppc440-generic/u-boot-rom.lds
index 8b468ee..7420280 100644
--- a/board/xilinx/ppc440-generic/u-boot-rom.lds
+++ b/board/xilinx/ppc440-generic/u-boot-rom.lds
@@ -74,10 +74,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/xm250/u-boot.lds b/board/xm250/u-boot.lds
index 1e88820..8af5001 100644
--- a/board/xm250/u-boot.lds
+++ b/board/xm250/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/xpedite1k/u-boot.lds b/board/xpedite1k/u-boot.lds
index 13c52b9..c8f9646 100644
--- a/board/xpedite1k/u-boot.lds
+++ b/board/xpedite1k/u-boot.lds
@@ -89,10 +89,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/xsengine/u-boot.lds b/board/xsengine/u-boot.lds
index 1e88820..8af5001 100644
--- a/board/xsengine/u-boot.lds
+++ b/board/xsengine/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/board/zeus/u-boot.lds b/board/zeus/u-boot.lds
index 877573e..f86570d 100644
--- a/board/zeus/u-boot.lds
+++ b/board/zeus/u-boot.lds
@@ -67,9 +67,7 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/board/zylonite/u-boot.lds b/board/zylonite/u-boot.lds
index 7cf9fdf..a077bc5 100644
--- a/board/zylonite/u-boot.lds
+++ b/board/zylonite/u-boot.lds
@@ -36,7 +36,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/cpu/arm926ejs/at91/u-boot.lds b/cpu/arm926ejs/at91/u-boot.lds
index 4778d1e..ebb1f93 100644
--- a/cpu/arm926ejs/at91/u-boot.lds
+++ b/cpu/arm926ejs/at91/u-boot.lds
@@ -37,7 +37,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/cpu/mpc5xx/u-boot.lds b/cpu/mpc5xx/u-boot.lds
index bf52179..cb17ca5 100644
--- a/cpu/mpc5xx/u-boot.lds
+++ b/cpu/mpc5xx/u-boot.lds
@@ -65,10 +65,8 @@ SECTIONS
PROVIDE (etext = .);
.rodata :
{
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/cpu/mpc5xxx/u-boot-customlayout.lds b/cpu/mpc5xxx/u-boot-customlayout.lds
index f6bb858..9563690 100644
--- a/cpu/mpc5xxx/u-boot-customlayout.lds
+++ b/cpu/mpc5xxx/u-boot-customlayout.lds
@@ -68,10 +68,8 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/cpu/mpc5xxx/u-boot.lds b/cpu/mpc5xxx/u-boot.lds
index 8d1fa60..a6d4ff3 100644
--- a/cpu/mpc5xxx/u-boot.lds
+++ b/cpu/mpc5xxx/u-boot.lds
@@ -57,10 +57,8 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/cpu/mpc8220/u-boot.lds b/cpu/mpc8220/u-boot.lds
index 2a12a69..436423c 100644
--- a/cpu/mpc8220/u-boot.lds
+++ b/cpu/mpc8220/u-boot.lds
@@ -57,10 +57,8 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/cpu/mpc824x/u-boot.lds b/cpu/mpc824x/u-boot.lds
index 8c7e135..46f7087 100644
--- a/cpu/mpc824x/u-boot.lds
+++ b/cpu/mpc824x/u-boot.lds
@@ -57,10 +57,8 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/cpu/mpc8260/u-boot.lds b/cpu/mpc8260/u-boot.lds
index d65a939..b3a103d 100644
--- a/cpu/mpc8260/u-boot.lds
+++ b/cpu/mpc8260/u-boot.lds
@@ -57,10 +57,8 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/cpu/mpc83xx/u-boot.lds b/cpu/mpc83xx/u-boot.lds
index 3a08f64..7d57ee4 100644
--- a/cpu/mpc83xx/u-boot.lds
+++ b/cpu/mpc83xx/u-boot.lds
@@ -55,10 +55,8 @@ SECTIONS
*(.fixup)
*(.got1)
. = ALIGN(16);
- *(.rodata)
- *(.rodata1)
- *(.rodata.str1.4)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
diff --git a/examples/mips.lds b/examples/mips.lds
index 939e0e6..717b201 100644
--- a/examples/mips.lds
+++ b/examples/mips.lds
@@ -34,7 +34,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/examples/nios.lds b/examples/nios.lds
index 18072f7..4c1080b 100644
--- a/examples/nios.lds
+++ b/examples/nios.lds
@@ -37,7 +37,7 @@ SECTIONS
. = ALIGN(4);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
__rodata_end = .;
diff --git a/examples/nios2.lds b/examples/nios2.lds
index 6a100dc..a3e5ea8 100644
--- a/examples/nios2.lds
+++ b/examples/nios2.lds
@@ -33,8 +33,7 @@ SECTIONS
*(.text)
*(.text.*)
*(.gnu.linkonce.t*)
- *(.rodata)
- *(.rodata.*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
*(.gnu.linkonce.r*)
}
. = ALIGN (4);
diff --git a/examples/sparc.lds b/examples/sparc.lds
index 7592544..9733daa 100644
--- a/examples/sparc.lds
+++ b/examples/sparc.lds
@@ -37,7 +37,7 @@ SECTIONS
. = ALIGN(4);
.rodata :
{
- *(.rodata)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
__rodata_end = .;
diff --git a/nand_spl/board/amcc/acadia/u-boot.lds b/nand_spl/board/amcc/acadia/u-boot.lds
index ab42701..b89cd80 100644
--- a/nand_spl/board/amcc/acadia/u-boot.lds
+++ b/nand_spl/board/amcc/acadia/u-boot.lds
@@ -42,7 +42,7 @@ SECTIONS
.data :
{
- *(.rodata*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
*(.data*)
*(.sdata*)
__got2_start = .;
diff --git a/nand_spl/board/amcc/bamboo/u-boot.lds b/nand_spl/board/amcc/bamboo/u-boot.lds
index b13168f..d171269 100644
--- a/nand_spl/board/amcc/bamboo/u-boot.lds
+++ b/nand_spl/board/amcc/bamboo/u-boot.lds
@@ -44,7 +44,7 @@ SECTIONS
.data :
{
- *(.rodata*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
*(.data*)
*(.sdata*)
__got2_start = .;
diff --git a/nand_spl/board/amcc/canyonlands/u-boot.lds b/nand_spl/board/amcc/canyonlands/u-boot.lds
index ef6d560..e676e0c 100644
--- a/nand_spl/board/amcc/canyonlands/u-boot.lds
+++ b/nand_spl/board/amcc/canyonlands/u-boot.lds
@@ -44,7 +44,7 @@ SECTIONS
.data :
{
- *(.rodata*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
*(.data*)
*(.sdata*)
__got2_start = .;
diff --git a/nand_spl/board/amcc/kilauea/u-boot.lds b/nand_spl/board/amcc/kilauea/u-boot.lds
index 1335532..5a586fc 100644
--- a/nand_spl/board/amcc/kilauea/u-boot.lds
+++ b/nand_spl/board/amcc/kilauea/u-boot.lds
@@ -42,7 +42,7 @@ SECTIONS
.data :
{
- *(.rodata*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
*(.data*)
*(.sdata*)
__got2_start = .;
diff --git a/nand_spl/board/amcc/sequoia/u-boot.lds b/nand_spl/board/amcc/sequoia/u-boot.lds
index d38d097..1601c36 100644
--- a/nand_spl/board/amcc/sequoia/u-boot.lds
+++ b/nand_spl/board/amcc/sequoia/u-boot.lds
@@ -44,7 +44,7 @@ SECTIONS
.data :
{
- *(.rodata*)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
*(.data*)
*(.sdata*)
__got2_start = .;
diff --git a/nand_spl/board/freescale/mpc8313erdb/u-boot.lds b/nand_spl/board/freescale/mpc8313erdb/u-boot.lds
index 40c4145..ad82589 100644
--- a/nand_spl/board/freescale/mpc8313erdb/u-boot.lds
+++ b/nand_spl/board/freescale/mpc8313erdb/u-boot.lds
@@ -30,8 +30,8 @@ SECTIONS
.text : {
*(.text*)
. = ALIGN(16);
- *(.rodata*)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN(8);
diff --git a/nand_spl/board/samsung/smdk6400/u-boot.lds b/nand_spl/board/samsung/smdk6400/u-boot.lds
index eb8910c..56e1015 100644
--- a/nand_spl/board/samsung/smdk6400/u-boot.lds
+++ b/nand_spl/board/samsung/smdk6400/u-boot.lds
@@ -42,7 +42,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
diff --git a/nand_spl/board/sheldon/simpc8313/u-boot.lds b/nand_spl/board/sheldon/simpc8313/u-boot.lds
index 40c4145..ad82589 100644
--- a/nand_spl/board/sheldon/simpc8313/u-boot.lds
+++ b/nand_spl/board/sheldon/simpc8313/u-boot.lds
@@ -30,8 +30,8 @@ SECTIONS
.text : {
*(.text*)
. = ALIGN(16);
- *(.rodata*)
*(.eh_frame)
+ *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
}
. = ALIGN(8);
diff --git a/onenand_ipl/board/apollon/u-boot.onenand.lds b/onenand_ipl/board/apollon/u-boot.onenand.lds
index c8b00a1..0960c12 100644
--- a/onenand_ipl/board/apollon/u-boot.onenand.lds
+++ b/onenand_ipl/board/apollon/u-boot.onenand.lds
@@ -38,7 +38,7 @@ SECTIONS
}
. = ALIGN(4);
- .rodata : { *(.rodata) }
+ .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
. = ALIGN(4);
.data : { *(.data) }
--
1.5.4.1
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix all linker script to handle all rodata sections
2009-02-18 23:22 ` [U-Boot] [PATCH] Fix all linker script to handle all rodata sections Trent Piepho
@ 2009-02-19 0:00 ` Wolfgang Denk
2009-02-19 17:52 ` Kim Phillips
2009-08-10 8:35 ` Wolfgang Denk
2 siblings, 0 replies; 20+ messages in thread
From: Wolfgang Denk @ 2009-02-19 0:00 UTC (permalink / raw)
To: u-boot
Dear Trent Piepho,
In message <1234999325-13456-1-git-send-email-tpiepho@freescale.com> you wrote:
> From: Trent Piepho <xyzzy@speakeasy.org>
>
> A recent gcc added a new unaligned rodata section called '.rodata.str1.1',
> which needs to be added the the linker script. Instead of just adding this
> one section, we use a wildcard ".rodata*" to get all rodata linker section
> gcc has now and might add in the future.
>
> However, '*(.rodata*)' by itself will result in sub-optimal section
> ordering. The sections will be sorted by object file, which causes extra
> padding between the unaligned rodata.str.1.1 of one object file and the
> aligned rodata of the next object file. This is easy to fix by using the
> SORT_BY_ALIGNMENT command.
>
> This patch has not be tested one most of the boards modified. Some boards
> have a linker script that looks something like this:
>
> *(.text)
> . = ALIGN(16);
> *(.rodata)
> *(.rodata.str1.4)
> *(.eh_frame)
>
> I change this to:
>
> *(.text)
> . = ALIGN(16);
> *(.eh_frame)
> *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
>
> This means the start of rodata will no longer be 16 bytes aligned.
> However, the boundary between text and rodata/eh_frame is still aligned to
> 16 bytes, which is what I think the real purpose of the ALIGN call is.
>
> Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
> ---
Applied to "next" branch.
Thanks - I really appreciate your work.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"They that can give up essential liberty to obtain a little temporary
saftey deserve neither liberty not saftey." - Benjamin Franklin, 1759
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix all linker script to handle all rodata sections
2009-02-18 23:22 ` [U-Boot] [PATCH] Fix all linker script to handle all rodata sections Trent Piepho
2009-02-19 0:00 ` Wolfgang Denk
@ 2009-02-19 17:52 ` Kim Phillips
2009-08-10 8:35 ` Wolfgang Denk
2 siblings, 0 replies; 20+ messages in thread
From: Kim Phillips @ 2009-02-19 17:52 UTC (permalink / raw)
To: u-boot
On Wed, 18 Feb 2009 15:22:05 -0800
Trent Piepho <tpiepho@freescale.com> wrote:
> From: Trent Piepho <xyzzy@speakeasy.org>
>
> A recent gcc added a new unaligned rodata section called '.rodata.str1.1',
> which needs to be added the the linker script. Instead of just adding this
> one section, we use a wildcard ".rodata*" to get all rodata linker section
> gcc has now and might add in the future.
>
> However, '*(.rodata*)' by itself will result in sub-optimal section
> ordering. The sections will be sorted by object file, which causes extra
> padding between the unaligned rodata.str.1.1 of one object file and the
> aligned rodata of the next object file. This is easy to fix by using the
> SORT_BY_ALIGNMENT command.
>
> This patch has not be tested one most of the boards modified. Some boards
> have a linker script that looks something like this:
>
> *(.text)
> . = ALIGN(16);
> *(.rodata)
> *(.rodata.str1.4)
> *(.eh_frame)
>
> I change this to:
>
> *(.text)
> . = ALIGN(16);
> *(.eh_frame)
> *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
>
> This means the start of rodata will no longer be 16 bytes aligned.
> However, the boundary between text and rodata/eh_frame is still aligned to
> 16 bytes, which is what I think the real purpose of the ALIGN call is.
>
> Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
> ---
This fixes my problem, and I can't find anything wrong with it
upon visual inspection, so:
A-Big-Huge-Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
thanks Trent, I owe you a beer.
Kim
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix all linker script to handle all rodata sections
2009-02-18 23:22 ` [U-Boot] [PATCH] Fix all linker script to handle all rodata sections Trent Piepho
2009-02-19 0:00 ` Wolfgang Denk
2009-02-19 17:52 ` Kim Phillips
@ 2009-08-10 8:35 ` Wolfgang Denk
2009-08-15 22:02 ` Wolfgang Denk
2 siblings, 1 reply; 20+ messages in thread
From: Wolfgang Denk @ 2009-08-10 8:35 UTC (permalink / raw)
To: u-boot
Dear Trent Piepho,
In message <1234999325-13456-1-git-send-email-tpiepho@freescale.com> you wrote:
>
> A recent gcc added a new unaligned rodata section called '.rodata.str1.1',
> which needs to be added the the linker script. Instead of just adding this
> one section, we use a wildcard ".rodata*" to get all rodata linker section
> gcc has now and might add in the future.
...
> I change this to:
>
> *(.text)
> . = ALIGN(16);
> *(.eh_frame)
> *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
Unfortunately it turns out that this breaks some older tool chains.
For example, using ELDK 3.1 (binutils 2.14-5) we get:
arm-linux-ld:/home/wd/git/u-boot/work/cpu/s3c44b0/u-boot.lds:39: parse error
It seems this old version of ld does not understand the
*(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
line yet.
Do you see any want to make this backward compatible with older
versions of ld?
Thanks in advance.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Men will always be men -- no matter where they are.
-- Harry Mudd, "Mudd's Women", stardate 1329.8
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix all linker script to handle all rodata sections
2009-08-10 8:35 ` Wolfgang Denk
@ 2009-08-15 22:02 ` Wolfgang Denk
2009-08-17 19:20 ` Trent Piepho
0 siblings, 1 reply; 20+ messages in thread
From: Wolfgang Denk @ 2009-08-15 22:02 UTC (permalink / raw)
To: u-boot
Dear Trent Piepho,
on Mon, 10 Aug 2009 10:35:08 +0200 I wrote:
> Dear Trent Piepho,
>
> In message <1234999325-13456-1-git-send-email-tpiepho@freescale.com> you wrote:
> >
> > A recent gcc added a new unaligned rodata section called '.rodata.str1.1',
> > which needs to be added the the linker script. Instead of just adding this
> > one section, we use a wildcard ".rodata*" to get all rodata linker section
> > gcc has now and might add in the future.
> ...
> > I change this to:
> >
> > *(.text)
> > . = ALIGN(16);
> > *(.eh_frame)
> > *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
>
> Unfortunately it turns out that this breaks some older tool chains.
> For example, using ELDK 3.1 (binutils 2.14-5) we get:
>
> arm-linux-ld:/home/wd/git/u-boot/work/cpu/s3c44b0/u-boot.lds:39: parse error
>
> It seems this old version of ld does not understand the
>
> *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
>
> line yet.
>
> Do you see any want to make this backward compatible with older
> versions of ld?
>
> Thanks in advance.
Any comments on this? Or anybody else?
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Each honest calling, each walk of life, has its own elite, its own
aristocracy based on excellence of performance. - James Bryant Conant
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix all linker script to handle all rodata sections
2009-08-15 22:02 ` Wolfgang Denk
@ 2009-08-17 19:20 ` Trent Piepho
2009-08-17 19:33 ` Wolfgang Denk
0 siblings, 1 reply; 20+ messages in thread
From: Trent Piepho @ 2009-08-17 19:20 UTC (permalink / raw)
To: u-boot
On Sun, 16 Aug 2009, Wolfgang Denk wrote:
> > ...
> > > I change this to:
> > >
> > > *(.text)
> > > . = ALIGN(16);
> > > *(.eh_frame)
> > > *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
> >
> > Unfortunately it turns out that this breaks some older tool chains.
> > For example, using ELDK 3.1 (binutils 2.14-5) we get:
> >
> > arm-linux-ld:/home/wd/git/u-boot/work/cpu/s3c44b0/u-boot.lds:39: parse error
> >
> > It seems this old version of ld does not understand the
> >
> > *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
> >
> > line yet.
> >
> > Do you see any want to make this backward compatible with older
> > versions of ld?
I don't have an ld old enough to not like that line so I'm not sure
what the problem is exactly.
There wouldn't be any significant downside to changing it to:
*(SORT_BY_ALIGNMENT(.rodata*))
If that would work with your ld. Using *(.rodata*) will result in extra
padding and a larger data segment. It may not be all that much extra
though...
^ permalink raw reply [flat|nested] 20+ messages in thread
* [U-Boot] [PATCH] Fix all linker script to handle all rodata sections
2009-08-17 19:20 ` Trent Piepho
@ 2009-08-17 19:33 ` Wolfgang Denk
0 siblings, 0 replies; 20+ messages in thread
From: Wolfgang Denk @ 2009-08-17 19:33 UTC (permalink / raw)
To: u-boot
Dear Trent,
In message <Pine.LNX.4.58.0908171214470.11911@shell2.speakeasy.net> you wrote:
>
> > > Do you see any want to make this backward compatible with older
> > > versions of ld?
>
> I don't have an ld old enough to not like that line so I'm not sure
> what the problem is exactly.
The problem is that SORT_BY_ALIGNMENT() and SORT_BY_NAME() were
introduced for binutils 2.16, so any older versions will barf on the
linker scripts.
> There wouldn't be any significant downside to changing it to:
>
> *(SORT_BY_ALIGNMENT(.rodata*))
>
> If that would work with your ld. Using *(.rodata*) will result in extra
> padding and a larger data segment. It may not be all that much extra
> though...
Differences are minimal, actually.
Please see my approach to solve this at
http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/66080
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Veni, Vidi, VISA:
I came, I saw, I did a little shopping.
^ permalink raw reply [flat|nested] 20+ messages in thread
end of thread, other threads:[~2009-08-17 19:33 UTC | newest]
Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-07 23:29 [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs Matthew L. Creech
2009-01-22 1:11 ` Kim Phillips
2009-01-31 11:02 ` Trent Piepho
2009-01-31 20:23 ` Wolfgang Denk
2009-02-03 4:11 ` Trent Piepho
2009-02-17 2:05 ` Kim Phillips
2009-02-18 0:04 ` Wolfgang Denk
2009-02-18 18:52 ` Jon Loeliger
2009-02-18 21:54 ` Wolfgang Denk
2009-02-18 22:00 ` ksi at koi8.net
2009-02-18 23:17 ` Trent Piepho
2009-02-18 23:22 ` [U-Boot] [PATCH] Fix all linker script to handle all rodata sections Trent Piepho
2009-02-19 0:00 ` Wolfgang Denk
2009-02-19 17:52 ` Kim Phillips
2009-08-10 8:35 ` Wolfgang Denk
2009-08-15 22:02 ` Wolfgang Denk
2009-08-17 19:20 ` Trent Piepho
2009-08-17 19:33 ` Wolfgang Denk
2009-01-31 20:23 ` [U-Boot] [PATCH] Fix Freescale link scripts for newer GCCs Wolfgang Denk
2009-01-31 20:23 ` Wolfgang Denk
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox