<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/conf/ldscript.arm, branch stable/13</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>arm: align data section to the supersection.</title>
<updated>2024-12-08T13:19:42+00:00</updated>
<author>
<name>Michal Meloun</name>
<email>mmel@FreeBSD.org</email>
</author>
<published>2024-11-17T10:50:41+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=abed528a9726700303845f5c8b5162fcd32f31dc'/>
<id>abed528a9726700303845f5c8b5162fcd32f31dc</id>
<content type='text'>
Offset based data section alignment is probably not applicable to any system
other than i386.

MFC after:	4 week

(cherry picked from commit 60e72eb16a08bdebb40c99cdfcde04e606fe4f3e)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Offset based data section alignment is probably not applicable to any system
other than i386.

MFC after:	4 week

(cherry picked from commit 60e72eb16a08bdebb40c99cdfcde04e606fe4f3e)
</pre>
</div>
</content>
</entry>
<entry>
<title>arm: add read_frequently, read_mostly and exclusive_cache_line sections to linker script.</title>
<updated>2024-12-08T13:19:42+00:00</updated>
<author>
<name>Michal Meloun</name>
<email>mmel@FreeBSD.org</email>
</author>
<published>2024-11-17T10:39:19+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=a9956e87506f2c1b99d6fddc60a315e8dc18b55e'/>
<id>a9956e87506f2c1b99d6fddc60a315e8dc18b55e</id>
<content type='text'>
MFC after:	1 week

(cherry picked from commit d98a18d032e6ed3dbae30233d217c6597000e391)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
MFC after:	1 week

(cherry picked from commit d98a18d032e6ed3dbae30233d217c6597000e391)
</pre>
</div>
</content>
</entry>
<entry>
<title>arm: fix symbols around the .ARM.exidx section</title>
<updated>2024-12-08T13:19:42+00:00</updated>
<author>
<name>Michal Meloun</name>
<email>mmel@FreeBSD.org</email>
</author>
<published>2024-11-17T10:33:32+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=b9d95dc51a21449aa363b3bd963c330ebd690913'/>
<id>b9d95dc51a21449aa363b3bd963c330ebd690913</id>
<content type='text'>
Insert a direct assignment to the location counter to ensure that orphaned
sections cannot be emitted between the _exidx_start symbol and the .ARM.exidx
section.

Discussed with:	jrtc27
MFC after:	1 week

(cherry picked from commit 1701dfae1be3be6f8f1fdd3b6b636d3161b33420)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Insert a direct assignment to the location counter to ensure that orphaned
sections cannot be emitted between the _exidx_start symbol and the .ARM.exidx
section.

Discussed with:	jrtc27
MFC after:	1 week

(cherry picked from commit 1701dfae1be3be6f8f1fdd3b6b636d3161b33420)
</pre>
</div>
</content>
</entry>
<entry>
<title>arm: Fix typo in ldscript.arm.</title>
<updated>2024-12-08T13:19:42+00:00</updated>
<author>
<name>Michal Meloun</name>
<email>mmel@FreeBSD.org</email>
</author>
<published>2024-11-17T10:21:47+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=b66e0c51005a0c43c0bd7769cb155b617eb88b1d'/>
<id>b66e0c51005a0c43c0bd7769cb155b617eb88b1d</id>
<content type='text'>
MFC after:	1 week

(cherry picked from commit 0381f0b63b9a5e55d4eca3da5c35ab55e4ce948b)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
MFC after:	1 week

(cherry picked from commit 0381f0b63b9a5e55d4eca3da5c35ab55e4ce948b)
</pre>
</div>
</content>
</entry>
<entry>
<title>sys: Remove $FreeBSD$: one-line .c comment pattern</title>
<updated>2023-08-23T17:43:22+00:00</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2023-08-22T01:31:15+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=4fbf14e22d7b83de7080a8e491ba14a5785a0ff4'/>
<id>4fbf14e22d7b83de7080a8e491ba14a5785a0ff4</id>
<content type='text'>
Remove /^/[*/]\s*\$FreeBSD\$.*\n/

Similar commit in current:
(cherry picked from commit 71625ec9ad2a)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove /^/[*/]\s*\$FreeBSD\$.*\n/

Similar commit in current:
(cherry picked from commit 71625ec9ad2a)
</pre>
</div>
</content>
</entry>
<entry>
<title>Eliminate the generated ldscript for arm and arm64, and strip $a/$d marker</title>
<updated>2019-12-29T18:17:12+00:00</updated>
<author>
<name>Ian Lepore</name>
<email>ian@FreeBSD.org</email>
</author>
<published>2019-12-29T18:17:12+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=31333ebb9964e2ef53af143498639ec67f4ae40a'/>
<id>31333ebb9964e2ef53af143498639ec67f4ae40a</id>
<content type='text'>
symbols from the linked kernel.

The main thrust of this change is to generate a kernel that has the arm
"marker" symbols stripped. Marker symbols start with $a, $d, $t or $x, and
are emitted by the compiler to tell other toolchain components about the
locations of data embedded in the instruction stream (literal-pool
stuff). They are used for generating mixed-endian binaries (which we don't
support). The linked kernel has approximately 21,000 such symbols in it,
wasting space (500K in kernel.full, 190K in the final linked kernel), and
sometimes obscuring function names in stack tracebacks.

