<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp, branch users/nico/python-2</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>MC: Merge MCFragment.h into MCSection.h</title>
<updated>2025-06-30T16:41:53+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>i@maskray.me</email>
</author>
<published>2025-06-30T16:41:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=04395be630781451682060548ea8b94abec2947e'/>
<id>04395be630781451682060548ea8b94abec2947e</id>
<content type='text'>
... due to their close relationship. MCSection's inline functions (e.g.
iterator) access MCFragment, and we want MCFragment's inline functions
to access MCSection similarly (#146307).

Pull Request: https://github.com/llvm/llvm-project/pull/146315
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
... due to their close relationship. MCSection's inline functions (e.g.
iterator) access MCFragment, and we want MCFragment's inline functions
to access MCSection similarly (#146307).

Pull Request: https://github.com/llvm/llvm-project/pull/146315
</pre>
</div>
</content>
</entry>
<entry>
<title>MCFragment: Add addFixup to replace getFixups().push_back()</title>
<updated>2025-06-29T23:26:00+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>i@maskray.me</email>
</author>
<published>2025-06-29T23:26:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=2de51345fb3d81db5613419695498bdd829bccc5'/>
<id>2de51345fb3d81db5613419695498bdd829bccc5</id>
<content type='text'>
to not expose SmallVector to the callers. We will make fixup storage out
of line.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
to not expose SmallVector to the callers. We will make fixup storage out
of line.
</pre>
</div>
</content>
</entry>
<entry>
<title>ARM: Rename ARMMCExpr::VK_ to ARM::S_</title>
<updated>2025-06-16T06:29:07+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>i@maskray.me</email>
</author>
<published>2025-06-16T06:29:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f3021e79fd5a4cab5537f37df2e6010a325d0a7c'/>
<id>f3021e79fd5a4cab5537f37df2e6010a325d0a7c</id>
<content type='text'>
Prepare for removing ARMMCExpr. Adopt the new naming convention (S_
instead of VK_; the relocation specifier was previously named
`VariantKind`)) used by most other targets.

Make ARMMCAsmInfo.h include ARMMCExpr.h and change .cpp files to include
ARMMCAsmInfo.h. We will eventually remove ARMMCExpr.h.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Prepare for removing ARMMCExpr. Adopt the new naming convention (S_
instead of VK_; the relocation specifier was previously named
`VariantKind`)) used by most other targets.

Make ARMMCAsmInfo.h include ARMMCExpr.h and change .cpp files to include
ARMMCAsmInfo.h. We will eventually remove ARMMCExpr.h.
</pre>
</div>
</content>
</entry>
<entry>
<title>ARM: Replace deprecated MCExpr::print with MCAsmInfo::printExpr</title>
<updated>2025-06-16T00:19:14+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>i@maskray.me</email>
</author>
<published>2025-06-16T00:19:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=dcb8cd8ecdd74eb2ceca2365e0fb4c9545e3cd97'/>
<id>dcb8cd8ecdd74eb2ceca2365e0fb4c9545e3cd97</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ARMMCExpr: Migrate to MCSpecifierExpr</title>
<updated>2025-06-08T06:32:18+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>i@maskray.me</email>
</author>
<published>2025-06-08T06:32:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=532facc78e075255afde69f2d86f26e4d4dd4c7f'/>
<id>532facc78e075255afde69f2d86f26e4d4dd4c7f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>MCFixup: Remove FK_PCRel_ from getKindForSize</title>
<updated>2025-05-24T19:02:18+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>i@maskray.me</email>
</author>
<published>2025-05-24T19:02:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=7d71a356582c3cdffdfc01be29e171b87e44badb'/>
<id>7d71a356582c3cdffdfc01be29e171b87e44badb</id>
<content type='text'>
Remove FK_PCRel_* kinds from the generic fixup list, as they are not
generic like FK_Data_*. In getRelocType, FK_PCRel_* can be replaced with
FK_Data_* by leveraging the IsPCRel argument. Their inclusion in the
generic kind list caused confusion for PowerPC, RISCV, and VE targets.

The X86/M68k uses can be implemented as target-specific fixups.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove FK_PCRel_* kinds from the generic fixup list, as they are not
generic like FK_Data_*. In getRelocType, FK_PCRel_* can be replaced with
FK_Data_* by leveraging the IsPCRel argument. Their inclusion in the
generic kind list caused confusion for PowerPC, RISCV, and VE targets.

The X86/M68k uses can be implemented as target-specific fixups.
</pre>
</div>
</content>
</entry>
<entry>
<title>[MC][AArch64][ARM][X86] Push target-dependent assembler flags into targets (#139844)</title>
<updated>2025-05-18T19:09:43+00:00</updated>
<author>
<name>Jessica Clarke</name>
<email>jrtc27@jrtc27.com</email>
</author>
<published>2025-05-18T19:09:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=1b41599cf8972abbf0d2ee7595dba78a4b158af0'/>
<id>1b41599cf8972abbf0d2ee7595dba78a4b158af0</id>
<content type='text'>
The .syntax unified directive and .codeX/.code X directives are, other
than some simple common printing code, exclusively implemented in the
targets themselves. Thus, remove the corresponding MCAF_* flags and
reimplement the directives solely within the targets. This avoids
exposing all targets to all other targets' flags.

Since MCAF_SubsectionsViaSymbols is all that remains, convert it to its
own function like other directives, simplifying its implementation.

Note that, on X86, we now always need a target streamer when parsing
assembly, as it's now used for directives that aren't COFF-specific. It
still does not however need to do anything when producing a non-COFF
object file, so this commit does not introduce any new target streamers.

There is some churn in test output, and corresponding UTC regex changes,
due to comments no longer being flushed by these various directives (and
EmitEOL is not exposed outside MCAsmStreamer.cpp so we couldn't do so
even if we wanted to), but that was a bit odd to be doing anyway.

This is motivated by Morello LLVM, which adds yet another assembler flag
to distinguish A64 and C64 instruction sets, but did not update every
switch and so emits warnings during the build. Rather than fix those
warnings it seems better to instead make the problem not exist in the
first place via this change.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The .syntax unified directive and .codeX/.code X directives are, other
than some simple common printing code, exclusively implemented in the
targets themselves. Thus, remove the corresponding MCAF_* flags and
reimplement the directives solely within the targets. This avoids
exposing all targets to all other targets' flags.

Since MCAF_SubsectionsViaSymbols is all that remains, convert it to its
own function like other directives, simplifying its implementation.

Note that, on X86, we now always need a target streamer when parsing
assembly, as it's now used for directives that aren't COFF-specific. It
still does not however need to do anything when producing a non-COFF
object file, so this commit does not introduce any new target streamers.

There is some churn in test output, and corresponding UTC regex changes,
due to comments no longer being flushed by these various directives (and
EmitEOL is not exposed outside MCAsmStreamer.cpp so we couldn't do so
even if we wanted to), but that was a bit odd to be doing anyway.

This is motivated by Morello LLVM, which adds yet another assembler flag
to distinguish A64 and C64 instruction sets, but did not update every
switch and so emits warnings during the build. Rather than fix those
warnings it seems better to instead make the problem not exist in the
first place via this change.</pre>
</div>
</content>
</entry>
<entry>
<title>[ARM][MC] Add support for Armv8.1-M Mainline to '.arch' asm directive (#135184)</title>
<updated>2025-04-10T15:27:29+00:00</updated>
<author>
<name>Thomas BIZET</name>
<email>thomas.bizet@foss.st.com</email>
</author>
<published>2025-04-10T15:27:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3097ab0fe88809ca0cba754079766a56ec111df1'/>
<id>3097ab0fe88809ca0cba754079766a56ec111df1</id>
<content type='text'>
Armv8.1-M Mainline architecture is supported by Clang's driver &amp; LLVM's
ARM backend, but MC would report an 'Unknown Arch: armv8.1-m.main' error
when processing '.arch armv8.1-m.main' assembler directives.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Armv8.1-M Mainline architecture is supported by Clang's driver &amp; LLVM's
ARM backend, but MC would report an 'Unknown Arch: armv8.1-m.main' error
when processing '.arch armv8.1-m.main' assembler directives.</pre>
</div>
</content>
</entry>
<entry>
<title>Move ARM-specific MCSymbolRefExpr::VariantKind to ARMMCExpr::Specifier</title>
<updated>2025-03-22T06:08:40+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>i@maskray.me</email>
</author>
<published>2025-03-22T06:08:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=1edefc3ea056ea32984a20eabd848d36d8d43be3'/>
<id>1edefc3ea056ea32984a20eabd848d36d8d43be3</id>
<content type='text'>
Similar to previous migration done for other targets (PowerPC, X86,
etc).

Note: ARMELFObjectWriter::needsRelocateWithSymbol is conservative and
already includes most specifiers.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Similar to previous migration done for other targets (PowerPC, X86,
etc).

Note: ARMELFObjectWriter::needsRelocateWithSymbol is conservative and
already includes most specifiers.
</pre>
</div>
</content>
</entry>
<entry>
<title>[MC] Add MCTargetStreamer::getContext to simplify code</title>
<updated>2025-03-02T21:14:10+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>i@maskray.me</email>
</author>
<published>2025-03-02T21:14:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=31bf16a7a2e1f5e783af9055fa2a1d815c090da2'/>
<id>31bf16a7a2e1f5e783af9055fa2a1d815c090da2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
