Page MenuHomePhabricator
Feed All Stories

Today

craig.topper added a reviewer for D92080: [Clang] Mutate long-double math builtins into f128 under IEEE-quad: efriedma.
Wed, Nov 25, 8:50 PM · Restricted Project
alokmishra.besu added a comment to D91944: OpenMP 5.0 metadirective.

I have replied to the comments and will update the code accordingly. Some of the codes are intentionally left to be update in 5.1 implementation. Will add TODO comments there.
I will revisit the implementation of getBestWhenMatchForContext and also add more test cases over the weekend and submit new code by next week.

Wed, Nov 25, 8:44 PM · Restricted Project, Restricted Project, Restricted Project
craig.topper committed rGf78ad68b6d8c: [RISCV] Remove unused PatFrag argument from the tablegen class used for c. (authored by craig.topper).
[RISCV] Remove unused PatFrag argument from the tablegen class used for c.
Wed, Nov 25, 8:36 PM
craig.topper committed rGaea130f7366b: [LegalizerTypes] Add support for scalarizing the operand of an FP_EXTEND when… (authored by craig.topper).
[LegalizerTypes] Add support for scalarizing the operand of an FP_EXTEND when…
Wed, Nov 25, 8:31 PM
MaskRay added a comment to D91611: [PowerPC][LLD] Detecting and fixing missing TLS relocation on __tls_get_addr.

I have done some testing with gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0 and GNU ld (GNU Binutils for Ubuntu) 2.30.

It appears that ld.bfd by default fixes up the relocation if it is missing and then does the relaxation correctly. I don't need to specify any options for this to be done.
As a simple example:

Test1:
.LCF0:
  addis 2,12,.TOC.-.LCF0@ha
  addi 2,2,.TOC.-.LCF0@l
  .localentry     Test1,.-Test1
  addis 3,2,x@got@tlsgd@ha
  addi 3,3,x@got@tlsgd@l
  bl __tls_get_addr
  nop

The bl __tls_get_addr is missing the relocation ld.bfd still relaxes it correctly.
However, with a more complex example that I wrote by hand:

Test1:
.LCF0:
  addis 2,12,.TOC.-.LCF0@ha
  addi 2,2,.TOC.-.LCF0@l
  .localentry     Test1,.-Test1
  addis 3,2,x@got@tlsgd@ha
  addi 3,3,x@got@tlsgd@l
  addis 3,2,x@got@tlsgd@ha
  addi 3,3,x@got@tlsgd@l
  bl __tls_get_addr
  nop

in the above case ld.bfd does not recognize the pattern for the TLS and so it turns off TLS relaxations completely.
The reason I brought up these examples is because I feel that detecting the difference between the two cases in lld would be unreasonably complicated an probably not worth it. As a result I feel that it may not be feasible to do the same thing that ld.bfd is doing.

Here is my new proposal:
We can add an option to lld. Unfortunately this option will not exist in ld.bfd because they wouldn't need it.
The option is off by default.
If the option is off then lld will behave exactly the same way that it always has. No error detection for missing relocations.
If the option is on then lld will check all calls to __get_tls_addr and if it finds a missing relocation it will turn off TLS relaxations. It won't try to add the missing relocation and it won't throw an error.
This design will not cause problems to default behaviour (and it shouldn't add overhead to the default link either) but it will also allow linking with code that was generated with the legacy compiler if the user specifies the option.

How does this new idea sound?
If everyone agrees on this idea (or a variant of this idea) I will rework the patch like this.

Wed, Nov 25, 8:30 PM · Restricted Project
MaskRay added a comment to D91611: [PowerPC][LLD] Detecting and fixing missing TLS relocation on __tls_get_addr.

I have done some testing with gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0 and GNU ld (GNU Binutils for Ubuntu) 2.30.

It appears that ld.bfd by default fixes up the relocation if it is missing and then does the relaxation correctly. I don't need to specify any options for this to be done.
As a simple example:

Test1:
.LCF0:
  addis 2,12,.TOC.-.LCF0@ha
  addi 2,2,.TOC.-.LCF0@l
  .localentry     Test1,.-Test1
  addis 3,2,x@got@tlsgd@ha
  addi 3,3,x@got@tlsgd@l
  bl __tls_get_addr
  nop

The bl __tls_get_addr is missing the relocation ld.bfd still relaxes it correctly.
However, with a more complex example that I wrote by hand:

Test1:
.LCF0:
  addis 2,12,.TOC.-.LCF0@ha
  addi 2,2,.TOC.-.LCF0@l
  .localentry     Test1,.-Test1
  addis 3,2,x@got@tlsgd@ha
  addi 3,3,x@got@tlsgd@l
  addis 3,2,x@got@tlsgd@ha
  addi 3,3,x@got@tlsgd@l
  bl __tls_get_addr
  nop

in the above case ld.bfd does not recognize the pattern for the TLS and so it turns off TLS relaxations completely.
The reason I brought up these examples is because I feel that detecting the difference between the two cases in lld would be unreasonably complicated an probably not worth it. As a result I feel that it may not be feasible to do the same thing that ld.bfd is doing.

Wed, Nov 25, 8:28 PM · Restricted Project
mkazantsev committed rG664e1da485d2: [LoopLoadElim] Make sure all loops are in simplify form. PR48150 (authored by mkazantsev).
[LoopLoadElim] Make sure all loops are in simplify form. PR48150
Wed, Nov 25, 7:51 PM
mkazantsev closed D91525: [LoopLoadElim] Make sure all loops are in simplify form. PR48150.
Wed, Nov 25, 7:51 PM · Restricted Project
stefanp added a comment to D91611: [PowerPC][LLD] Detecting and fixing missing TLS relocation on __tls_get_addr.

I have done some testing with gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0 and GNU ld (GNU Binutils for Ubuntu) 2.30.

Wed, Nov 25, 7:45 PM · Restricted Project
aeubanks requested review of D92150: [LTO][wasm][NewPM] Allow using new pass manager for wasm LTO.
Wed, Nov 25, 7:45 PM · Restricted Project
xndcn updated the diff for D92041: [clangd] Add hover info for `this` expr.

Thanks! Update the commit as review comments.

Wed, Nov 25, 7:39 PM · Restricted Project, Restricted Project
ZarkoCA retitled D92117: [AIX] Enabling vector type arguments and return for AIX from [AIX] Enabling vector types for AIX to [AIX] Enabling vector type arguments and return for AIX.
Wed, Nov 25, 7:33 PM · Restricted Project
qiucf added a comment to D92080: [Clang] Mutate long-double math builtins into f128 under IEEE-quad.

gcc calls the *l version with -mlong-double-128 on x86. Should we match gcc here?

Wed, Nov 25, 7:31 PM · Restricted Project
ZarkoCA updated the diff for D92117: [AIX] Enabling vector type arguments and return for AIX.

Added regex and variable for function attribute

Wed, Nov 25, 7:29 PM · Restricted Project
stellaraccident committed rG2fb5f4a1cf41: [mlir][Python] Add additional capsule interop types. (authored by stellaraccident).
[mlir][Python] Add additional capsule interop types.
Wed, Nov 25, 7:15 PM
stellaraccident closed D92144: [mlir][Python] Add additional capsule interop types..
Wed, Nov 25, 7:15 PM · Restricted Project
mkazantsev added a comment to D91535: [IndVars] Use isLoopBackedgeGuardedByCond for last iteration check.

Actually, it only means that isLoopBackedgeGuardedByCond should directly call isKnownPredicateAt(Latch->getTerminator()) as the last resort. I will follow-up with this improvement.

Wed, Nov 25, 7:14 PM · Restricted Project
mkazantsev added a comment to D91535: [IndVars] Use isLoopBackedgeGuardedByCond for last iteration check.

Eeek. I found a test where isKnownPredicateAt is more powerful. Need to use both then.

Wed, Nov 25, 7:04 PM · Restricted Project
TaoPan added inline comments to D92073: [CodeGen] Add text section prefix for COFF object file.
Wed, Nov 25, 7:01 PM · Restricted Project
geng updated the diff for D91682: [LoopInterchange] Fix the checking of tightly nested loop.
Wed, Nov 25, 6:57 PM · Restricted Project
pengfei added inline comments to D92073: [CodeGen] Add text section prefix for COFF object file.
Wed, Nov 25, 6:52 PM · Restricted Project
thakis requested review of D92149: [mac/lld] Add support for response files.
Wed, Nov 25, 6:49 PM
JonChesterfield added a comment to D92143: [libomptarget][cuda] Detect missing symbols in plugin at build time.

True but orthogonal. This will raise a link error on libomptarget.rtl.cuda.so if it has symbols that are not resolved by the dynamic libraries it is linked against. E.g. amdgpu links with this and doesn't yet implement the device to device copy function.

Wed, Nov 25, 6:48 PM · Restricted Project
max-kudr updated the diff for D92145: [MLIR] Fix vector::TransferWriteOp builder losing permutation map.

Updated unit test

Wed, Nov 25, 6:48 PM · Restricted Project
sbc100 updated the diff for D91577: [lld][WebAssembly] Add --unresolved-symbols=import-dynamic.

rebase

Wed, Nov 25, 6:47 PM · Restricted Project
khchen added a comment to D71124: [RISCV] support clang driver to select cpu.
Wed, Nov 25, 6:43 PM · Restricted Project, Restricted Project
MaskRay added inline comments to D92100: [clang] do not limit -fstack-clash-protection to Linux.
Wed, Nov 25, 6:42 PM
TaoPan added inline comments to D92073: [CodeGen] Add text section prefix for COFF object file.
Wed, Nov 25, 6:39 PM · Restricted Project
steven.zhang planned changes to D75895: [PowerPC] Select the select_cc for f64/f32 as set_cc + vselect if VSX enabled.
Wed, Nov 25, 6:37 PM · Restricted Project
nridge requested review of D92148: [clangd] Do not treat line as inactive if skipped range ends at character position 0.
Wed, Nov 25, 6:31 PM · Restricted Project
sbc100 committed rG48ddf5e182c6: [lld][WebAssembly] Ensure stub symbols always get address 0 (authored by sbc100).
[lld][WebAssembly] Ensure stub symbols always get address 0
Wed, Nov 25, 6:31 PM
sbc100 closed D92038: [lld][WebAssembly] Ensure stub symbols always get address 0.
Wed, Nov 25, 6:31 PM · Restricted Project
sbc100 updated the diff for D92038: [lld][WebAssembly] Ensure stub symbols always get address 0.

feedback

Wed, Nov 25, 6:26 PM · Restricted Project
thakis committed rG43afba0677d4: [gn build] sync script: try to make a loop clearer (authored by thakis).
[gn build] sync script: try to make a loop clearer
Wed, Nov 25, 6:19 PM
thakis committed rG12c2646feb10: [gn build] sync script: only compute tokloc when adding files (authored by thakis).
[gn build] sync script: only compute tokloc when adding files
Wed, Nov 25, 6:19 PM
TaoPan updated the summary of D92073: [CodeGen] Add text section prefix for COFF object file.
Wed, Nov 25, 6:16 PM · Restricted Project
craig.topper requested review of D92147: [RISCV] Add support for printing pcrel immediates as absolute addresses in llvm-objdump.
Wed, Nov 25, 6:12 PM · Restricted Project
Paul-C-Anagnostopoulos updated the summary of D92146: [Timer] [TableGen] Add a function to TimerGroup to suppress report sorting.
Wed, Nov 25, 6:10 PM · Restricted Project
Paul-C-Anagnostopoulos requested review of D92146: [Timer] [TableGen] Add a function to TimerGroup to suppress report sorting.
Wed, Nov 25, 6:09 PM · Restricted Project
mehdi_amini accepted D92144: [mlir][Python] Add additional capsule interop types..
Wed, Nov 25, 6:08 PM · Restricted Project
aqjune added a comment to D90529: Allow nonnull attribute to accept poison.

(reviving an old discussion) to summarize the issue:
The issue was whether it is okay to make dereferenceable %p non-UB if %p was not dereferenceable.

Wed, Nov 25, 6:05 PM · Restricted Project
Esme abandoned D88538: [PowerPC] Materialize the immediate that is Uint32 but not Int32..

Patch D92089 can cover this.

Wed, Nov 25, 6:04 PM · Restricted Project
Esme abandoned D88539: [PowerPC] Handle the constant with many trailing ones..

The patch D92089 can cover this.

Wed, Nov 25, 6:03 PM · Restricted Project
thakis committed rG48d101724535: [gn build] sync script: handle multiple source lists if only deleting (authored by thakis).
[gn build] sync script: handle multiple source lists if only deleting
Wed, Nov 25, 5:58 PM
max-kudr requested review of D92145: [MLIR] Fix vector::TransferWriteOp builder losing permutation map.
Wed, Nov 25, 5:53 PM · Restricted Project
stellaraccident requested review of D92144: [mlir][Python] Add additional capsule interop types..
Wed, Nov 25, 5:47 PM · Restricted Project
ChuanqiXu added a comment to D91245: [clang-format] Recognize c++ coroutine keywords as unary operator to avoid misleading pointer alignment.

@djasper gental ping~

Wed, Nov 25, 5:44 PM
nridge committed rGc6cb47b640ff: [clangd] Collect main file refs by default (authored by nridge).
[clangd] Collect main file refs by default
Wed, Nov 25, 5:34 PM
nridge closed D92000: [clangd] Collect main file refs by default.
Wed, Nov 25, 5:34 PM · Restricted Project
aartbik committed rGd5f0d0c0c411: [mlir][sparse] add ability to select pointer/index storage type (authored by aartbik).
[mlir][sparse] add ability to select pointer/index storage type
Wed, Nov 25, 5:33 PM
aartbik closed D92126: [mlir][sparse] add ability to select pointer/index storage type.
Wed, Nov 25, 5:33 PM · Restricted Project
nlguillemot added inline comments to D92018: [llvm-readelf/obj] - Deduplicate the logic that prints notes. NFCI..
Wed, Nov 25, 5:33 PM · Restricted Project
nridge updated the diff for D92000: [clangd] Collect main file refs by default.

Address review comment

Wed, Nov 25, 5:32 PM · Restricted Project
penpornk added inline comments to D92126: [mlir][sparse] add ability to select pointer/index storage type.
Wed, Nov 25, 5:30 PM · Restricted Project
penpornk added inline comments to D92126: [mlir][sparse] add ability to select pointer/index storage type.
Wed, Nov 25, 5:28 PM · Restricted Project
lhames added a comment to D91935: [MCJIT] Add cmake variables to customize ittapi git location and revision..

Thanks for the explanation. Doing a git clone as part of the build is usually discouraged, though I see Lang approved the original patch. Is this code disabled by default?

Wed, Nov 25, 5:28 PM · Restricted Project
thakis added inline comments to D89740: [ms] [llvm-ml] Implement the statement expansion operator.
Wed, Nov 25, 5:25 PM · Restricted Project
thakis accepted D89740: [ms] [llvm-ml] Implement the statement expansion operator.
Wed, Nov 25, 5:23 PM · Restricted Project
thakis committed rGda0aaedcd0cd: [gn build] (manually) port b534beabeed3ba (authored by thakis).
[gn build] (manually) port b534beabeed3ba
Wed, Nov 25, 5:20 PM
guopeilin added inline comments to D91512: [AArch64][Isel] Avoid implicit zext for SIGN_EXTEND_INREG ( TRUNCATE ).
Wed, Nov 25, 5:18 PM · Restricted Project
rnk added inline comments to D88988: [llvm-symbolizer] Add inline stack traces for Windows..
Wed, Nov 25, 5:15 PM · Restricted Project, Restricted Project
aartbik added inline comments to D92126: [mlir][sparse] add ability to select pointer/index storage type.
Wed, Nov 25, 5:08 PM · Restricted Project
rsmith committed rG7c327db3ef73: Part of C++ DR 39: a class member lookup is not ambiguous if it finds the (authored by rsmith).
Part of C++ DR 39: a class member lookup is not ambiguous if it finds the
Wed, Nov 25, 5:03 PM
tianshilei1992 added a comment to D92143: [libomptarget][cuda] Detect missing symbols in plugin at build time.

This is a nice change, but not all plugins can implement all interfaces listed in exports. For example, if the plugin doesn't support async operations, then those interfaces suffix with _async will not be implemented by the plugin, and libomptarget can acknowledge that because dlopen returns nullptr.

Wed, Nov 25, 4:56 PM · Restricted Project
JonChesterfield added a comment to D91713: [libomptarget] Implement get_device_num for amdgcn, nvptx.

This needs an implementation for x86_64 offloading or a change to the test to only run on nvptx. Intend to do the former.

Wed, Nov 25, 4:56 PM · Restricted Project
sfertile accepted D86476: [AIX] Add support for non var_arg extended vector ABI calling convention on AIX.

1 comment, but otherwise LGTM.

Wed, Nov 25, 4:52 PM · Restricted Project
reames accepted D91500: [VPlan] Turn VPReplicateRecipe into a VPValue..

Had a long conversation w/Florian today; he was nice enough to give a lot of context and general direction which helped me understand where this is going. It also helps that e0c479cd, and 00a6601 landed recently showing alignment with the direction sketched here.

Wed, Nov 25, 4:50 PM · Restricted Project
thejh added inline comments to D92141: Fix noderef for AddrOf on MemberExpr.
Wed, Nov 25, 4:45 PM · Restricted Project
liuz committed rG75f50e15bf8f: Adding PoisonValue for representing poison value explicitly in IR (authored by liuz).
Adding PoisonValue for representing poison value explicitly in IR
Wed, Nov 25, 4:44 PM
liuz closed D71126: Adding PoisonValue for representing poison value explicitly in IR.
Wed, Nov 25, 4:44 PM · Restricted Project
thejh updated the diff for D92141: Fix noderef for AddrOf on MemberExpr.

Removed duplicate tests as suggested by leonardchan

Wed, Nov 25, 4:43 PM · Restricted Project
JonChesterfield requested review of D92143: [libomptarget][cuda] Detect missing symbols in plugin at build time.
Wed, Nov 25, 4:39 PM · Restricted Project
leonardchan accepted D92141: Fix noderef for AddrOf on MemberExpr.

LGTM. Thanks

Wed, Nov 25, 4:37 PM · Restricted Project
tskeith added inline comments to D90210: [flang] [OpenMP 4.5] Add semantic checks for OpenMP Private clause.
Wed, Nov 25, 4:36 PM · Restricted Project, Restricted Project, Restricted Project
wmi accepted D89723: [CSSPGO][llvm-profgen]Context-sensitive profile data generation.

LGTM.

Wed, Nov 25, 4:32 PM · Restricted Project
leonardchan accepted D92140: Fix noderef for array member of deref expr.

Thanks for catching this. LGTM

Wed, Nov 25, 4:30 PM · Restricted Project
rsmith committed rG3fb0879867d7: Refactor and simplify class scope name lookup. (authored by rsmith).
Refactor and simplify class scope name lookup.
Wed, Nov 25, 4:26 PM
penpornk accepted D92126: [mlir][sparse] add ability to select pointer/index storage type.

Thank you, Aart!

Wed, Nov 25, 4:23 PM · Restricted Project
dblaikie added inline comments to D88988: [llvm-symbolizer] Add inline stack traces for Windows..
Wed, Nov 25, 4:18 PM · Restricted Project, Restricted Project
akhuang committed rG1363dfaf3105: [CodeView] Avoid emitting empty debug globals subsection. (authored by akhuang).
[CodeView] Avoid emitting empty debug globals subsection.
Wed, Nov 25, 4:14 PM
akhuang closed D92049: [CodeView] Avoid emitting empty debug globals subsection..
Wed, Nov 25, 4:13 PM · Restricted Project
rnk added a comment to D91732: [compiler-rt] [builtins] Support conversion between fp16 and fp128.

FYI, I went ahead and reverted this along with its dependent change since we didn't hear back.

Wed, Nov 25, 4:13 PM · Restricted Project
rnk added a reverting change for D91733: [compiler-rt] [builtins] Use _Float16 on extendhfsf2, truncdfhf2 __truncsfhf2 if available: rGb534beabeed3: Revert builtins fp16 support: tests do not pass on Mac.
Wed, Nov 25, 4:13 PM · Restricted Project
rnk added a reverting change for rG1fb91fcf9cfe: [compiler-rt] [builtins] Support conversion between fp16 and fp128: rGb534beabeed3: Revert builtins fp16 support: tests do not pass on Mac.
Wed, Nov 25, 4:13 PM
rnk added a reverting change for D91732: [compiler-rt] [builtins] Support conversion between fp16 and fp128: rGb534beabeed3: Revert builtins fp16 support: tests do not pass on Mac.
Wed, Nov 25, 4:13 PM · Restricted Project
rnk added a reverting change for rG7a948298813c: [compiler-rt] [builtins] Use _Float16 on extendhfsf2, truncdfhf2 __truncsfhf2…: rGb534beabeed3: Revert builtins fp16 support: tests do not pass on Mac.
Wed, Nov 25, 4:13 PM
rnk committed rGb534beabeed3: Revert builtins fp16 support: tests do not pass on Mac (authored by rnk).
Revert builtins fp16 support: tests do not pass on Mac
Wed, Nov 25, 4:13 PM
silvas committed rG5488a6b0ffb1: [NFC] Fix pattern name. (authored by silvas).
[NFC] Fix pattern name.
Wed, Nov 25, 4:12 PM
rnk accepted D92049: [CodeView] Avoid emitting empty debug globals subsection..

Thanks, looks good

Wed, Nov 25, 4:12 PM · Restricted Project
mikerice added a comment to D90943: Fix for Bug25668. Clang is asserting when lookup argument is a class that hasn't been instantiated..

The best I can tell the underlying OpenMP problem is the lookup code in buildUserDefinedMapperRef. In this code if there is no mapper-id (like this test) the name is changed to "default" but the Loc is not set. If we set the location to something (StartLoc is handy here) all is well.

Wed, Nov 25, 4:11 PM
jrtc27 requested changes to D90738: [RISCV] Support Zfh half-precision floating-point extension..
Wed, Nov 25, 4:07 PM · Restricted Project
akhuang updated the diff for D92049: [CodeView] Avoid emitting empty debug globals subsection..

Add test; add warning in lld when it sees empty subsection

Wed, Nov 25, 4:05 PM · Restricted Project
void accepted D91836: [PowerPC] Delete remnant Darwin code in PPCAsmParser.
Wed, Nov 25, 4:04 PM · Restricted Project
wmi accepted D86499: [CSSPGO] Pseudo probe instrumentation pass.

LGTM.

Wed, Nov 25, 4:03 PM · Restricted Project
vvereschaka requested review of D92142: [libc++] Support no libc++ namespace in the iterator test..
Wed, Nov 25, 4:02 PM · Restricted Project
rupprecht added a comment to rG02fdbc356724: Revert "[NFC][SCEV] Generalize monotonicity check for full and limited….

FYI, this patch (unintentionally?) fixed a miscompile for us, as I noted in the review thread for D90648. Reposting here for visibility:

Wed, Nov 25, 4:00 PM
rnk added a comment to D92134: [llvm-symbolizer] Fix native symbolization on windows for inline sites..

Well, I *can* think of a way to test this from a .s file. Instead of using .cv_inline_line_table, you could use a sequence of .byte 0xNN, 0xNN directives. I think you can get the hex codes from llvm-pdbutil dump -symbols. How about it?

Wed, Nov 25, 4:00 PM · Restricted Project
craig.topper accepted D90738: [RISCV] Support Zfh half-precision floating-point extension..

LGTM

Wed, Nov 25, 3:59 PM · Restricted Project
thejh added a comment to D92141: Fix noderef for AddrOf on MemberExpr.

(I marked this as depending on D92140 because if you apply this patch to the current HEAD directly, the tests will break.)

Wed, Nov 25, 3:59 PM · Restricted Project
thejh requested review of D92141: Fix noderef for AddrOf on MemberExpr.
Wed, Nov 25, 3:57 PM · Restricted Project