This change also simplifies the way the kernel is linked. Instead of using
sed to generate two different ldscript files to generate both an elf kernel
and a binary (elf headers stripped) kernel, we now use a single ldscript
that refers to a "text_start" symbol, and we provide the value for that
symbol using --defsym on the linker command line.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
symbols from the linked kernel.

The main thrust of this change is to generate a kernel that has the arm
"marker" symbols stripped. Marker symbols start with $a, $d, $t or $x, and
are emitted by the compiler to tell other toolchain components about the
locations of data embedded in the instruction stream (literal-pool
stuff). They are used for generating mixed-endian binaries (which we don't
support). The linked kernel has approximately 21,000 such symbols in it,
wasting space (500K in kernel.full, 190K in the final linked kernel), and
sometimes obscuring function names in stack tracebacks.

This change also simplifies the way the kernel is linked. Instead of using
sed to generate two different ldscript files to generate both an elf kernel
and a binary (elf headers stripped) kernel, we now use a single ldscript
that refers to a "text_start" symbol, and we provide the value for that
symbol using --defsym on the linker command line.
</pre>
</div>
</content>
</entry>
<entry>
<title>Expose the kernel's build-ID through sysctl</title>
<updated>2019-06-04T13:07:10+00:00</updated>
<author>
<name>Ed Maste</name>
<email>emaste@FreeBSD.org</email>
</author>
<published>2019-06-04T13:07:10+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=74cd06b42ea6f7b46f4782c511757bdfc038d6e8'/>
<id>74cd06b42ea6f7b46f4782c511757bdfc038d6e8</id>
<content type='text'>
After our migration (of certain architectures) to lld the kernel is built
with a unique build-ID.  Make it available via a sysctl and uname(1) to
allow the user to identify their running kernel.

Submitted by:	Ali Mashtizadeh &lt;ali_mashtizadeh.com&gt;
MFC after:	2 weeks
Relnotes:	Yes
Event:		Waterloo Hackathon 2019
Differential Revision:	https://reviews.freebsd.org/D20326
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
After our migration (of certain architectures) to lld the kernel is built
with a unique build-ID.  Make it available via a sysctl and uname(1) to
allow the user to identify their running kernel.

Submitted by:	Ali Mashtizadeh &lt;ali_mashtizadeh.com&gt;
MFC after:	2 weeks
Relnotes:	Yes
Event:		Waterloo Hackathon 2019
Differential Revision:	https://reviews.freebsd.org/D20326
</pre>
</div>
</content>
</entry>
<entry>
<title>remove CONSTRUCTORS from kernel linker scripts</title>
<updated>2016-07-28T13:54:46+00:00</updated>
<author>
<name>Ed Maste</name>
<email>emaste@FreeBSD.org</email>
</author>
<published>2016-07-28T13:54:46+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=45eff3df965297ade6e5781a488d9ede7b87f909'/>
<id>45eff3df965297ade6e5781a488d9ede7b87f909</id>
<content type='text'>
The linker script CONSTRUCTORS keyword is only meaningful "when linking
object file formats which do not support arbitrary sections, such as
ECOFF and XCOFF"[1] and is ignored for other object file formats.

LLVM's lld does not yet accept (and ignore) CONSTRUCTORS, so just remove
CONSTRUCTORS from the linker scripts as it has no effect.

[1] https://sourceware.org/binutils/docs/ld/Output-Section-Keywords.html

Reviewed by:	kib
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D7343
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The linker script CONSTRUCTORS keyword is only meaningful "when linking
object file formats which do not support arbitrary sections, such as
ECOFF and XCOFF"[1] and is ignored for other object file formats.

LLVM's lld does not yet accept (and ignore) CONSTRUCTORS, so just remove
CONSTRUCTORS from the linker scripts as it has no effect.

[1] https://sourceware.org/binutils/docs/ld/Output-Section-Keywords.html

Reviewed by:	kib
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D7343
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove STARTUP_PAGETABLE_ADDR from the ARM configs and replace it with</title>
<updated>2014-01-28T09:12:04+00:00</updated>
<author>
<name>Andrew Turner</name>
<email>andrew@FreeBSD.org</email>
</author>
<published>2014-01-28T09:12:04+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=979d76c94876df7d7b10c79d1b3c33b04143eb70'/>
<id>979d76c94876df7d7b10c79d1b3c33b04143eb70</id>
<content type='text'>
memory at the end of the kernel.

This helps reduce the SoC and board specific configuration required.

Reviewed by:	bsdimp
Tested by:	jmg (armeb), br
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
memory at the end of the kernel.

This helps reduce the SoC and board specific configuration required.

Reviewed by:	bsdimp
Tested by:	jmg (armeb), br
</pre>
</div>
</content>
</entry>
<entry>
<title>Correctly align the unwind tables. Without this clang may incorrectly align</title>
<updated>2013-03-10T00:47:19+00:00</updated>
<author>
<name>Andrew Turner</name>
<email>andrew@FreeBSD.org</email>
</author>
<published>2013-03-10T00:47:19+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=67727fbfceb0eb6d48c14919a702064b507a7cdf'/>
<id>67727fbfceb0eb6d48c14919a702064b507a7cdf</id>
<content type='text'>
them causing an alignment fault when producing a backtrace.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
them causing an alignment fault when producing a backtrace.
</pre>
</div>
</content>
</entry>
</feed>
