Page MenuHomePhabricator

bcain (Brian Cain)
User

Projects

User does not belong to any projects.

User Details

User Since
Nov 16 2016, 9:22 PM (152 w, 1 d)

Recent Activity

Today

bcain added a comment to D69103: Backend for NEC SX-Aurora.

Shouldn't the first patch add to LLVM_TARGETS_TO_BUILD or LLVM_EXPERIMENTAL_TARGETS_TO_BUILD?

Fri, Oct 18, 7:13 AM · Restricted Project

Mon, Oct 14

bcain accepted D68884: Add support to -Wa,-W in clang.

LGTM

Mon, Oct 14, 11:49 AM · Restricted Project

Fri, Oct 11

bcain accepted D68875: [lld] Check for branch range overflows..

LGTM, but suggestions for stricter test case.

Fri, Oct 11, 10:05 AM · Restricted Project

Thu, Oct 10

bcain accepted D68401: [Hexagon] Fix clang driver to parse -mcpu/-mvXX and -march properly..

LGTM

Thu, Oct 10, 2:53 PM · Restricted Project
bcain added a comment to D68741: test-release.sh s/http/https/.
In D68741#1703014, @ro wrote:

Is there any point doing this now when the switch to git is imminent?

Thu, Oct 10, 8:31 AM · Restricted Project

Wed, Oct 9

bcain created D68741: test-release.sh s/http/https/.
Wed, Oct 9, 4:40 PM · Restricted Project

Aug 21 2019

bcain added a comment to D66542: R_HEX_B15_PCREL_X/R_HEX_B9_PCREL_X can be in shared objects.

I sent a request to download hexagon-application-binary-interface-specification.zip a few days ago but I still don't get a copy...

The only information in the Internet about R_HEX_B15_PCREL_X is probably this patch now.. I'd say this is very inconvenient for anyone who'd like to contribute to verify the correctness. Since there is not any reference available, I can only guess.

What do the _X relocation types represent? Why are some R_PLT_PC while the others are R_PC?

Aug 21 2019, 8:01 PM · Restricted Project

Aug 19 2019

bcain added a comment to D66422: [libcxx] Explicitly cast in generate_canonical.

This patch is intended to address new warnings like the one below that shows up with clang on a hexagon target:

Aug 19 2019, 2:18 PM · Restricted Project
bcain created D66422: [libcxx] Explicitly cast in generate_canonical.
Aug 19 2019, 9:00 AM · Restricted Project

Aug 14 2019

bcain accepted D66105: Support HEX_32 when building shared objects.
Aug 14 2019, 7:00 AM · Restricted Project, lld

Aug 8 2019

bcain committed rG83df122039d1: [clang] add REQUIRES: linux to driver test case (authored by bcain).
[clang] add REQUIRES: linux to driver test case
Aug 8 2019, 1:13 PM
bcain committed rL368334: [clang] add REQUIRES: linux to driver test case.
[clang] add REQUIRES: linux to driver test case
Aug 8 2019, 1:12 PM
bcain committed rG37a1aa7eb761: [clang] add REQUIRES to driver test case (authored by bcain).
[clang] add REQUIRES to driver test case
Aug 8 2019, 1:05 PM
bcain committed rL368332: [clang] add REQUIRES to driver test case.
[clang] add REQUIRES to driver test case
Aug 8 2019, 1:04 PM
bcain committed rG7b953b6455bb: [clang] Add no-warn support for Wa (authored by bcain).
[clang] Add no-warn support for Wa
Aug 8 2019, 12:20 PM
bcain committed rL368328: [clang] Add no-warn support for Wa.
[clang] Add no-warn support for Wa
Aug 8 2019, 12:19 PM
bcain committed rG6dbbd0f34326: [llvm-mc] Add reportWarning() to MCContext (authored by bcain).
[llvm-mc] Add reportWarning() to MCContext
Aug 8 2019, 12:14 PM
bcain committed rL368327: [llvm-mc] Add reportWarning() to MCContext.
[llvm-mc] Add reportWarning() to MCContext
Aug 8 2019, 12:13 PM

Jul 19 2019

bcain accepted D58091: Customize warnings for missing built-in type.

This will appear as a 9.0 regression, right? Let's please consider a way to address it for 9.0 before it's released.

Jul 19 2019, 2:42 PM · Restricted Project, Restricted Project

Jul 9 2019

bcain abandoned D38630: Avoid 'unused param' warnings for !_LIBCPP_HAS_CATOPEN.

I think this patch is dead; the problem has been solved using _LIBCPP_UNUSED_VAR Is that correct?

Jul 9 2019, 6:50 AM · Restricted Project

Jun 27 2019

bcain added inline comments to D63847: [MC] Add MCInstrAnalysis::evaluateMemoryOperandAddress.
Jun 27 2019, 8:53 AM · Restricted Project
bcain abandoned D54348: Permit multiple .file directives with -g.

Obsoleted by r364039.

Jun 27 2019, 8:04 AM · Restricted Project, debug-info

Jun 5 2019

bcain added a comment to D54348: Permit multiple .file directives with -g.

Ping? Is anybody looking at or working on this? The bug this fixes is one of the issues currently blocking Chrome OS from being able to adopt Dwarf v5, so we are hoping for a fix?

Jun 5 2019, 4:32 PM · Restricted Project, debug-info

May 15 2019

bcain added a comment to D61915: [libcxx] change dylib- XFAILs to UNSUPPORTED.

Maybe the presence of the filesystem header is enough to get some of these tests to pass. [...]

Yes, I think this is exactly what's happening, and this is what I wanted to understand. I think the best solution would be for LIBCXX_ENABLE_FILESYSTEM to actually control whether filesystem is enabled in the library, however this includes:

  • whether we build support for filesystem in the dylib (that's the only thing we already do)
  • whether the <filesystem> header is provided
  • whether we provide operations like std::ifstream::open() on std::filesystem::path & friends

    I think if we had that, then we could rename the lit feature from dylib-has-no-filesystem to just has-no-filesystem, and that feature would be enabled whenever:
  • we are testing back-deployment to a platform that doesn't have dylib support for filesystem (and has availability markup that makes it invalid to use stuff like std::ifstream::open(std::filesystem::path))
  • we are testing libc++ trunk without filesystem support (your use case)

    Is this something you'd be willing to investigate? I think having a good example of how to disable complete features from the library would be useful for other things as well, so this is something we need to do at some point. For example, our story for things like LIBCXX_ENABLE_STDIN and LIBCXX_ENABLE_STDOUT is similarly broken.
May 15 2019, 1:35 PM · Restricted Project
bcain added a comment to D61915: [libcxx] change dylib- XFAILs to UNSUPPORTED.

...

Maybe the presence of the filesystem header is enough to get some of these tests to pass. So maybe I should go ahead and change this patch to do that instead?

May 15 2019, 9:44 AM · Restricted Project
bcain added a comment to D61915: [libcxx] change dylib- XFAILs to UNSUPPORTED.

...

(I'm going to comment on just the variant/optional/ any tests here, because I think they're straightforward).
They're marked as XFAIL when the dylib doesn't have the appropriate exception classes - and they should fail.
They also should fail if they are built with exceptions disabled - because the exceptions will never get thrown. This behavior should be confirmed.

May 15 2019, 9:43 AM · Restricted Project

May 14 2019

bcain added a comment to D61915: [libcxx] change dylib- XFAILs to UNSUPPORTED.

I'd like to better understand what problem this is solving:

  • What platform are you testing on?
  • How did you configure CMake?
  • How do you run lit?
May 14 2019, 3:08 PM · Restricted Project
bcain created D61915: [libcxx] change dylib- XFAILs to UNSUPPORTED.
May 14 2019, 1:17 PM · Restricted Project

May 13 2019

bcain committed rG9423ba812183: [libcxx] teach type_traits test about long uint32_t (authored by bcain).
[libcxx] teach type_traits test about long uint32_t
May 13 2019, 8:40 AM
bcain committed rL360590: [libcxx] teach type_traits test about long uint32_t.
[libcxx] teach type_traits test about long uint32_t
May 13 2019, 8:39 AM
bcain committed rCXX360590: [libcxx] teach type_traits test about long uint32_t.
[libcxx] teach type_traits test about long uint32_t
May 13 2019, 8:38 AM

May 9 2019

bcain updated the diff for D61348: [libcxx] limit debug mode tests on platforms without fork.

Previous patch was missing update to config.py.

May 9 2019, 8:20 AM · Restricted Project
bcain updated the diff for D61348: [libcxx] limit debug mode tests on platforms without fork.

Changed to use 'has-fork' feature instead of 'debug-mode'.

May 9 2019, 8:18 AM · Restricted Project

May 8 2019

bcain added a comment to D61348: [libcxx] limit debug mode tests on platforms without fork.

Changed debug-mode feature to be deactivated when the LIBCXX_TEST_HAVE_FORK option is disabled. This hopefully sidesteps the debate triggered by the previous revision.

May 8 2019, 8:08 AM · Restricted Project

May 7 2019

bcain added a comment to D61655: [libcxx] teach type_traits test about long uint32_t.

This LGTM.

Although wouldn't unsigned int be the correct choice on all platforms? Because the issue only arises because sometimes uint32_t is unsigned long instead of unsigned int?

May 7 2019, 5:48 PM · Restricted Project
bcain created D61655: [libcxx] teach type_traits test about long uint32_t.
May 7 2019, 1:56 PM · Restricted Project
bcain added a comment to D61130: [llvm-mc] Add reportWarning() to MCContext.

More context for this change:

May 7 2019, 9:28 AM · Restricted Project, Restricted Project

May 3 2019

bcain committed rG3428c9daef9d: [hexagon] change AsmParser assertion to error (authored by bcain).
[hexagon] change AsmParser assertion to error
May 3 2019, 9:49 AM
bcain committed rL359905: [hexagon] change AsmParser assertion to error.
[hexagon] change AsmParser assertion to error
May 3 2019, 9:49 AM
bcain added a comment to D61130: [llvm-mc] Add reportWarning() to MCContext.

ping! any comments or concerns about this change?

May 3 2019, 7:17 AM · Restricted Project, Restricted Project

May 1 2019

bcain added reviewers for D61130: [llvm-mc] Add reportWarning() to MCContext: sgundapa, bcahoon.
May 1 2019, 9:19 PM · Restricted Project, Restricted Project
bcain committed rG9d744bcde993: [libcxx] cmake - guard list remove (authored by bcain).
[libcxx] cmake - guard list remove
May 1 2019, 8:48 PM
bcain committed rCXX359755: [libcxx] cmake - guard list remove.
[libcxx] cmake - guard list remove
May 1 2019, 8:48 PM
bcain committed rL359755: [libcxx] cmake - guard list remove.
[libcxx] cmake - guard list remove
May 1 2019, 8:48 PM
bcain added a comment to D61403: [libcxx] cmake - guard list remove.

I have a workaround for this locally. I guess this is only relevant with older CMakes.

May 1 2019, 4:24 PM · Restricted Project
bcain created D61403: [libcxx] cmake - guard list remove.
May 1 2019, 2:29 PM · Restricted Project
bcain updated the diff for D61348: [libcxx] limit debug mode tests on platforms without fork.

Changed debug-mode feature to be deactivated when the LIBCXX_TEST_HAVE_FORK option is disabled. This hopefully sidesteps the debate triggered by the previous revision.

May 1 2019, 10:41 AM · Restricted Project
bcain added reviewers for D61309: [clang] Add no-warn support for Wa: sgundapa, pgousseau, bcahoon.
May 1 2019, 8:23 AM · Restricted Project
bcain added a comment to D61348: [libcxx] limit debug mode tests on platforms without fork.

These tests turn on debug mode themselves - they don't need to be limited the configurations where the user turns it on.

These tests need to be fixed so that they DTRT when the user specifies -debug_level=X (where X is 0/1) as a LIT param as well.

May 1 2019, 7:34 AM · Restricted Project

Apr 30 2019

bcain created D61348: [libcxx] limit debug mode tests on platforms without fork.
Apr 30 2019, 3:13 PM · Restricted Project
bcain added a comment to D61133: [hexagon] change AsmParser assertion to error.

ping? any comments/concerns?

Apr 30 2019, 2:54 PM · Restricted Project
bcain updated the diff for D61130: [llvm-mc] Add reportWarning() to MCContext.

Add context, add clang update.

Apr 30 2019, 6:50 AM · Restricted Project, Restricted Project
bcain created D61309: [clang] Add no-warn support for Wa.
Apr 30 2019, 6:43 AM · Restricted Project

Apr 25 2019

bcain accepted D61092: [llvm-strip] Have --discard-all imply --strip-debug.
Apr 25 2019, 1:13 PM · Restricted Project
bcain updated the diff for D61133: [hexagon] change AsmParser assertion to error.

Added context lines.

Apr 25 2019, 10:03 AM · Restricted Project
bcain created D61133: [hexagon] change AsmParser assertion to error.
Apr 25 2019, 8:18 AM · Restricted Project
bcain created D61130: [llvm-mc] Add reportWarning() to MCContext.
Apr 25 2019, 8:04 AM · Restricted Project, Restricted Project

Apr 24 2019

bcain accepted D58843: [WIP][MC][RISCV] Allow targets to defer forcing relocations.
Apr 24 2019, 7:13 AM · Restricted Project

Apr 23 2019

bcain requested changes to D58843: [WIP][MC][RISCV] Allow targets to defer forcing relocations.
Apr 23 2019, 8:01 AM · Restricted Project

Mar 26 2019

bcain added a comment to D58091: Customize warnings for missing built-in type.

I think this warning (-Wbuiltin-requires-header) doesn't really make sense as its own warning.

We already have two related (on-by-default) warnings.

...

Mar 26 2019, 10:20 AM · Restricted Project, Restricted Project

Feb 28 2019

bcain added a comment to D58091: Customize warnings for missing built-in type.

I did address the comments but I will wait until I hear back on the "warning vs warning + note question".

...

I do not have strong feelings about this, either way is fine with me. However, I lack the
clang expertise to make such a change happen anytime soon which makes this patch
(with actual fix for the warning on pthread_create) my prefered first step.

Feb 28 2019, 2:42 PM · Restricted Project, Restricted Project

Feb 26 2019

Herald updated subscribers of D57244: [AsmPrinter] Remove hidden flag -print-schedule..
Feb 26 2019, 7:04 AM · Restricted Project

Feb 25 2019

bcain added inline comments to D58091: Customize warnings for missing built-in type.
Feb 25 2019, 12:51 PM · Restricted Project, Restricted Project

Feb 20 2019

bcain accepted D58091: Customize warnings for missing built-in type.

I can confirm that this fix is effective at addressing the problem we experienced.

Feb 20 2019, 7:08 AM · Restricted Project, Restricted Project

Feb 13 2019

bcain added a comment to D58091: Customize warnings for missing built-in type.

Are you sure it is unrelated?

Feb 13 2019, 9:33 AM · Restricted Project, Restricted Project
bcain added a comment to D58091: Customize warnings for missing built-in type.

I reported PR40692. I just tried this patch on our local build where we saw the failure on an RTOS implementing pthreads. Unfortunately with this patch I encountered an (unrelated) assertion. So this fix was inconclusive for me (for now). I will follow up but if this fix makes sense then you don't need to wait for my test results.

Feb 13 2019, 8:21 AM · Restricted Project, Restricted Project

Nov 12 2018

bcain added a comment to D54348: Permit multiple .file directives with -g.

...

So probably need to have some discussion about when/where/if this should fire.

Nov 12 2018, 3:32 PM · Restricted Project, debug-info

Nov 9 2018

bcain added a comment to D54348: Permit multiple .file directives with -g.

The directive_file-4.s test passes and no existing tests fail with this change.

Nov 9 2018, 1:28 PM · Restricted Project, debug-info
bcain created D54348: Permit multiple .file directives with -g.
Nov 9 2018, 1:07 PM · Restricted Project, debug-info

Sep 4 2018

bcain committed rCRT341442: Add glibc_prereq to platform limits mmsghdr.
Add glibc_prereq to platform limits mmsghdr
Sep 4 2018, 7:17 PM
bcain committed rL341442: Add glibc_prereq to platform limits mmsghdr.
Add glibc_prereq to platform limits mmsghdr
Sep 4 2018, 7:17 PM
bcain updated the diff for D51538: Add glibc_prereq to platform limits mmsghdr.

Updated per review, test-release.sh build completes w/this patch on sles11.3.

Sep 4 2018, 8:12 AM

Aug 31 2018

bcain added inline comments to D51538: Add glibc_prereq to platform limits mmsghdr.
Aug 31 2018, 2:54 PM
bcain created D51538: Add glibc_prereq to platform limits mmsghdr.
Aug 31 2018, 5:47 AM

Aug 28 2018

bcain accepted D51363: Add support for getRegisterByName..
Aug 28 2018, 11:49 AM
bcain committed rL340839: [debuginfo] generate debug info with asm+.file.
[debuginfo] generate debug info with asm+.file
Aug 28 2018, 9:24 AM
bcain closed D51315: [debuginfo] generate debug info with asm+.file.
Aug 28 2018, 9:24 AM

Aug 27 2018

bcain added a comment to D51315: [debuginfo] generate debug info with asm+.file.

The indentation in the test looks a little odd. Please verify there are no hard tabs.
Otherwise LGTM.

Please cite the PR number in the commit message, when you push this.

Aug 27 2018, 1:34 PM
bcain updated the diff for D51315: [debuginfo] generate debug info with asm+.file.
  • Changed indentation for nop
  • Added PR number to summary
Aug 27 2018, 1:33 PM
bcain added a comment to D51315: [debuginfo] generate debug info with asm+.file.

Comments:

Aug 27 2018, 11:24 AM
bcain created D51315: [debuginfo] generate debug info with asm+.file.
Aug 27 2018, 11:21 AM

Aug 24 2018

bcain updated subscribers of D51144: Implemented Protobuf fuzzer for LLVM RISC-V MC Assembler.
Aug 24 2018, 4:20 PM

Aug 17 2018

bcain abandoned D41727: [libcxx] Disable tautological-type-limit-compare warning.

I think this is now obsolete due to clang changing the warning.

Aug 17 2018, 12:42 PM

Aug 16 2018

bcain closed D48913: [llvm-mc-assemble-fuzzer] Update API - Pass MCObjectWriter instead of a stream.

r339981

Aug 16 2018, 9:53 PM
bcain committed rL339981: [llvm-mc-assemble-fuzzer] Update API - Pass MCObjectWriter instead of a stream.
[llvm-mc-assemble-fuzzer] Update API - Pass MCObjectWriter instead of a stream
Aug 16 2018, 9:39 PM
bcain committed rL339979: [hexagon] restore -fuse-cxa-atexit by default.
[hexagon] restore -fuse-cxa-atexit by default
Aug 16 2018, 8:54 PM
bcain committed rC339979: [hexagon] restore -fuse-cxa-atexit by default.
[hexagon] restore -fuse-cxa-atexit by default
Aug 16 2018, 8:54 PM
bcain closed D50816: [hexagon] restore -fuse-cxa-atexit by default.
Aug 16 2018, 8:54 PM
bcain closed D50816: [hexagon] restore -fuse-cxa-atexit by default.
Aug 16 2018, 8:54 PM
bcain added a reviewer for D50816: [hexagon] restore -fuse-cxa-atexit by default: kparzysz.
Aug 16 2018, 8:42 AM
bcain accepted D48913: [llvm-mc-assemble-fuzzer] Update API - Pass MCObjectWriter instead of a stream.

Should we have this build configuration in a buildbot?

Aug 16 2018, 5:15 AM

Aug 15 2018

bcain created D50816: [hexagon] restore -fuse-cxa-atexit by default.
Aug 15 2018, 3:25 PM

Aug 13 2018

bcain accepted D50657: Add R_HEX_32 relocation support.

LGTM

Aug 13 2018, 12:37 PM
bcain added inline comments to D50592: Add check for tied operands.
Aug 13 2018, 7:31 AM

Jul 20 2018

bcain accepted D49567: Add R_HEX_B15_PCREL_X relocation.
Jul 20 2018, 10:40 AM · lld

May 11 2018

bcain accepted D46728: Update Hexagon's relocation output.

LGTM

May 11 2018, 9:41 AM

May 8 2018

bcain accepted D46364: Add basic compiler-rt builtins support for hexagon.
May 8 2018, 11:26 AM

Mar 2 2018

bcain accepted D43951: [RFC] llvm-mca: a static performance analysis tool..

FYI several of the issues that I found are ones that I discovered when I tried to build the patch with 6.0.rc2. Also, I didn't get to detail them here but there were warnings regarding virtual methods w/o virtual destructor. I believe those were on the classes inherited from HWEventListener.

Mar 2 2018, 6:21 AM

Mar 1 2018

bcain requested changes to D43951: [RFC] llvm-mca: a static performance analysis tool..

Thanks for the contribution, it looks interesting.

Mar 1 2018, 12:17 PM

Jan 18 2018

bcain updated the diff for D41727: [libcxx] Disable tautological-type-limit-compare warning.

Changed per review

Jan 18 2018, 9:50 AM