[llvm-branch-commits] [llvm] PR for llvm/llvm-project#80877 (PR #80878)
brad0 wrote: > This PR, if merged into 18.1, should fix > [rust-lang/rust#108835](https://github.com/rust-lang/rust/issues/108835) Ya, that's especially why I pushed it. https://github.com/llvm/llvm-project/pull/80878 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [Sparc] limit MaxAtomicSizeInBitsSupported to 32 for 32-bit Sparc. (#81655) (PR #81713)
https://github.com/brad0 created https://github.com/llvm/llvm-project/pull/81713 When in 32-bit mode, the backend doesn't currently implement 64-bit atomics, even though the hardware is capable if you have specified a V9 CPU. Thus, limit the width to 32-bit, for now, leaving behind a TODO. This fixes a regression triggered by PR #73176. (cherry picked from commit c1a99b2c77499176362f24f09a39850867122ea4) >From 564fbdef0327af0fb24939171b891955e1062ffc Mon Sep 17 00:00:00 2001 From: Brad Smith Date: Wed, 14 Feb 2024 02:11:56 -0500 Subject: [PATCH] [Sparc] limit MaxAtomicSizeInBitsSupported to 32 for 32-bit Sparc. (#81655) When in 32-bit mode, the backend doesn't currently implement 64-bit atomics, even though the hardware is capable if you have specified a V9 CPU. Thus, limit the width to 32-bit, for now, leaving behind a TODO. This fixes a regression triggered by PR #73176. (cherry picked from commit c1a99b2c77499176362f24f09a39850867122ea4) --- llvm/lib/Target/Sparc/SparcISelLowering.cpp | 11 +- llvm/test/CodeGen/SPARC/64atomics.ll | 54 .../CodeGen/SPARC/atomicrmw-uinc-udec-wrap.ll | 120 +- 3 files changed, 96 insertions(+), 89 deletions(-) diff --git a/llvm/lib/Target/Sparc/SparcISelLowering.cpp b/llvm/lib/Target/Sparc/SparcISelLowering.cpp index bdefb0841a124b..13184a1eb0b101 100644 --- a/llvm/lib/Target/Sparc/SparcISelLowering.cpp +++ b/llvm/lib/Target/Sparc/SparcISelLowering.cpp @@ -1764,9 +1764,14 @@ SparcTargetLowering::SparcTargetLowering(const TargetMachine &TM, // Atomics are supported on SparcV9. 32-bit atomics are also // supported by some Leon SparcV8 variants. Otherwise, atomics // are unsupported. - if (Subtarget->isV9()) -setMaxAtomicSizeInBitsSupported(64); - else if (Subtarget->hasLeonCasa()) + if (Subtarget->isV9()) { +// TODO: we _ought_ to be able to support 64-bit atomics on 32-bit sparcv9, +// but it hasn't been implemented in the backend yet. +if (Subtarget->is64Bit()) + setMaxAtomicSizeInBitsSupported(64); +else + setMaxAtomicSizeInBitsSupported(32); + } else if (Subtarget->hasLeonCasa()) setMaxAtomicSizeInBitsSupported(32); else setMaxAtomicSizeInBitsSupported(0); diff --git a/llvm/test/CodeGen/SPARC/64atomics.ll b/llvm/test/CodeGen/SPARC/64atomics.ll index 89175b6242e639..b11c0498fbbb46 100644 --- a/llvm/test/CodeGen/SPARC/64atomics.ll +++ b/llvm/test/CodeGen/SPARC/64atomics.ll @@ -1,12 +1,14 @@ -; RUN: llc < %s -march=sparcv9 -verify-machineinstrs | FileCheck %s +; RUN: llc < %s -march=sparc -mcpu=v9 -verify-machineinstrs | FileCheck %s --check-prefixes=SPARC,SPARC32 +; RUN: llc < %s -march=sparcv9 -verify-machineinstrs | FileCheck %s --check-prefixes=SPARC,SPARC64 -; CHECK-LABEL: test_atomic_i64 -; CHECK: ldx [%o0] -; CHECK: membar -; CHECK: ldx [%o1] -; CHECK: membar -; CHECK: membar -; CHECK: stx {{.+}}, [%o2] +; SPARC-LABEL: test_atomic_i64 +; SPARC32: __atomic_load_8 +; SPARC64: ldx [%o0] +; SPARC64: membar +; SPARC64: ldx [%o1] +; SPARC64: membar +; SPARC64: membar +; SPARC64: stx {{.+}}, [%o2] define i64 @test_atomic_i64(i64* %ptr1, i64* %ptr2, i64* %ptr3) { entry: %0 = load atomic i64, i64* %ptr1 acquire, align 8 @@ -16,9 +18,10 @@ entry: ret i64 %2 } -; CHECK-LABEL: test_cmpxchg_i64 -; CHECK: mov 123, [[R:%[gilo][0-7]]] -; CHECK: casx [%o1], %o0, [[R]] +; SPARC-LABEL: test_cmpxchg_i64 +; SPARC32: __atomic_compare_exchange_8 +; SPARC64: mov 123, [[R:%[gilo][0-7]]] +; SPARC64: casx [%o1], %o0, [[R]] define i64 @test_cmpxchg_i64(i64 %a, i64* %ptr) { entry: @@ -27,8 +30,9 @@ entry: ret i64 %b } -; CHECK-LABEL: test_swap_i64 -; CHECK: casx [%o1], +; SPARC-LABEL: test_swap_i64 +; SPARC32: __atomic_exchange_8 +; SPARC64: casx [%o1], define i64 @test_swap_i64(i64 %a, i64* %ptr) { entry: @@ -36,23 +40,25 @@ entry: ret i64 %b } -; CHECK-LABEL: test_load_sub_64 -; CHECK: membar -; CHECK: sub -; CHECK: casx [%o0] -; CHECK: membar +; SPARC-LABEL: test_load_sub_64 +; SPARC32: __atomic_fetch_sub_8 +; SPARC64: membar +; SPARC64: sub +; SPARC64: casx [%o0] +; SPARC64: membar define zeroext i64 @test_load_sub_64(i64* %p, i64 zeroext %v) { entry: %0 = atomicrmw sub i64* %p, i64 %v seq_cst ret i64 %0 } -; CHECK-LABEL: test_load_max_64 -; CHECK: membar -; CHECK: cmp -; CHECK: movg %xcc -; CHECK: casx [%o0] -; CHECK: membar +; SPARC-LABEL: test_load_max_64 +; SPARC32: __atomic_compare_exchange_8 +; SPARC64: membar +; SPARC64: cmp +; SPARC64: movg %xcc +; SPARC64: casx [%o0] +; SPARC64: membar define zeroext i64 @test_load_max_64(i64* %p, i64 zeroext %v) { entry: %0 = atomicrmw max i64* %p, i64 %v seq_cst diff --git a/llvm/test/CodeGen/SPARC/atomicrmw-uinc-udec-wrap.ll b/llvm/test/CodeGen/SPARC/atomicrmw-uinc-udec-wrap.ll index 9b49035c460407..0f9feeb17716af 100644 --- a/llvm/test/CodeGen/SPARC/atomicrmw-u
[llvm-branch-commits] [llvm] [Sparc] limit MaxAtomicSizeInBitsSupported to 32 for 32-bit Sparc. (#81655) (PR #81713)
https://github.com/brad0 milestoned https://github.com/llvm/llvm-project/pull/81713 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/18.x: [Support/ELF] Add OpenBSD PT_OPENBSD_SYSCALLS constant. (PR #82143)
https://github.com/brad0 approved this pull request. https://github.com/llvm/llvm-project/pull/82143 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/18.x: [llvm-readobj] Add support for the PT_OPENBSD_SYSCALLS segment type. (#82122) (PR #82318)
https://github.com/brad0 approved this pull request. https://github.com/llvm/llvm-project/pull/82318 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/18.x: [llvm-objdump] Add support for the PT_OPENBSD_SYSCALLS segment type. (#82121) (PR #82317)
https://github.com/brad0 approved this pull request. https://github.com/llvm/llvm-project/pull/82317 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [llvm-readobj, ELF] Support --decompress/-z (#82594) (PR #82713)
https://github.com/brad0 milestoned https://github.com/llvm/llvm-project/pull/82713 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [llvm-readobj, ELF] Support --decompress/-z (#82594) (PR #82713)
https://github.com/brad0 created https://github.com/llvm/llvm-project/pull/82713 When a section has the SHF_COMPRESSED flag, -p/-x dump the compressed content by default. In GNU readelf, if --decompress/-z is specified, -p/-x will dump the decompressed content. This patch implements the option. Close #82507 (cherry picked from commit 26d71d9ed56c4c23e6284dac7a9bdf603a5801f3) >From 0a534697de043d57fbc3c37591ee603b994e2606 Mon Sep 17 00:00:00 2001 From: Brad Smith Date: Thu, 22 Feb 2024 19:20:28 -0500 Subject: [PATCH] [llvm-readobj,ELF] Support --decompress/-z (#82594) When a section has the SHF_COMPRESSED flag, -p/-x dump the compressed content by default. In GNU readelf, if --decompress/-z is specified, -p/-x will dump the decompressed content. This patch implements the option. Close #82507 (cherry picked from commit 26d71d9ed56c4c23e6284dac7a9bdf603a5801f3) --- llvm/docs/CommandGuide/llvm-readelf.rst | 5 ++ llvm/docs/CommandGuide/llvm-readobj.rst | 5 ++ .../ELF/decompress-zlib-unsupported.test | 32 .../llvm-readobj/ELF/decompress-zlib.test | 76 +++ .../ELF/decompress-zstd-unsupported.test | 31 .../llvm-readobj/ELF/decompress-zstd.test | 28 +++ llvm/tools/llvm-readobj/ObjDumper.cpp | 26 ++- llvm/tools/llvm-readobj/ObjDumper.h | 4 +- llvm/tools/llvm-readobj/Opts.td | 2 + llvm/tools/llvm-readobj/llvm-readobj.cpp | 6 +- 10 files changed, 209 insertions(+), 6 deletions(-) create mode 100644 llvm/test/tools/llvm-readobj/ELF/decompress-zlib-unsupported.test create mode 100644 llvm/test/tools/llvm-readobj/ELF/decompress-zlib.test create mode 100644 llvm/test/tools/llvm-readobj/ELF/decompress-zstd-unsupported.test create mode 100644 llvm/test/tools/llvm-readobj/ELF/decompress-zstd.test diff --git a/llvm/docs/CommandGuide/llvm-readelf.rst b/llvm/docs/CommandGuide/llvm-readelf.rst index 6ee4a5dfb15917..675628fdda45ec 100644 --- a/llvm/docs/CommandGuide/llvm-readelf.rst +++ b/llvm/docs/CommandGuide/llvm-readelf.rst @@ -38,6 +38,11 @@ OPTIONS Display the contents of the basic block address map section(s), which contain the address of each function, along with the relative offset of each basic block. +.. option:: --decompress, -z + + Dump decompressed section content when used with ``-x`` or ``-p``. + If the section(s) are not compressed, they are displayed as is. + .. option:: --demangle, -C Display demangled symbol names in the output. diff --git a/llvm/docs/CommandGuide/llvm-readobj.rst b/llvm/docs/CommandGuide/llvm-readobj.rst index cb9232ef5e560a..6d78a038723445 100644 --- a/llvm/docs/CommandGuide/llvm-readobj.rst +++ b/llvm/docs/CommandGuide/llvm-readobj.rst @@ -56,6 +56,11 @@ file formats. Display the address-significance table. +.. option:: --decompress, -z + + Dump decompressed section content when used with ``-x`` or ``-p``. + If the section(s) are not compressed, they are displayed as is. + .. option:: --expand-relocs When used with :option:`--relocs`, display each relocation in an expanded diff --git a/llvm/test/tools/llvm-readobj/ELF/decompress-zlib-unsupported.test b/llvm/test/tools/llvm-readobj/ELF/decompress-zlib-unsupported.test new file mode 100644 index 00..f4c73de7ca6c9d --- /dev/null +++ b/llvm/test/tools/llvm-readobj/ELF/decompress-zlib-unsupported.test @@ -0,0 +1,32 @@ +# UNSUPPORTED: zlib +# RUN: yaml2obj %s -o %t +# RUN: llvm-readobj -z -p .a -x .b %t 2>&1 | FileCheck %s -DFILE=%t + +# CHECK: String dump of section '.a': +# CHECK-NEXT: warning: '[[FILE]]': LLVM was not built with LLVM_ENABLE_ZLIB or did not find zlib at build time +# CHECK-NEXT: [ 0] . +# CHECK-NEXT: [ 8] . +# CHECK-NEXT: [10] . +# CHECK-NEXT: [18] x.c. +# CHECK-NEXT: [1e] . +# CHECK-NEXT: [20] . +# CHECK-NEXT: Hex dump of section '.b': +# CHECK-NEXT: warning: '[[FILE]]': LLVM was not built with LLVM_ENABLE_ZLIB or did not find zlib at build time +# CHECK-NEXT: 0x 0100 0100 +# CHECK-NEXT: 0x0010 0100 789c6304 0200 x.c. +# CHECK-NEXT: 0x0020 02 . + +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL +Sections: + - Name: .a +Type: SHT_PROGBITS +Flags: [SHF_COMPRESSED] +Content: 010001000100789c6304020002 + - Name: .b +Type: SHT_PROGBITS +Flags: [SHF_COMPRESSED] +Content: 010001000100789c6304020002 diff --git a/llvm/test/tools/llvm-readobj/ELF/decompress-zlib.test b/llvm/test/tools/llvm-readobj/ELF/decompress-zlib.test new file mode 100644 index 00..ea7a8854eb1a0c --- /dev/null +++ b/llvm/test/tools/llvm-readobj/ELF/decompress-zlib.test @@ -0,0 +1,76 @@ +# REQUIRES: zlib +## Test --decompress/-z. + +# RUN: yaml2obj %s -o %t + +# RUN: llvm-readelf -z -x .s
[llvm-branch-commits] [llvm] release/18.x: [llvm-readobj, ELF] Support --decompress/-z (#82594) (PR #82693)
https://github.com/brad0 closed https://github.com/llvm/llvm-project/pull/82693 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [llvm-readobj, ELF] Support --decompress/-z (#82594) (PR #82713)
brad0 wrote: > Does `/cherry-pick $commit_id` work? I think it's the preferred way to > backport a commit. I tried. https://github.com/llvm/llvm-project/issues/82692 https://github.com/llvm/llvm-project/pull/82713 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [llvm-readobj, ELF] Support --decompress/-z (#82594) (PR #82713)
https://github.com/brad0 closed https://github.com/llvm/llvm-project/pull/82713 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/18.x: [llvm-readobj, ELF] Support --decompress/-z (#82594) (PR #82718)
brad0 wrote: > LGTM since this helps at least FreeBSD. Does OpenBSD want to try llvm binary > utilities? We're slowly moving in that direction with sparing use of objcopy and readelf in some places with a desire for more like ar, ranlib and strip. https://github.com/llvm/llvm-project/pull/82718 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [openmp] release/18.x: [OpenMP] Implement __kmp_is_address_mapped on DragonFlyBSD. (#82895) (PR #82940)
brad0 wrote: > @brad0 Generally we don't back port feature-implementation patches but we > (actually it's me) already made an exception by mistake > [ebc589e](https://github.com/llvm/llvm-project/commit/ebc589e44ffe7b77cc500f3d2dc1a7ba11dd82b1). > How many patches like this do you expect to be back ported? Just this one. But I can drop it. It's not critical. https://github.com/llvm/llvm-project/pull/82940 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [openmp] release/18.x: [OpenMP] Implement __kmp_is_address_mapped on DragonFlyBSD. (#82895) (PR #82940)
https://github.com/brad0 closed https://github.com/llvm/llvm-project/pull/82940 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [lld] [llvm] release/18.x: [Mips] Fix unable to handle inline assembly ends with compat-branch o… (#77291) (PR #82870)
https://github.com/brad0 approved this pull request. https://github.com/llvm/llvm-project/pull/82870 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [Sparc] limit MaxAtomicSizeInBitsSupported to 32 for 32-bit Sparc. (#81655) (PR #81713)
https://github.com/brad0 closed https://github.com/llvm/llvm-project/pull/81713 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/18.x: [Mips] Fix missing sign extension in expansion of sub-word atomic max (#77072) (PR #84566)
brad0 wrote: @topperc https://github.com/llvm/llvm-project/pull/84566 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/18.x: MIPS: fix emitDirectiveCpsetup on N32 (#80534) (PR #83198)
https://github.com/brad0 approved this pull request. https://github.com/llvm/llvm-project/pull/83198 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] Backport #85277 (PR #85422)
brad0 wrote: /cherry-pick 328cb9b731cb61eaa853fa6cc3bd641dd1d71b98 https://github.com/llvm/llvm-project/pull/85422 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/18.x: [Mips] Fix missing sign extension in expansion of sub-word atomic max (#77072) (PR #84566)
https://github.com/brad0 approved this pull request. https://github.com/llvm/llvm-project/pull/84566 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/18.x: [AVR] Remove earlyclobber from LDDRdPtrQ (#85277) (PR #85512)
https://github.com/brad0 closed https://github.com/llvm/llvm-project/pull/85512 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] Backport #85277 (PR #85422)
https://github.com/brad0 reopened https://github.com/llvm/llvm-project/pull/85422 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] Backport #85277 (PR #85422)
brad0 wrote: Sorry, I didn't mean to mess that up. https://github.com/llvm/llvm-project/pull/85422 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/18.x: [Mips] Fix missing sign extension in expansion of sub-word atomic max (#77072) (PR #84566)
@@ -2001,8 +2225,6 @@ define i16 @test_umax_16(ptr nocapture %ptr, i16 signext %val) { ; MIPSELR6-NEXT: $BB6_1: # %entry ; MIPSELR6-NEXT:# =>This Inner Loop Header: Depth=1 ; MIPSELR6-NEXT:ll $2, 0($6) -; MIPSELR6-NEXT:and $2, $2, $8 brad0 wrote: > @brad0 I think I missed this in the previous review. Why is it ok to remove > the AND from the unsigned tests? My original command about the AND being > unnecssary was for the signed cases. Looking at the PR I am not sure that was clear and @yingopq might have interpreted your comment as to remove all together. https://github.com/llvm/llvm-project/pull/84566 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/18.x: [Mips] Fix missing sign extension in expansion of sub-word atomic max (#77072) (PR #84566)
https://github.com/brad0 closed https://github.com/llvm/llvm-project/pull/84566 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/18.x: [Mips] Restore wrong deletion of instruction 'and' in unsigned min/max processing. (#85902) (PR #86424)
brad0 wrote: @topperc https://github.com/llvm/llvm-project/pull/86424 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [openmp] release/18x: [OpenMP][AIX] Affinity implementation for AIX (#84984) (PR #86695)
https://github.com/brad0 approved this pull request. https://github.com/llvm/llvm-project/pull/86695 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [libcxx] [libcxxabi] release/18.x: [libcxx][libcxxabi] Fix build for OpenBSD (#92186) (PR #92601)
https://github.com/brad0 approved this pull request. https://github.com/llvm/llvm-project/pull/92601 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] release/18.x: [clang] Don't assume location of compiler-rt for OpenBSD (#92183) (PR #92293)
https://github.com/brad0 approved this pull request. https://github.com/llvm/llvm-project/pull/92293 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [libcxx] [libcxxabi] release/18.x: [libcxx][libcxxabi] Fix build for OpenBSD (#92186) (PR #92601)
brad0 wrote: > Thanks, both of you. I can't merge these, so I am guessing someone else will > come along that can? The RE manager does. This release cycle being tsteller. https://github.com/llvm/llvm-project/pull/92601 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [llvm] [SPARC] Prefer RDPC over CALL to implement GETPCX for 64-bit target (PR #77196)
https://github.com/brad0 closed https://github.com/llvm/llvm-project/pull/77196 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] [llvm] [SPARC] Prefer RDPC over CALL to implement GETPCX for 64-bit target (PR #77196)
brad0 wrote: I intentionally restored the branch as I only noticed after the merge that the target branch was set incorrectly. It wasn't merged into the LLVM repo. https://github.com/llvm/llvm-project/pull/77196 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [clang] [SPARC] Prefer RDPC over CALL to implement GETPCX for 64-bit target (PR #77196)
brad0 wrote: > Uh oh, seems like I couldn't merge it with the tool either... Guess I'll open > a new PR to merge this, would that be okay? @brad0 @s-barannikov Ya, sure. Whatever path is easier and quickest for you. https://github.com/llvm/llvm-project/pull/77196 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/19.x: [MIPS] Optimize sortRelocs for o32 (PR #106008)
https://github.com/brad0 milestoned https://github.com/llvm/llvm-project/pull/106008 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] 018984a - [PowerPC] Fix va_arg in C++, Objective-C on 32-bit ELF targets
Author: George Koehler Date: 2021-01-23T00:13:36-05:00 New Revision: 018984ae6833fae107aa9c502ab5536efceca88e URL: https://github.com/llvm/llvm-project/commit/018984ae6833fae107aa9c502ab5536efceca88e DIFF: https://github.com/llvm/llvm-project/commit/018984ae6833fae107aa9c502ab5536efceca88e.diff LOG: [PowerPC] Fix va_arg in C++, Objective-C on 32-bit ELF targets In the PPC32 SVR4 ABI, a va_list has copies of registers from the function call. va_arg looked in the wrong registers for (the pointer representation of) an object in Objective-C, and for some types in C++. Fix va_arg to look in the general-purpose registers, not the floating-point registers. Also fix va_arg for some C++ types, like a member function pointer, that are aggregates for the ABI. Anthony Richardby found the problem in Objective-C. Eli Friedman suggested part of this fix. Fixes https://bugs.llvm.org/show_bug.cgi?id=47921 Reviewed By: efriedma, nemanjai Differential Revision: https://reviews.llvm.org/D90329 Added: clang/test/CodeGenCXX/ppc32-varargs-method.cpp clang/test/CodeGenObjC/ppc32-varargs-id.m Modified: clang/lib/CodeGen/TargetInfo.cpp Removed: diff --git a/clang/lib/CodeGen/TargetInfo.cpp b/clang/lib/CodeGen/TargetInfo.cpp index 9a11a0720f3c..bcd24292ff41 100644 --- a/clang/lib/CodeGen/TargetInfo.cpp +++ b/clang/lib/CodeGen/TargetInfo.cpp @@ -4709,13 +4709,12 @@ Address PPC32_SVR4_ABIInfo::EmitVAArg(CodeGenFunction &CGF, Address VAList, // }; bool isI64 = Ty->isIntegerType() && getContext().getTypeSize(Ty) == 64; - bool isInt = - Ty->isIntegerType() || Ty->isPointerType() || Ty->isAggregateType(); + bool isInt = !Ty->isFloatingType(); bool isF64 = Ty->isFloatingType() && getContext().getTypeSize(Ty) == 64; // All aggregates are passed indirectly? That doesn't seem consistent // with the argument-lowering code. - bool isIndirect = Ty->isAggregateType(); + bool isIndirect = isAggregateTypeForABI(Ty); CGBuilderTy &Builder = CGF.Builder; diff --git a/clang/test/CodeGenCXX/ppc32-varargs-method.cpp b/clang/test/CodeGenCXX/ppc32-varargs-method.cpp new file mode 100644 index ..2295f0125a88 --- /dev/null +++ b/clang/test/CodeGenCXX/ppc32-varargs-method.cpp @@ -0,0 +1,20 @@ +// REQUIRES: powerpc-registered-target +// RUN: %clang_cc1 -triple powerpc-unknown-openbsd -emit-llvm -o - %s | FileCheck %s + +#include + +class something; +typedef void (something::*method)(); + +method test(va_list ap) { + return va_arg(ap, method); +} +// CHECK: using_regs: +// CHECK-NEXT: getelementptr inbounds %struct.__va_list_tag, %struct.__va_list_tag* %{{[0-9]+}}, i32 0, i32 4 +// CHECK-NEXT: load i8*, i8** %{{[0-9]+}}, align 4 +// CHECK-NEXT: mul i8 %numUsedRegs, 4 +// CHECK-NEXT: getelementptr inbounds i8, i8* %{{[0-9]+}}, i8 %{{[0-9]+}} +// CHECK-NEXT: bitcast i8* %{{[0-9]+}} to { i32, i32 }** +// CHECK-NEXT: add i8 %numUsedRegs, 1 +// CHECK-NEXT: store i8 %{{[0-9]+}}, i8* %gpr, align 4 +// CHECK-NEXT: br label %cont diff --git a/clang/test/CodeGenObjC/ppc32-varargs-id.m b/clang/test/CodeGenObjC/ppc32-varargs-id.m new file mode 100644 index ..3730efb02d28 --- /dev/null +++ b/clang/test/CodeGenObjC/ppc32-varargs-id.m @@ -0,0 +1,33 @@ +// REQUIRES: powerpc-registered-target +// RUN: %clang_cc1 -triple powerpc-unknown-openbsd -fblocks -emit-llvm -o - %s | FileCheck %s + +#include + +id testObject(va_list ap) { + return va_arg(ap, id); +} +// CHECK: @testObject +// CHECK: using_regs: +// CHECK-NEXT: getelementptr inbounds %struct.__va_list_tag, %struct.__va_list_tag* %{{[0-9]+}}, i32 0, i32 4 +// CHECK-NEXT: load i8*, i8** %{{[0-9]+}}, align 4 +// CHECK-NEXT: mul i8 %numUsedRegs, 4 +// CHECK-NEXT: getelementptr inbounds i8, i8* %{{[0-9]+}}, i8 %{{[0-9]+}} +// CHECK-NEXT: bitcast i8* %{{[0-9]+}} to i8** +// CHECK-NEXT: add i8 %numUsedRegs, 1 +// CHECK-NEXT: store i8 %{{[0-9]+}}, i8* %gpr, align 4 +// CHECK-NEXT: br label %cont + +typedef void (^block)(void); +block testBlock(va_list ap) { + return va_arg(ap, block); +} +// CHECK: @testBlock +// CHECK: using_regs: +// CHECK-NEXT: getelementptr inbounds %struct.__va_list_tag, %struct.__va_list_tag* %{{[0-9]+}}, i32 0, i32 4 +// CHECK-NEXT: load i8*, i8** %{{[0-9]+}}, align 4 +// CHECK-NEXT: mul i8 %numUsedRegs, 4 +// CHECK-NEXT: getelementptr inbounds i8, i8* %{{[0-9]+}}, i8 %{{[0-9]+}} +// CHECK-NEXT: bitcast i8* %{{[0-9]+}} to void ()** +// CHECK-NEXT: add i8 %numUsedRegs, 1 +// CHECK-NEXT: store i8 %{{[0-9]+}}, i8* %gpr, align 4 +// CHECK-NEXT: br label %cont ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [cfe-branch] r301083 - Merging r295614:
Author: brad Date: Sat Apr 22 11:45:56 2017 New Revision: 301083 URL: http://llvm.org/viewvc/llvm-project?rev=301083&view=rev Log: Merging r295614: r295614 | brad | 2017-02-19 15:11:48 -0500 (Sun, 19 Feb 2017) | 2 lines Always use --eh-frame-hdr on OpenBSD, even for -static Modified: cfe/branches/release_40/lib/Driver/Tools.cpp cfe/branches/release_40/test/Driver/openbsd.c Modified: cfe/branches/release_40/lib/Driver/Tools.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/lib/Driver/Tools.cpp?rev=301083&r1=301082&r2=301083&view=diff == --- cfe/branches/release_40/lib/Driver/Tools.cpp (original) +++ cfe/branches/release_40/lib/Driver/Tools.cpp Sat Apr 22 11:45:56 2017 @@ -8907,12 +8907,12 @@ void openbsd::Linker::ConstructJob(Compi CmdArgs.push_back("__start"); } + CmdArgs.push_back("--eh-frame-hdr"); if (Args.hasArg(options::OPT_static)) { CmdArgs.push_back("-Bstatic"); } else { if (Args.hasArg(options::OPT_rdynamic)) CmdArgs.push_back("-export-dynamic"); -CmdArgs.push_back("--eh-frame-hdr"); CmdArgs.push_back("-Bdynamic"); if (Args.hasArg(options::OPT_shared)) { CmdArgs.push_back("-shared"); Modified: cfe/branches/release_40/test/Driver/openbsd.c URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/test/Driver/openbsd.c?rev=301083&r1=301082&r2=301083&view=diff == --- cfe/branches/release_40/test/Driver/openbsd.c (original) +++ cfe/branches/release_40/test/Driver/openbsd.c Sat Apr 22 11:45:56 2017 @@ -3,6 +3,12 @@ // CHECK-LD: clang{{.*}}" "-cc1" "-triple" "i686-pc-openbsd" // CHECK-LD: ld{{.*}}" "-e" "__start" "--eh-frame-hdr" "-Bdynamic" "-dynamic-linker" "{{.*}}ld.so" "-o" "a.out" "{{.*}}crt0.o" "{{.*}}crtbegin.o" "{{.*}}.o" "-lgcc" "-lc" "-lgcc" "{{.*}}crtend.o" +// Check for --eh-frame-hdr being passed with static linking +// RUN: %clang -no-canonical-prefixes -target i686-pc-openbsd -static %s -### 2>&1 \ +// RUN: | FileCheck --check-prefix=CHECK-LD-STATIC-EH %s +// CHECK-LD-STATIC-EH: clang{{.*}}" "-cc1" "-triple" "i686-pc-openbsd" +// CHECK-LD-STATIC-EH: ld{{.*}}" "-e" "__start" "--eh-frame-hdr" "-Bstatic" "-o" "a.out" "{{.*}}rcrt0.o" "{{.*}}crtbegin.o" "{{.*}}.o" "-lgcc" "-lc" "-lgcc" "{{.*}}crtend.o" + // RUN: %clang -no-canonical-prefixes -target i686-pc-openbsd -pg -pthread %s -### 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-PG %s // CHECK-PG: clang{{.*}}" "-cc1" "-triple" "i686-pc-openbsd" ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [cfe-branch] r301084 - Merging r295635:
Author: brad Date: Sat Apr 22 11:53:19 2017 New Revision: 301084 URL: http://llvm.org/viewvc/llvm-project?rev=301084&view=rev Log: Merging r295635: r295635 | brad | 2017-02-19 22:18:15 -0500 (Sun, 19 Feb 2017) | 5 lines Enable support for __float128 in Clang on OpenBSD/X86 /usr/local/include/c++/4.9.4/type_traits:279:39: error: __float128 is not supported on this target Modified: cfe/branches/release_40/lib/Basic/Targets.cpp cfe/branches/release_40/test/CodeGenCXX/float128-declarations.cpp Modified: cfe/branches/release_40/lib/Basic/Targets.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/lib/Basic/Targets.cpp?rev=301084&r1=301083&r2=301084&view=diff == --- cfe/branches/release_40/lib/Basic/Targets.cpp (original) +++ cfe/branches/release_40/lib/Basic/Targets.cpp Sat Apr 22 11:53:19 2017 @@ -545,6 +545,8 @@ protected: Builder.defineMacro("__ELF__"); if (Opts.POSIXThreads) Builder.defineMacro("_REENTRANT"); +if (this->HasFloat128) + Builder.defineMacro("__FLOAT128__"); } public: OpenBSDTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) @@ -552,11 +554,11 @@ public: this->TLSSupported = false; switch (Triple.getArch()) { -default: case llvm::Triple::x86: case llvm::Triple::x86_64: -case llvm::Triple::arm: -case llvm::Triple::sparc: + this->HasFloat128 = true; + // FALLTHROUGH +default: this->MCountName = "__mcount"; break; case llvm::Triple::mips64: Modified: cfe/branches/release_40/test/CodeGenCXX/float128-declarations.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/test/CodeGenCXX/float128-declarations.cpp?rev=301084&r1=301083&r2=301084&view=diff == --- cfe/branches/release_40/test/CodeGenCXX/float128-declarations.cpp (original) +++ cfe/branches/release_40/test/CodeGenCXX/float128-declarations.cpp Sat Apr 22 11:53:19 2017 @@ -8,6 +8,10 @@ // RUN: %s -o - | FileCheck %s -check-prefix=CHECK-X86 // RUN: %clang_cc1 -emit-llvm -triple systemz-unknown-linux-gnu -std=c++11 \ // RUN: %s -o - | FileCheck %s -check-prefix=CHECK-SYSZ +// RUN: %clang_cc1 -emit-llvm -triple i686-pc-openbsd -std=c++11 \ +// RUN: %s -o - | FileCheck %s -check-prefix=CHECK-X86 +// RUN: %clang_cc1 -emit-llvm -triple amd64-pc-openbsd -std=c++11 \ +// RUN: %s -o - | FileCheck %s -check-prefix=CHECK-X86 // /* Various contexts where type __float128 can appear. The different check prefixes are due to different mangling on X86 and different calling ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [cfe-branch] r301085 - Merging r295786:
Author: brad Date: Sat Apr 22 12:05:51 2017 New Revision: 301085 URL: http://llvm.org/viewvc/llvm-project?rev=301085&view=rev Log: Merging r295786: r295786 | brad | 2017-02-21 18:13:09 -0500 (Tue, 21 Feb 2017) | 2 lines Hook up OpenBSD AArch64 support Modified: cfe/branches/release_40/lib/Basic/Targets.cpp cfe/branches/release_40/test/Frontend/gnu-mcount.c cfe/branches/release_40/test/Preprocessor/init.c Modified: cfe/branches/release_40/lib/Basic/Targets.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/lib/Basic/Targets.cpp?rev=301085&r1=301084&r2=301085&view=diff == --- cfe/branches/release_40/lib/Basic/Targets.cpp (original) +++ cfe/branches/release_40/lib/Basic/Targets.cpp Sat Apr 22 12:05:51 2017 @@ -5927,7 +5927,8 @@ class AArch64TargetInfo : public TargetI public: AArch64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) : TargetInfo(Triple), ABI("aapcs") { -if (getTriple().getOS() == llvm::Triple::NetBSD) { +if (getTriple().getOS() == llvm::Triple::NetBSD || +getTriple().getOS() == llvm::Triple::OpenBSD) { WCharType = SignedInt; // NetBSD apparently prefers consistency across ARM targets to consistency @@ -8576,6 +8577,8 @@ static TargetInfo *AllocateTarget(const return new LinuxTargetInfo(Triple, Opts); case llvm::Triple::NetBSD: return new NetBSDTargetInfo(Triple, Opts); +case llvm::Triple::OpenBSD: + return new OpenBSDTargetInfo(Triple, Opts); default: return new AArch64leTargetInfo(Triple, Opts); } Modified: cfe/branches/release_40/test/Frontend/gnu-mcount.c URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/test/Frontend/gnu-mcount.c?rev=301085&r1=301084&r2=301085&view=diff == --- cfe/branches/release_40/test/Frontend/gnu-mcount.c (original) +++ cfe/branches/release_40/test/Frontend/gnu-mcount.c Sat Apr 22 12:05:51 2017 @@ -61,7 +61,7 @@ int f() { // CHECK-ARM-EABI-NETBSD-NOT: attributes #{{[0-9]+}} = { {{.*}}"counting-function"="\01__gnu_mcount_nc"{{.*}} } // CHECK-ARM-EABI-OPENBSD: attributes #{{[0-9]+}} = { {{.*}}"counting-function"="__mcount"{{.*}} } // CHECK-ARM-EABI-OPENBSD-NOT: attributes #{{[0-9]+}} = { {{.*}}"counting-function"="\01__gnu_mcount_nc"{{.*}} } -// CHECK-ARM64-EABI-OPENBSD: attributes #{{[0-9]+}} = { {{.*}}"counting-function"="mcount"{{.*}} } +// CHECK-ARM64-EABI-OPENBSD: attributes #{{[0-9]+}} = { {{.*}}"counting-function"="__mcount"{{.*}} } // CHECK-ARM64-EABI-OPENBSD-NOT: attributes #{{[0-9]+}} = { {{.*}}"counting-function"="\01__gnu_mcount_nc"{{.*}} } // CHECK-ARM-EABI-MEABI-GNU-NOT: attributes #{{[0-9]+}} = { {{.*}}"counting-function"="mcount"{{.*}} } // CHECK-ARM-EABI-MEABI-GNU: attributes #{{[0-9]+}} = { {{.*}}"counting-function"="\01__gnu_mcount_nc"{{.*}} } Modified: cfe/branches/release_40/test/Preprocessor/init.c URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/test/Preprocessor/init.c?rev=301085&r1=301084&r2=301085&view=diff == --- cfe/branches/release_40/test/Preprocessor/init.c (original) +++ cfe/branches/release_40/test/Preprocessor/init.c Sat Apr 22 12:05:51 2017 @@ -831,6 +831,198 @@ // AARCH64-NETBSD:#define __WINT_WIDTH__ 32 // AARCH64-NETBSD:#define __aarch64__ 1 // +// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-OPENBSD %s +// +// AARCH64-OPENBSD:#define _LP64 1 +// AARCH64-OPENBSD-NOT:#define __AARCH64EB__ 1 +// AARCH64-OPENBSD:#define __AARCH64EL__ 1 +// AARCH64-OPENBSD-NOT:#define __AARCH_BIG_ENDIAN 1 +// AARCH64-OPENBSD:#define __ARM_64BIT_STATE 1 +// AARCH64-OPENBSD:#define __ARM_ARCH 8 +// AARCH64-OPENBSD:#define __ARM_ARCH_ISA_A64 1 +// AARCH64-OPENBSD-NOT:#define __ARM_BIG_ENDIAN 1 +// AARCH64-OPENBSD:#define __BIGGEST_ALIGNMENT__ 16 +// AARCH64-OPENBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ +// AARCH64-OPENBSD:#define __CHAR16_TYPE__ unsigned short +// AARCH64-OPENBSD:#define __CHAR32_TYPE__ unsigned int +// AARCH64-OPENBSD:#define __CHAR_BIT__ 8 +// AARCH64-OPENBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324 +// AARCH64-OPENBSD:#define __DBL_DIG__ 15 +// AARCH64-OPENBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16 +// AARCH64-OPENBSD:#define __DBL_HAS_DENORM__ 1 +// AARCH64-OPENBSD:#define __DBL_HAS_INFINITY__ 1 +// AARCH64-OPENBSD:#define __DBL_HAS_QUIET_NAN__ 1 +// AARCH64-OPENBSD:#define __DBL_MANT_DIG__ 53 +// AARCH64-OPENBSD:#define __DBL_MAX_10_EXP__ 308 +// AARCH64-OPENBSD:#define __DBL_MAX_EXP__ 1024 +// AARCH64-OPENBSD:#define __DBL_MAX__ 1.7976931348623157e+308 +// AARCH64-OPENBS
[llvm-branch-commits] [cfe-branch] r301086 - Merging r296430:
Author: brad Date: Sat Apr 22 12:15:15 2017 New Revision: 301086 URL: http://llvm.org/viewvc/llvm-project?rev=301086&view=rev Log: Merging r296430: r296430 | brad | 2017-02-27 22:20:26 -0500 (Mon, 27 Feb 2017) | 2 lines Set ABIs correctly for OpenBSD/arm; soft float and aapcs-linux. Modified: cfe/branches/release_40/lib/Basic/Targets.cpp cfe/branches/release_40/lib/Driver/Tools.cpp cfe/branches/release_40/test/Driver/arm-abi.c cfe/branches/release_40/test/Driver/openbsd.c Modified: cfe/branches/release_40/lib/Basic/Targets.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/lib/Basic/Targets.cpp?rev=301086&r1=301085&r2=301086&view=diff == --- cfe/branches/release_40/lib/Basic/Targets.cpp (original) +++ cfe/branches/release_40/lib/Basic/Targets.cpp Sat Apr 22 12:15:15 2017 @@ -5146,6 +5146,8 @@ public: default: if (Triple.getOS() == llvm::Triple::NetBSD) setABI("apcs-gnu"); +else if (Triple.getOS() == llvm::Triple::OpenBSD) + setABI("aapcs-linux"); else setABI("aapcs"); break; Modified: cfe/branches/release_40/lib/Driver/Tools.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/lib/Driver/Tools.cpp?rev=301086&r1=301085&r2=301086&view=diff == --- cfe/branches/release_40/lib/Driver/Tools.cpp (original) +++ cfe/branches/release_40/lib/Driver/Tools.cpp Sat Apr 22 12:15:15 2017 @@ -962,6 +962,10 @@ arm::FloatABI arm::getARMFloatABI(const } break; +case llvm::Triple::OpenBSD: + ABI = FloatABI::Soft; + break; + default: switch (Triple.getEnvironment()) { case llvm::Triple::GNUEABIHF: @@ -1251,6 +1255,8 @@ void Clang::AddARMTargetArgs(const llvm: default: if (Triple.getOS() == llvm::Triple::NetBSD) ABIName = "apcs-gnu"; + else if (Triple.getOS() == llvm::Triple::OpenBSD) +ABIName = "aapcs-linux"; else ABIName = "aapcs"; break; Modified: cfe/branches/release_40/test/Driver/arm-abi.c URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/test/Driver/arm-abi.c?rev=301086&r1=301085&r2=301086&view=diff == --- cfe/branches/release_40/test/Driver/arm-abi.c (original) +++ cfe/branches/release_40/test/Driver/arm-abi.c Sat Apr 22 12:15:15 2017 @@ -28,6 +28,10 @@ // RUN: %clang -target arm--netbsd-eabihf %s -### -o %t.o 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-AAPCS %s +// OpenBSD defaults to aapcs-linux +// RUN: %clang -target arm--openbsd- %s -### -o %t.o 2>&1 \ +// RUN: | FileCheck -check-prefix=CHECK-AAPCS-LINUX %s + // Otherwise, ABI is selected based on environment // RUN: %clang -target arm---android %s -### -o %t.o 2>&1 \ // RUN: | FileCheck -check-prefix=CHECK-AAPCS-LINUX %s Modified: cfe/branches/release_40/test/Driver/openbsd.c URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/test/Driver/openbsd.c?rev=301086&r1=301085&r2=301086&view=diff == --- cfe/branches/release_40/test/Driver/openbsd.c (original) +++ cfe/branches/release_40/test/Driver/openbsd.c Sat Apr 22 12:15:15 2017 @@ -96,3 +96,8 @@ // CHECK-STATIC-PIE: "{{.*}}rcrt0.o" // CHECK-STATIC-PIE-NOT: "-nopie" // CHECK-NOPIE: "-nopie" "{{.*}}crt0.o" + +// Check ARM float ABI +// RUN: %clang -target arm-unknown-openbsd -### -c %s 2>&1 \ +// RUN: | FileCheck -check-prefix=CHECK-ARM-FLOAT-ABI %s +// CHECK-ARM-FLOAT-ABI: "-mfloat-abi" "soft" ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [cfe-branch] r301087 - Merging r299269:
Author: brad Date: Sat Apr 22 12:20:27 2017 New Revision: 301087 URL: http://llvm.org/viewvc/llvm-project?rev=301087&view=rev Log: Merging r299269: r299269 | brad | 2017-03-31 18:13:17 -0400 (Fri, 31 Mar 2017) | 2 lines Add/update PIE defaults for OpenBSD. Modified: cfe/branches/release_40/lib/Driver/Tools.cpp cfe/branches/release_40/test/Driver/pic.c Modified: cfe/branches/release_40/lib/Driver/Tools.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/lib/Driver/Tools.cpp?rev=301087&r1=301086&r2=301087&view=diff == --- cfe/branches/release_40/lib/Driver/Tools.cpp (original) +++ cfe/branches/release_40/lib/Driver/Tools.cpp Sat Apr 22 12:20:27 2017 @@ -3851,9 +3851,10 @@ ParsePICArgs(const ToolChain &ToolChain, // OpenBSD-specific defaults for PIE if (Triple.getOS() == llvm::Triple::OpenBSD) { switch (ToolChain.getArch()) { +case llvm::Triple::arm: +case llvm::Triple::aarch64: case llvm::Triple::mips64: case llvm::Triple::mips64el: -case llvm::Triple::sparcel: case llvm::Triple::x86: case llvm::Triple::x86_64: IsPICLevelTwo = false; // "-fpie" @@ -3861,6 +3862,7 @@ ParsePICArgs(const ToolChain &ToolChain, case llvm::Triple::ppc: case llvm::Triple::sparc: +case llvm::Triple::sparcel: case llvm::Triple::sparcv9: IsPICLevelTwo = true; // "-fPIE" break; Modified: cfe/branches/release_40/test/Driver/pic.c URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/test/Driver/pic.c?rev=301087&r1=301086&r2=301087&view=diff == --- cfe/branches/release_40/test/Driver/pic.c (original) +++ cfe/branches/release_40/test/Driver/pic.c Sat Apr 22 12:20:27 2017 @@ -227,6 +227,10 @@ // RUN: | FileCheck %s --check-prefix=CHECK-PIE1 // RUN: %clang -c %s -target i386-pc-openbsd -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE1 +// RUN: %clang -c %s -target aarch64-unknown-openbsd -### 2>&1 \ +// RUN: | FileCheck %s --check-prefix=CHECK-PIE1 +// RUN: %clang -c %s -target arm-unknown-openbsd -### 2>&1 \ +// RUN: | FileCheck %s --check-prefix=CHECK-PIE1 // RUN: %clang -c %s -target mips64-unknown-openbsd -### 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-PIE1 // RUN: %clang -c %s -target mips64el-unknown-openbsd -### 2>&1 \ ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm-branch] r301082 - Merging r296493:
Author: brad Date: Sat Apr 22 11:34:38 2017 New Revision: 301082 URL: http://llvm.org/viewvc/llvm-project?rev=301082&view=rev Log: Merging r296493: r296493 | brad | 2017-02-28 12:28:35 -0500 (Tue, 28 Feb 2017) | 2 lines Set default CPU for OpenBSD/arm to Cortex-A8 Modified: llvm/branches/release_40/lib/Support/Triple.cpp llvm/branches/release_40/unittests/ADT/TripleTest.cpp Modified: llvm/branches/release_40/lib/Support/Triple.cpp URL: http://llvm.org/viewvc/llvm-project/llvm/branches/release_40/lib/Support/Triple.cpp?rev=301082&r1=301081&r2=301082&view=diff == --- llvm/branches/release_40/lib/Support/Triple.cpp (original) +++ llvm/branches/release_40/lib/Support/Triple.cpp Sat Apr 22 11:34:38 2017 @@ -1511,6 +1511,7 @@ StringRef Triple::getARMCPUForArch(Strin return "strongarm"; } case llvm::Triple::NaCl: + case llvm::Triple::OpenBSD: return "cortex-a8"; default: switch (getEnvironment()) { Modified: llvm/branches/release_40/unittests/ADT/TripleTest.cpp URL: http://llvm.org/viewvc/llvm-project/llvm/branches/release_40/unittests/ADT/TripleTest.cpp?rev=301082&r1=301081&r2=301082&view=diff == --- llvm/branches/release_40/unittests/ADT/TripleTest.cpp (original) +++ llvm/branches/release_40/unittests/ADT/TripleTest.cpp Sat Apr 22 11:34:38 2017 @@ -948,6 +948,10 @@ TEST(TripleTest, getARMCPUForArch) { EXPECT_EQ("cortex-a8", Triple.getARMCPUForArch()); } { +llvm::Triple Triple("arm--openbsd"); +EXPECT_EQ("cortex-a8", Triple.getARMCPUForArch()); + } + { llvm::Triple Triple("armv6-unknown-freebsd"); EXPECT_EQ("arm1176jzf-s", Triple.getARMCPUForArch()); } ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [cfe-branch] r301605 - Merging r297098:
Author: brad Date: Thu Apr 27 19:36:13 2017 New Revision: 301605 URL: http://llvm.org/viewvc/llvm-project?rev=301605&view=rev Log: Merging r297098: r297098 | brad | 2017-03-06 18:48:31 -0500 (Mon, 06 Mar 2017) | 2 lines Set the Int64Type / IntMaxType types correctly for OpenBSD/mips64 Modified: cfe/branches/release_40/lib/Basic/Targets.cpp cfe/branches/release_40/test/Preprocessor/init.c Modified: cfe/branches/release_40/lib/Basic/Targets.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/lib/Basic/Targets.cpp?rev=301605&r1=301604&r2=301605&view=diff == --- cfe/branches/release_40/lib/Basic/Targets.cpp (original) +++ cfe/branches/release_40/lib/Basic/Targets.cpp Thu Apr 27 19:36:13 2017 @@ -7540,7 +7540,11 @@ public: void setN64ABITypes() { setN32N64ABITypes(); -Int64Type = SignedLong; +if (getTriple().getOS() == llvm::Triple::OpenBSD) { + Int64Type = SignedLongLong; +} else { + Int64Type = SignedLong; +} IntMaxType = Int64Type; LongWidth = LongAlign = 64; PointerWidth = PointerAlign = 64; Modified: cfe/branches/release_40/test/Preprocessor/init.c URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_40/test/Preprocessor/init.c?rev=301605&r1=301604&r2=301605&view=diff == --- cfe/branches/release_40/test/Preprocessor/init.c (original) +++ cfe/branches/release_40/test/Preprocessor/init.c Thu Apr 27 19:36:13 2017 @@ -8718,6 +8718,8 @@ // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-unknown-openbsd6.1-gnueabi < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s +// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s +// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s // OPENBSD:#define __ELF__ 1 // OPENBSD:#define __INT16_TYPE__ short ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [libcxx] 79f99ba - [libcxx] Port to OpenBSD
Author: Brad Smith Date: 2021-01-12T14:21:11-05:00 New Revision: 79f99ba65d96a35a79911daf1b67559dd52a684d URL: https://github.com/llvm/llvm-project/commit/79f99ba65d96a35a79911daf1b67559dd52a684d DIFF: https://github.com/llvm/llvm-project/commit/79f99ba65d96a35a79911daf1b67559dd52a684d.diff LOG: [libcxx] Port to OpenBSD Add initial OpenBSD support. Reviewed By: ldionne Differential Revision: https://reviews.llvm.org/D94205 Added: libcxx/include/support/openbsd/xlocale.h Modified: libcxx/include/CMakeLists.txt libcxx/include/__config libcxx/include/__locale Removed: diff --git a/libcxx/include/CMakeLists.txt b/libcxx/include/CMakeLists.txt index cd12f60a049c..2ffdf07efcd4 100644 --- a/libcxx/include/CMakeLists.txt +++ b/libcxx/include/CMakeLists.txt @@ -159,6 +159,7 @@ set(files support/musl/xlocale.h support/newlib/xlocale.h support/nuttx/xlocale.h + support/openbsd/xlocale.h support/solaris/floatingpoint.h support/solaris/wchar.h support/solaris/xlocale.h diff --git a/libcxx/include/__config b/libcxx/include/__config index 4537d249cf4f..f1606c6d3b1c 100644 --- a/libcxx/include/__config +++ b/libcxx/include/__config @@ -264,14 +264,14 @@ # endif // __LONG_LONG_SUPPORTED #endif // __FreeBSD__ -#ifdef __NetBSD__ +#if defined(__NetBSD__) || defined(__OpenBSD__) # include # if _BYTE_ORDER == _LITTLE_ENDIAN #define _LIBCPP_LITTLE_ENDIAN # else // _BYTE_ORDER == _LITTLE_ENDIAN #define _LIBCPP_BIG_ENDIAN # endif // _BYTE_ORDER == _LITTLE_ENDIAN -#endif // __NetBSD__ +#endif // defined(__NetBSD__) || defined(__OpenBSD__) #if defined(_WIN32) # define _LIBCPP_WIN32API @@ -312,7 +312,7 @@ # endif #endif // __sun__ -#if defined(__CloudABI__) +#if defined(__OpenBSD__) || defined(__CloudABI__) // Certain architectures provide arc4random(). Prefer using // arc4random() over /dev/{u,}random to make it possible to obtain // random data even when using sandboxing mechanisms such as chroots, @@ -370,6 +370,9 @@ #define _LIBCPP_HAS_ALIGNED_ALLOC #define _LIBCPP_HAS_QUICK_EXIT #define _LIBCPP_HAS_TIMESPEC_GET +# elif defined(__OpenBSD__) +#define _LIBCPP_HAS_ALIGNED_ALLOC +#define _LIBCPP_HAS_TIMESPEC_GET # elif defined(__linux__) #if !defined(_LIBCPP_HAS_MUSL_LIBC) # if _LIBCPP_GLIBC_PREREQ(2, 15) || defined(__BIONIC__) @@ -1109,6 +1112,7 @@ extern "C" _LIBCPP_FUNC_VIS void __sanitizer_annotate_contiguous_container( # if defined(__FreeBSD__) || \ defined(__wasi__) || \ defined(__NetBSD__) || \ + defined(__OpenBSD__) || \ defined(__NuttX__) || \ defined(__linux__) || \ defined(__GNU__) || \ @@ -1204,14 +1208,15 @@ extern "C" _LIBCPP_FUNC_VIS void __sanitizer_annotate_contiguous_container( // Some systems do not provide gets() in their C library, for security reasons. #ifndef _LIBCPP_C_HAS_NO_GETS # if defined(_LIBCPP_MSVCRT) || \ - (defined(__FreeBSD_version) && __FreeBSD_version >= 1300043) + (defined(__FreeBSD_version) && __FreeBSD_version >= 1300043) || \ + defined(__OpenBSD__) #define _LIBCPP_C_HAS_NO_GETS # endif #endif #if defined(__BIONIC__) || defined(__CloudABI__) || defined(__NuttX__) || \ defined(__Fuchsia__) || defined(__wasi__) || defined(_LIBCPP_HAS_MUSL_LIBC) || \ -defined(__MVS__) +defined(__MVS__) || defined(__OpenBSD__) #define _LIBCPP_PROVIDES_DEFAULT_RUNE_TABLE #endif diff --git a/libcxx/include/__locale b/libcxx/include/__locale index f32bd59ae585..4e9e0c08acf0 100644 --- a/libcxx/include/__locale +++ b/libcxx/include/__locale @@ -33,6 +33,8 @@ # include #elif defined(_NEWLIB_VERSION) # include +#elif defined(__OpenBSD__) +# include #elif (defined(__APPLE__) || defined(__FreeBSD__) \ || defined(__EMSCRIPTEN__) || defined(__IBMCPP__)) # include diff --git a/libcxx/include/support/openbsd/xlocale.h b/libcxx/include/support/openbsd/xlocale.h new file mode 100644 index ..fbfaedd127c6 --- /dev/null +++ b/libcxx/include/support/openbsd/xlocale.h @@ -0,0 +1,19 @@ +// -*- C++ -*- +//=== support/openbsd/xlocale.h ---===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===--===// + +#ifndef _LIBCPP_SUPPORT_OPENBSD_XLOCALE_H +#define _LIBCPP_SUPPORT_OPENBSD_XLOCALE_H + +#include +#include +#include +#include +#include + +#endif ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [libcxx] 1be2524 - [libcxx] Check return value for asprintf()
Author: Brad Smith Date: 2021-01-21T19:43:11-05:00 New Revision: 1be2524b7d213035e591bee3eecccdd6b59d14a5 URL: https://github.com/llvm/llvm-project/commit/1be2524b7d213035e591bee3eecccdd6b59d14a5 DIFF: https://github.com/llvm/llvm-project/commit/1be2524b7d213035e591bee3eecccdd6b59d14a5.diff LOG: [libcxx] Check return value for asprintf() local __libcpp_asprintf_l() -> libc asprintf() was inspecting the pointer (with indeterminate value) for failure, rather than the return value of -1. Reviewed By: ldionne Differential Revision: https://reviews.llvm.org/D94564 Added: Modified: libcxx/include/locale Removed: diff --git a/libcxx/include/locale b/libcxx/include/locale index e8b06654e1b8..9a705c77cfab 100644 --- a/libcxx/include/locale +++ b/libcxx/include/locale @@ -1577,7 +1577,7 @@ num_put<_CharT, _OutputIterator>::do_put(iter_type __s, ios_base& __iob, __nc = __libcpp_asprintf_l(&__nb, _LIBCPP_GET_C_LOCALE, __fmt, (int)__iob.precision(), __v); else __nc = __libcpp_asprintf_l(&__nb, _LIBCPP_GET_C_LOCALE, __fmt, __v); -if (__nb == nullptr) +if (__nc == -1) __throw_bad_alloc(); __nbh.reset(__nb); } @@ -1628,7 +1628,7 @@ num_put<_CharT, _OutputIterator>::do_put(iter_type __s, ios_base& __iob, __nc = __libcpp_asprintf_l(&__nb, _LIBCPP_GET_C_LOCALE, __fmt, (int)__iob.precision(), __v); else __nc = __libcpp_asprintf_l(&__nb, _LIBCPP_GET_C_LOCALE, __fmt, __v); -if (__nb == nullptr) +if (__nc == -1) __throw_bad_alloc(); __nbh.reset(__nb); } @@ -3402,17 +3402,17 @@ money_put<_CharT, _OutputIterator>::do_put(iter_type __s, bool __intl, char* __bb = __buf; char_type __digits[__bs]; char_type* __db = __digits; -size_t __n = static_cast(snprintf(__bb, __bs, "%.0Lf", __units)); +int __n = snprintf(__bb, __bs, "%.0Lf", __units); unique_ptr __hn(nullptr, free); unique_ptr __hd(0, free); // secure memory for digit storage -if (__n > __bs-1) +if (static_cast(__n) > __bs-1) { -__n = static_cast(__libcpp_asprintf_l(&__bb, _LIBCPP_GET_C_LOCALE, "%.0Lf", __units)); -if (__bb == nullptr) +__n = __libcpp_asprintf_l(&__bb, _LIBCPP_GET_C_LOCALE, "%.0Lf", __units); +if (__n == -1) __throw_bad_alloc(); __hn.reset(__bb); -__hd.reset((char_type*)malloc(__n * sizeof(char_type))); +__hd.reset((char_type*)malloc(static_cast(__n) * sizeof(char_type))); if (__hd == nullptr) __throw_bad_alloc(); __db = __hd.get(); @@ -3434,9 +3434,9 @@ money_put<_CharT, _OutputIterator>::do_put(iter_type __s, bool __intl, char_type __mbuf[__bs]; char_type* __mb = __mbuf; unique_ptr __hw(0, free); -size_t __exn = static_cast(__n) > __fd ? - (__n - static_cast(__fd)) * 2 + __sn.size() + -__sym.size() + static_cast(__fd) + 1 +size_t __exn = __n > __fd ? + (static_cast(__n) - static_cast(__fd)) * 2 + +__sn.size() + __sym.size() + static_cast(__fd) + 1 : __sn.size() + __sym.size() + static_cast(__fd) + 2; if (__exn > __bs) { ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] release/20.x: [Driver] Add DragonFly for handling of libdl and libexecinfo (#125179) (PR #125212)
https://github.com/brad0 closed https://github.com/llvm/llvm-project/pull/125212 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [SPARC][IAS] Add IAS flag handling for ISA levels (PR #125151)
brad0 wrote: @MaskRay https://github.com/llvm/llvm-project/pull/125151 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/19.x: [llvm][Mips] Bail on underaligned loads/stores in FastISel. (#106231) (PR #126693)
brad0 wrote: > Fine by me, but I was under the impression that [there won't be any more 19.x > releases](https://github.com/llvm/llvm-project/pull/125081#issuecomment-2646389290)? That is the case so far. https://github.com/llvm/llvm-project/pull/126693 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [SPARC][IAS] Add IAS flag handling for ISA levels (PR #125151)
brad0 wrote: @MaskRay https://github.com/llvm/llvm-project/pull/125151 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [lldb] release/20.x: [lldb] Remove PATH workaround for Android (#124682) (PR #124898)
https://github.com/brad0 closed https://github.com/llvm/llvm-project/pull/124898 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [lldb] release/20.x: [lldb] Remove PATH workaround for Android (#124682) (PR #124898)
brad0 wrote: > What's the motivation? It's very early in the release cycle, so I guess it'd > be fine, but it might also be fine to let this bake in trunk, just in case it > does turn out breaking something... Just because it was early in the cycle, but you have a point. I'll leave it for now. https://github.com/llvm/llvm-project/pull/124898 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [SPARC] Use op-then-halve instructions when we have VIS3 (PR #135718)
brad0 wrote: cc @s-barannikov https://github.com/llvm/llvm-project/pull/135718 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [SPARC] Use op-then-halve instructions when we have VIS3 (PR #135718)
brad0 wrote: @arsenm https://github.com/llvm/llvm-project/pull/135718 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] release/20.x: Fix crash lowering stack guard on OpenBSD/aarch64. (#125416) (PR #136458)
brad0 wrote: @tstellar He doesn't seem to be around. I'd like to get this in as I can't build compiler-rt or openmp on aarch64 without it. https://github.com/llvm/llvm-project/pull/136458 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [clang] release/20.x: [Driver] Fix _XOPEN_SOURCE definition on Solaris (#137141) (PR #140044)
https://github.com/brad0 approved this pull request. https://github.com/llvm/llvm-project/pull/140044 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [SPARC][IAS] Add definitions for OSA 2011 instructions (PR #138403)
brad0 wrote: cc @s-barannikov https://github.com/llvm/llvm-project/pull/138403 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [SPARC][IAS] Add definitions for OSA 2011 instructions (PR #138403)
brad0 wrote: @s-barannikov Ping. https://github.com/llvm/llvm-project/pull/138403 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [SPARC][IAS] Add definitions for cryptographic instructions (PR #139451)
brad0 wrote: cc @s-barannikov https://github.com/llvm/llvm-project/pull/139451 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits