<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm5719-llvm/llvm/test/MC/PowerPC, branch meklort-10.0.1</title>
<subtitle>Project Ortega BCM5719 LLVM</subtitle>
<id>https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1</id>
<link rel='self' href='https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/'/>
<updated>2020-06-22T21:58:57+00:00</updated>
<entry>
<title>[PowerPC] Add support for vmsumudm</title>
<updated>2020-06-22T21:58:57+00:00</updated>
<author>
<name>Ahsan Saghir</name>
<email>saghir.ibm@gmail.com</email>
</author>
<published>2020-05-22T19:35:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=3428405fc4ec18b566d64bb1478acd631ccd40f4'/>
<id>urn:sha1:3428405fc4ec18b566d64bb1478acd631ccd40f4</id>
<content type='text'>
This patch adds support for Vector Multiply-Sum Unsigned Doubleword Modulo
instruction; vmsumudm.

Differential Revision: https://reviews.llvm.org/D80294

(cherry picked from commit a28e9f1208608f8d18750bb88ca74722fb0bcce4)
</content>
</entry>
<entry>
<title>[PowerPC] Delete PPCDarwinAsmPrinter and PPCMCAsmInfoDarwin</title>
<updated>2020-01-12T19:02:02+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>maskray@google.com</email>
</author>
<published>2020-01-02T03:27:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=ebd26cc8c434f40fe8079ee823e7657b5138769f'/>
<id>urn:sha1:ebd26cc8c434f40fe8079ee823e7657b5138769f</id>
<content type='text'>
Darwin support has been removed.

Reviewed By: nemanjai

Differential Revision: https://reviews.llvm.org/D72063
</content>
</entry>
<entry>
<title>[MC][PowerPC] Fix a crash when redefining a symbol after .set</title>
<updated>2019-12-13T17:31:54+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>maskray@google.com</email>
</author>
<published>2019-12-13T00:18:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=f99eedeb72644671cd584f48e4c136d47f6b0020'/>
<id>urn:sha1:f99eedeb72644671cd584f48e4c136d47f6b0020</id>
<content type='text'>
Fix PR44284. This is probably not valid assembly but we should not crash.

Reviewed By: luporl, #powerpc, steven.zhang

Differential Revision: https://reviews.llvm.org/D71443
</content>
</entry>
<entry>
<title>[PowerPC] Implementing overflow version for XO-Form instructions</title>
<updated>2019-11-11T15:50:46+00:00</updated>
<author>
<name>Stefan Pintile</name>
<email>stefanp@kuat.aus.stglabs.ibm.com</email>
</author>
<published>2019-11-08T22:14:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=fdf3d1766bbabb48a397fae646facbe2690313f6'/>
<id>urn:sha1:fdf3d1766bbabb48a397fae646facbe2690313f6</id>
<content type='text'>
The Overflow version of XO-Form instruction uses the SO, OV and
OV32 special registers.

This changes modifies existing multiclasses and instruction
definitions to allow for the use of the XER register to record
the various types if overflow from possible add, subtract and
multiply instructions. It then modifies the existing instructions
as to use these multiclasses as needed.

Patch By: Kamau Bridgeman

Differential Revision: https://reviews.llvm.org/D66902
</content>
</entry>
<entry>
<title>[PowerPC] Support extended mnemonics mffprwz etc.</title>
<updated>2019-08-29T21:53:59+00:00</updated>
<author>
<name>Jinsong Ji</name>
<email>jji@us.ibm.com</email>
</author>
<published>2019-08-29T21:53:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=1ed7d2119ee2bb5b7cc1368d739b13f5ce0692da'/>
<id>urn:sha1:1ed7d2119ee2bb5b7cc1368d739b13f5ce0692da</id>
<content type='text'>
Summary:
Reported in https://github.com/opencv/opencv/issues/15413.

We have serveral extended mnemonics for Move To/From Vector-Scalar Register Instructions
eg: mffprd,mtfprd etc.

We only support one of them, this patch add the others.

Reviewers: nemanjai, steven.zhang, hfinkel, #powerpc

Reviewed By: hfinkel

Subscribers: wuzish, qcolombet, hiraditya, kbarton, MaskRay, shchenz, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D66963

llvm-svn: 370411
</content>
</entry>
<entry>
<title>Revert r369233.</title>
<updated>2019-08-23T18:01:13+00:00</updated>
<author>
<name>Manoj Gupta</name>
<email>manojgupta@google.com</email>
</author>
<published>2019-08-23T18:01:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=30232770fbe5f5df7d5d01bd418c5ef9cc76b75e'/>
<id>urn:sha1:30232770fbe5f5df7d5d01bd418c5ef9cc76b75e</id>
<content type='text'>
This breaks building of some projects like libfuse and alsa-lib
that now fail when linking.
Error details in PR43092.

llvm-svn: 369790
</content>
</entry>
<entry>
<title>[MC] Don't emit .symver redirected symbols to the symbol table</title>
<updated>2019-08-19T06:17:30+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>maskray@google.com</email>
</author>
<published>2019-08-19T06:17:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=38426c114f6e50f8638bdd656f2f423151bc8eca'/>
<id>urn:sha1:38426c114f6e50f8638bdd656f2f423151bc8eca</id>
<content type='text'>
GNU as keeps the original symbol in the symbol table for defined @ and
@@, but suppresses it in other cases (@@@ or undefined). The original
symbol is usually undesired:
In a shared object, the original symbol can be localized with a version
script, but it is hard to remove/localize in an archive:

1) a post-processing step removes the undesired original symbol
2) consumers (executable) of the archive are built with the
   version script

Moreover, it can cause linker issues like binutils PR/18703 if the
original symbol name and the base name of the versioned symbol is the
same (both ld.bfd and gold have some code to work around defined @ and
@@). In lld, if it sees f and f@v1:

  --version-script =(printf 'v1 {};') =&gt; f and f@v1
  --version-script =(printf 'v1 { f; };') =&gt; f@v1 and f@@v1

It can be argued that @@@ added on 2000-11-13 corrected the @ and @@ mistake.

This patch catches some more multiple version errors (defined @ and @@),
and consistently suppress the original symbol. This addresses all the
problems listed above.

If the user wants other aliases to the versioned symbol, they can copy
the original symbol to other symbol names with .set directive, e.g.

    .symver f, f@v1  # emit f@v1 but not f into .symtab
    .set f_impl, f   # emit f_impl into .symtab

llvm-svn: 369233
</content>
</entry>
<entry>
<title>[PPC64] Update LocalEntry from assigned symbols</title>
<updated>2019-05-21T10:41:25+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>maskray@google.com</email>
</author>
<published>2019-05-21T10:41:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=cd36a2857ea172d70a7a841f4b622a5f408944a9'/>
<id>urn:sha1:cd36a2857ea172d70a7a841f4b622a5f408944a9</id>
<content type='text'>
On PowerPC64 ELFv2 ABI, functions may have 2 entry points: global and local.
The local entry point location of a function is stored in the st_other field of the symbol, as an offset relative to the global entry point.

In order to make symbol assignments (e.g. .equ/.set) work properly with this, PPCTargetELFStreamer already copies the local entry bits from the source symbol to the destination one, on emitAssignment(). The problem is that this copy is performed only at the assignment location, where the source symbol may not yet have processed the .localentry directive, that sets the local entry. This may cause the destination symbol to end up with wrong local entry information. Other symbol info is not affected by this because, in this case, the destination symbol value is actually a symbol reference.

This change keeps track of these assignments, and update all needed st_other fields when finish() is called.

Patch by Leandro Lupori!

Reviewed By: MaskRay

Differential Revision: https://reviews.llvm.org/D56586

llvm-svn: 361237
</content>
</entry>
<entry>
<title>[PowerPC] Support .reloc *, R_PPC{,64}_NONE, *</title>
<updated>2019-05-17T06:04:11+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>maskray@google.com</email>
</author>
<published>2019-05-17T06:04:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=ad7199f3e60a49db023099dcb879fcc9cdf94a2e'/>
<id>urn:sha1:ad7199f3e60a49db023099dcb879fcc9cdf94a2e</id>
<content type='text'>
This can be used to create references among sections. When --gc-sections
is used, the referenced section will be retained if the origin section
is retained.

llvm-svn: 360990
</content>
</entry>
<entry>
<title>[MC][ELF] Copy top 3 bits of st_other to .symver aliases</title>
<updated>2019-05-10T17:09:25+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>maskray@google.com</email>
</author>
<published>2019-05-10T17:09:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=9529c563eb54e0937d6945e142a693d03b4b6893'/>
<id>urn:sha1:9529c563eb54e0937d6945e142a693d03b4b6893</id>
<content type='text'>
On PowerPC64 ELFv2 ABI, the top 3 bits of st_other encode the local
entry offset. A versioned symbol alias created by .symver should copy
the bits from the source symbol.

This partly fixes PR41048. A full fix needs tracking of .set assignments
and updating st_other fields when finish() is called, see D56586.

Patch by Alfredo Dal'Ava Júnior

Differential Revision: https://reviews.llvm.org/D59436

llvm-svn: 360442
</content>
</entry>
</feed>
