Page MenuHomePhabricator

echristo (Eric Christopher)
User

Projects

User Details

User Since
Oct 15 2012, 2:12 PM (361 w, 6 d)

Recent Activity

Fri, Sep 20

echristo accepted D67850: Fix missed case of switching getConstant to getTargetConstant. Try 2..

Looks much better, but then again I approved the last one ;)

Fri, Sep 20, 12:22 PM · Restricted Project

Thu, Sep 19

echristo accepted D67785: Use getTargetConstant for BLENDI, and add a test to catch it..

Sweet.

Thu, Sep 19, 7:32 PM · Restricted Project
echristo accepted D67785: Use getTargetConstant for BLENDI, and add a test to catch it..

The x86isellowering change is great, see if you can't remove some of the branches before committing?

Thu, Sep 19, 7:04 PM · Restricted Project

Mon, Sep 16

echristo accepted D67631: Add AutoUpgrade function to add new address space datalayout string to existing datalayouts..

Thanks! Idea sounds great, I'm out on vacation so I'll ask rnk to review :)

Mon, Sep 16, 1:18 PM · Restricted Project
echristo added reviewers for D67627: Clang-format: Add Whitesmiths indentation style: mboehme, krasimir.

Martin should know who should look at this... maybe Krasimir?

Mon, Sep 16, 12:52 PM · Restricted Project, Restricted Project

Wed, Sep 11

echristo added a comment to D66843: Change datalayout compatibility check for X86 to allow datalayouts without the new address spaces..

Still really not a fan of this way. I think you can change the incoming DL in compatibility cases to add an address space when none exists on x86.

Wed, Sep 11, 9:14 AM · Restricted Project

Tue, Sep 10

echristo added a comment to D67387: Move LLVM_ENABLE_ABI_BREAKING_CHECKS to its own file.

Might be worth having some more detail in the commit message to explain why -ffunction-sections/-gc-sections isn't sufficient to remove the binary size increase.

(also, might be worth tracking down the global initializers that were causing this to have a binary size cost - seeing if those can be removed too)

Tue, Sep 10, 3:33 PM · Restricted Project
echristo committed rG5fc4bee355a5: Move LLVM_ENABLE_ABI_BREAKING_CHECKS variables to their own file so that you… (authored by echristo).
Move LLVM_ENABLE_ABI_BREAKING_CHECKS variables to their own file so that you…
Tue, Sep 10, 3:06 PM
echristo committed rL371561: Move LLVM_ENABLE_ABI_BREAKING_CHECKS variables to their own file.
Move LLVM_ENABLE_ABI_BREAKING_CHECKS variables to their own file
Tue, Sep 10, 3:06 PM
echristo closed D67387: Move LLVM_ENABLE_ABI_BREAKING_CHECKS to its own file.
Tue, Sep 10, 3:06 PM · Restricted Project
echristo created D67387: Move LLVM_ENABLE_ABI_BREAKING_CHECKS to its own file.
Tue, Sep 10, 1:29 AM · Restricted Project

Fri, Sep 6

echristo added a reviewer for D67259: [X86] Enable -mprefer-vector-width=256 by default for Skylake-avx512 and later Intel CPUs.: atdt.

Adding Ori.

Fri, Sep 6, 3:18 PM · Restricted Project

Thu, Sep 5

echristo accepted D67238: Add gdb pretty printers for a wide variety of libc++ data structures (take 2)..

LGTM still. Thanks :)

Thu, Sep 5, 2:27 PM · Restricted Project
echristo accepted D67194: Add testing infrastructure to check if gdb is available for testing..

SGTM.

Thu, Sep 5, 1:20 PM · Restricted Project

Fri, Aug 30

echristo accepted D65609: Add gdb pretty printers for a wide variety of libc++ data structures..

The concern that ldionne had has been addressed and I think anything else can be done in post - it'd be nice to have these available for people to use while EricWF works up some of the test harness.

Fri, Aug 30, 4:33 PM · Restricted Project

Tue, Aug 27

echristo added a comment to D65609: Add gdb pretty printers for a wide variety of libc++ data structures..

Please also add installation, since pretty-printers should be shipped with libc++, same as GCC does with libstdc++ and its pretty-printers.

Did these pretty-printers exist for libc++ before this patch? If so, how were they shipped?

There is separate project on GitHub. It was mentioned in libcxx/docs/UsingLibcxx.rst.

I had missed that, thanks!

In that case, this patch should update the documentation.

GCC ships libstdc++ pretty-printers in <install directory>/share/gcc-<version>/python/libstdcxx/.

I guess we could start with doing the same for libc++'s pretty-printers.

Tue, Aug 27, 9:39 AM · Restricted Project

Aug 19 2019

echristo added a comment to D65410: [PassManager] First Pass implementation at -O1 pass pipeline.

Thanks for starting on this. Can you go ahead and replace the sroa calls with mem2reg calls for O1 and then see what that does to the performance? That strikes me as a major change, but certainly one that potentially makes sense, so I'd rather we go ahead and test it now before we make decisions about other adjustments.

Aug 19 2019, 10:47 PM · Restricted Project, Restricted Project
echristo added a comment to D65410: [PassManager] First Pass implementation at -O1 pass pipeline.

The goal from the original email was:

The design goal is to rewrite the O1
optimization and code generation pipeline to include the set of
optimizations that minimizes build and test time while retaining our
ability to debug.

"Retaining our ability to debug" is a more constraining goal than Chandler's "coherent backtraces for test / assertion failures." A good debugging experience comes from good variable-location information, and minimal reordering of instructions. This is different from "don't mess with my stack frames" which lets you do pretty much anything that doesn't involve a call.

Without presuming to speak for Eric, I don't think there was an explicit goal to make O1 look like a stripped-down O2? But certain pass orderings make sense, and so where the same passes occur, the same ordering would be pretty likely. So, building an O1 pipeline by erasing some stuff from the O2 sequence makes some sense, because it's the practical thing and not because it's a goal to do it that way.

Aug 19 2019, 10:47 PM · Restricted Project, Restricted Project

Aug 12 2019

echristo committed rG4acb4ee767d0: Move findBBwithCalls to the file it's used in to avoid unused function warnings. (authored by echristo).
Move findBBwithCalls to the file it's used in to avoid unused function warnings.
Aug 12 2019, 5:05 PM
echristo committed rL368636: Move findBBwithCalls to the file it's used in to avoid unused function.
Move findBBwithCalls to the file it's used in to avoid unused function
Aug 12 2019, 5:05 PM
echristo accepted D66075: [llvm-readobj][MachO] Fix section type printing.

The list looks about right from what I recall - we should get a link to where they're documented, but the Apple documentation site moves a bit more than I'd like so this might be the best we can do for now.

Aug 12 2019, 2:44 PM · Restricted Project

Aug 9 2019

echristo committed rGdb2f17d36283: Remove variable only used in an assert. (authored by echristo).
Remove variable only used in an assert.
Aug 9 2019, 2:03 PM
echristo committed rL368486: Remove variable only used in an assert..
Remove variable only used in an assert.
Aug 9 2019, 2:03 PM
echristo committed rG11c1847237ce: Revert "[sanitizers] MSVC warning disable for clean build" and follow-up that… (authored by echristo).
Revert "[sanitizers] MSVC warning disable for clean build" and follow-up that…
Aug 9 2019, 1:46 PM
echristo added a reverting change for rL368476: [sanitizers] MSVC warning disable for clean build: rL368481: Revert "[sanitizers] MSVC warning disable for clean build" and follow-up that….
Aug 9 2019, 1:46 PM
echristo committed rL368481: Revert "[sanitizers] MSVC warning disable for clean build" and follow-up that….
Revert "[sanitizers] MSVC warning disable for clean build" and follow-up that…
Aug 9 2019, 1:46 PM
echristo added a reverting change for rL368480: Fix compilation after SVN r368476: rL368481: Revert "[sanitizers] MSVC warning disable for clean build" and follow-up that….
Aug 9 2019, 1:46 PM

Aug 5 2019

echristo committed rG1d73e228db39: BMI2 support is indicated in bit eight of EBX, not nine. See Intel SDM, Vol 2A… (authored by echristo).
BMI2 support is indicated in bit eight of EBX, not nine. See Intel SDM, Vol 2A…
Aug 5 2019, 2:26 PM
echristo committed rL367929: BMI2 support is indicated in bit eight of EBX, not nine..
BMI2 support is indicated in bit eight of EBX, not nine.
Aug 5 2019, 2:25 PM
echristo closed D65766: [X86] Test the right bit to detect BMI2.
Aug 5 2019, 2:25 PM · Restricted Project, Restricted Project
echristo accepted D65766: [X86] Test the right bit to detect BMI2.

This is fine. Can you add a link to the actual documentation in the commit message?

Aug 5 2019, 11:49 AM · Restricted Project, Restricted Project

Aug 2 2019

echristo committed rG9e0f2c2d9dae: Temporarily Revert "[PowerPC][NFC][MachinePipeliner] Add some regression… (authored by echristo).
Temporarily Revert "[PowerPC][NFC][MachinePipeliner] Add some regression…
Aug 2 2019, 6:14 PM
echristo committed rL367741: Temporarily Revert "[PowerPC][NFC][MachinePipeliner] Add some regression….
Temporarily Revert "[PowerPC][NFC][MachinePipeliner] Add some regression…
Aug 2 2019, 6:14 PM
echristo committed rG5fb56b196655: Temporarily Revert "Changing representation of cv_def_range directives in… (authored by echristo).
Temporarily Revert "Changing representation of cv_def_range directives in…
Aug 2 2019, 12:14 PM
echristo committed rL367707: Temporarily Revert "Changing representation of cv_def_range directives in….
Temporarily Revert "Changing representation of cv_def_range directives in…
Aug 2 2019, 12:14 PM
echristo added a reverting change for rL367704: Changing representation of cv_def_range directives in Codeview debug info…: rL367707: Temporarily Revert "Changing representation of cv_def_range directives in….
Aug 2 2019, 12:14 PM

Aug 1 2019

echristo committed rG5a00b0772aba: Temporarily revert "Changes to improve CodeView debug info type record inline… (authored by echristo).
Temporarily revert "Changes to improve CodeView debug info type record inline…
Aug 1 2019, 6:06 PM
echristo added a reverting change for rL367623: Changes to improve CodeView debug info type record inline comments: rL367640: Temporarily revert "Changes to improve CodeView debug info type record inline….
Aug 1 2019, 6:05 PM
echristo committed rL367640: Temporarily revert "Changes to improve CodeView debug info type record inline….
Temporarily revert "Changes to improve CodeView debug info type record inline…
Aug 1 2019, 6:05 PM

Jul 31 2019

echristo committed rG36fb93982f0e: Fix unused variable warning for non-assert builds. (authored by echristo).
Fix unused variable warning for non-assert builds.
Jul 31 2019, 2:03 PM
echristo committed rL367482: Fix unused variable warning for non-assert builds..
Fix unused variable warning for non-assert builds.
Jul 31 2019, 2:02 PM

Jul 29 2019

echristo added a comment to D65280: Add a pass to lower is.constant and objectsize intrinsics.

Couple of random comments, haven't looked at most of it yet.

Jul 29 2019, 12:55 PM · Restricted Project
echristo created D65410: [PassManager] First Pass implementation at -O1 pass pipeline.
Jul 29 2019, 11:13 AM · Restricted Project, Restricted Project

Jul 22 2019

echristo committed rG77dc6d2479a3: Temporarily Revert "[Attributor] Liveness analysis." as it's breaking the build. (authored by echristo).
Temporarily Revert "[Attributor] Liveness analysis." as it's breaking the build.
Jul 22 2019, 2:08 PM
echristo added a reverting change for rG9285295f75a2: [Attributor] Liveness analysis.: rG77dc6d2479a3: Temporarily Revert "[Attributor] Liveness analysis." as it's breaking the build..
Jul 22 2019, 2:07 PM
echristo committed rL366737: Temporarily Revert "[Attributor] Liveness analysis." as it's breaking the build..
Temporarily Revert "[Attributor] Liveness analysis." as it's breaking the build.
Jul 22 2019, 2:04 PM

Jul 15 2019

echristo committed rGbf20b2ace68d: Temporarily revert "add -fthinlto-index= option to clang-cl" (authored by echristo).
Temporarily revert "add -fthinlto-index= option to clang-cl"
Jul 15 2019, 5:07 PM
echristo committed rL366157: Temporarily revert "add -fthinlto-index= option to clang-cl".
Temporarily revert "add -fthinlto-index= option to clang-cl"
Jul 15 2019, 5:02 PM
echristo committed rGfdcbd5fa4868: Temporarily Revert "fix unnamed fiefield issue and add tests for… (authored by echristo).
Temporarily Revert "fix unnamed fiefield issue and add tests for…
Jul 15 2019, 4:50 PM
echristo committed rL366155: Temporarily Revert "fix unnamed fiefield issue and add tests for….
Temporarily Revert "fix unnamed fiefield issue and add tests for…
Jul 15 2019, 4:50 PM
echristo committed rG93dfb93ad68c: Temporarily Revert "[SLP] Recommit: Look-ahead operand reordering heuristic." (authored by echristo).
Temporarily Revert "[SLP] Recommit: Look-ahead operand reordering heuristic."
Jul 15 2019, 4:36 PM
echristo committed rL366154: Temporarily Revert "[SLP] Recommit: Look-ahead operand reordering heuristic.".
Temporarily Revert "[SLP] Recommit: Look-ahead operand reordering heuristic."
Jul 15 2019, 4:36 PM

Jul 11 2019

echristo added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

I am following, I've just been out for 3 weeks. I'm catching up now and this is in my queue.

Jul 11 2019, 2:22 PM · lld, Restricted Project
echristo added a comment to D64540: [CGDebugInfo] Simplfiy EmitFunctionDecl parameters, NFC.

Not a huge fan of boolean parameters like this, perhaps factor out the context as well into the caller and then we don't need it at all? Something else?

Jul 11 2019, 11:43 AM · Restricted Project

Jun 25 2019

echristo accepted D63769: [ExpandMemCmp] Honor prefer-vector-width..
Jun 25 2019, 10:31 AM · Restricted Project

Jun 24 2019

echristo added a comment to D63306: Add a remarks-based code size diffing tool.

Haven't done much of a review, one drive by, but in general I like the idea. Would it make sense to have a general "remarks in object files" tool rather than just a size one? (It can, of course, only do size at the beginning.)

Thoughts?

Hmmm. That sounds similar to a more detailed version of opt-diff? (With added support for object files)

(I suppose that basically every pass can impact code size though, so I could see basically every remark being correlated with size.)

Do you have anything in particular in mind for what a more general tool would look like?

Jun 24 2019, 6:56 PM · Restricted Project

Jun 14 2019

echristo added a comment to D63056: [bindings/go] Add debug information accessors.

*points at pcc* :)

Jun 14 2019, 2:05 PM · Restricted Project

Jun 13 2019

echristo added a comment to D63306: Add a remarks-based code size diffing tool.

Haven't done much of a review, one drive by, but in general I like the idea. Would it make sense to have a general "remarks in object files" tool rather than just a size one? (It can, of course, only do size at the beginning.)

Jun 13 2019, 10:49 PM · Restricted Project
echristo committed rG5e83d8fff43c: Move commentary on opcode translation for code16 mov instructions to segment… (authored by echristo).
Move commentary on opcode translation for code16 mov instructions to segment…
Jun 13 2019, 9:49 PM
echristo committed rL363355: Move commentary on opcode translation for code16 mov instructions.
Move commentary on opcode translation for code16 mov instructions
Jun 13 2019, 9:49 PM
echristo accepted D63298: Symbolize: Remove dead code. NFCI..
Jun 13 2019, 3:40 PM · Restricted Project

Jun 10 2019

echristo accepted D63114: Symbolize: Make DWPName a symbolizer option instead of an argument to symbolize{,Inlined}Code..
Jun 10 2019, 7:24 PM · Restricted Project
echristo accepted D63113: Symbolize: Replace the Options constructor with in-class initialization. NFCI..
Jun 10 2019, 7:24 PM · Restricted Project
echristo added a comment to D61767: [llvm-elfabi] Emit ELF header and string table section.

Mostly looks good, some inline comments and questions.

Jun 10 2019, 6:19 PM · Restricted Project
echristo added reviewers for D63083: [DebugInfo][Docs] Document that prologue/epilogue variable location changes are ignored: mcgrathr, echristo.

I'm tagging in Roland here since he and I were just discussing this the other day. I'm not entirely sure what we want to document here as I'm torn on whether or not we should be doing more here.

Jun 10 2019, 11:52 AM · Restricted Project

Jun 3 2019

echristo committed rG6d04fd15b5a2: Remove test/CodeGen/builtin-stackaddress.c as it duplicates test/CodeGen/2004… (authored by echristo).
Remove test/CodeGen/builtin-stackaddress.c as it duplicates test/CodeGen/2004…
Jun 3 2019, 4:15 PM
echristo committed rL362462: Remove test/CodeGen/builtin-stackaddress.c as it duplicates.
Remove test/CodeGen/builtin-stackaddress.c as it duplicates
Jun 3 2019, 4:15 PM
echristo closed D62133: test/CodeGen/builtin-stackaddress.c duplicates test/CodeGen/2004-02-13-BuiltinFrameReturnAddress.c.
Jun 3 2019, 4:15 PM · Restricted Project, Restricted Project
echristo added a comment to D62133: test/CodeGen/builtin-stackaddress.c duplicates test/CodeGen/2004-02-13-BuiltinFrameReturnAddress.c.

done thusly:

Jun 3 2019, 4:15 PM · Restricted Project, Restricted Project

May 28 2019

echristo accepted D60242: Add IR support, ELF section and user documentation for partitioning feature..

Some inline comment requests and if you wouldn't mind changing the type allocator separately it'd be great.

May 28 2019, 6:43 PM · Restricted Project
echristo accepted D62133: test/CodeGen/builtin-stackaddress.c duplicates test/CodeGen/2004-02-13-BuiltinFrameReturnAddress.c.

LGTM.

May 28 2019, 4:44 PM · Restricted Project, Restricted Project

May 21 2019

echristo added inline comments to D62225: [clang][NewPM] Fixing remaining -O0 tests that are broken under new PM.
May 21 2019, 5:20 PM · Restricted Project, Restricted Project

May 16 2019

echristo accepted D61990: [X86] Ignore "short" even harder in Intel ASM..

Be nice to split the predicate change from the short change. No need to re-review though, they're both fine.

May 16 2019, 4:03 PM · Restricted Project

May 15 2019

echristo committed rG29ff0f25196a: Fix typo in comment of CSAction -> Action. (authored by echristo).
Fix typo in comment of CSAction -> Action.
May 15 2019, 6:07 PM
echristo committed rL360834: Fix typo in comment of CSAction -> Action..
Fix typo in comment of CSAction -> Action.
May 15 2019, 6:05 PM

May 14 2019

echristo committed rG030b17db665a: Temporarily revert "Change -gz and -Wa,--compress-debug-sections to use gABI… (authored by echristo).
Temporarily revert "Change -gz and -Wa,--compress-debug-sections to use gABI…
May 14 2019, 12:39 PM
echristo added a reverting change for rGbdb21337e6e1: Change -gz and -Wa,--compress-debug-sections to use gABI compression…: rG030b17db665a: Temporarily revert "Change -gz and -Wa,--compress-debug-sections to use gABI….
May 14 2019, 12:39 PM
echristo committed rL360703: Temporarily revert "Change -gz and -Wa,--compress-debug-sections to use gABI….
Temporarily revert "Change -gz and -Wa,--compress-debug-sections to use gABI…
May 14 2019, 12:39 PM
echristo committed rC360703: Temporarily revert "Change -gz and -Wa,--compress-debug-sections to use gABI….
Temporarily revert "Change -gz and -Wa,--compress-debug-sections to use gABI…
May 14 2019, 12:38 PM
echristo added inline comments to D61846: [DAGCombiner] Fix invalid alias analysis..
May 14 2019, 11:50 AM · Restricted Project

May 10 2019

echristo committed rGa2d876c95a88: Remove an unnecessary header from SROA.h. (authored by echristo).
Remove an unnecessary header from SROA.h.
May 10 2019, 12:59 AM
echristo committed rL360410: Remove an unnecessary header from SROA.h..
Remove an unnecessary header from SROA.h.
May 10 2019, 12:59 AM
echristo added a comment to D61737: [lldb] add -ex CLI option as alias to --one-line.

I would rather not clutter up the lldb command driver's options with gdb command flags. That seems like it will make lldb harder to figure out and reduce our freedom to choose reasonable short names for lldb driver options.

It was reasonable to add lldb aliases for the gdb commands that you use tens to hundreds of times in a give debugging session - those get wired into your hands... But I don't think the same consideration holds for command line options...

If we feel the need to add a driver gdb compatibility mode like this, I like Rafael's suggestion of:

lldb --gdb <everything after this is handled by our gdb emulation parser>

May 10 2019, 12:45 AM · Restricted Project

May 9 2019

echristo accepted D61762: [NFC][compiler-rt][builtins] Tidy and match comments for floating point operations.
May 9 2019, 3:27 PM · Restricted Project, Restricted Project

May 8 2019

echristo committed rGc93f56d39e62: Temporarily Revert "[DebugInfo] Terminate more location-list ranges at the end… (authored by echristo).
Temporarily Revert "[DebugInfo] Terminate more location-list ranges at the end…
May 8 2019, 4:54 PM
echristo committed rL360301: Temporarily Revert "[DebugInfo] Terminate more location-list ranges at the end….
Temporarily Revert "[DebugInfo] Terminate more location-list ranges at the end…
May 8 2019, 4:51 PM

May 7 2019

echristo closed D61546: Stop the DAG combiner from combining vector stores greater than preferred vector width....

This happened here:

May 7 2019, 12:33 PM · Restricted Project
echristo committed rG472722173440: Make sure that the DAG combiner doesn't merge stores that we explicitly asked… (authored by echristo).
Make sure that the DAG combiner doesn't merge stores that we explicitly asked…
May 7 2019, 12:24 PM
echristo committed rL360183: Make sure that the DAG combiner doesn't merge stores that we explicitly.
Make sure that the DAG combiner doesn't merge stores that we explicitly
May 7 2019, 12:23 PM

May 6 2019

echristo updated the diff for D61546: Stop the DAG combiner from combining vector stores greater than preferred vector width....

Update comments. Have testcase work for multiple sizes and multiple preferred vector sizes.

May 6 2019, 10:18 PM · Restricted Project
echristo committed rGe2b7332d2d9f: Fix typo in risc-v register aliases. (authored by echristo).
Fix typo in risc-v register aliases.
May 6 2019, 5:45 PM
echristo committed rC360104: Fix typo in risc-v register aliases..
Fix typo in risc-v register aliases.
May 6 2019, 5:45 PM
echristo committed rL360104: Fix typo in risc-v register aliases..
Fix typo in risc-v register aliases.
May 6 2019, 5:45 PM
echristo closed D61464: [RiscV] Typo in register aliases.
May 6 2019, 5:44 PM · Restricted Project, Restricted Project
echristo added reviewers for D59168: [runtimes] Move libunwind, libc++abi and libc++ to lib/$target/c++ and include/c++: saugustine, cmatthews.

Adding Sterling and Chris to this to take a look at the new layout :)

May 6 2019, 3:16 PM · Restricted Project, Restricted Project, Restricted Project

May 3 2019

echristo added a comment to D61546: Stop the DAG combiner from combining vector stores greater than preferred vector width....

Arguably this could use some more comments and I'll add those as well.

May 3 2019, 8:17 PM · Restricted Project
echristo created D61546: Stop the DAG combiner from combining vector stores greater than preferred vector width....
May 3 2019, 8:16 PM · Restricted Project

May 2 2019

echristo committed rG86e2f169bb7b: Tidy up a comment, fix a typo, remove a comment that's obsolete. (authored by echristo).
Tidy up a comment, fix a typo, remove a comment that's obsolete.
May 2 2019, 5:14 PM
echristo committed rL359852: Tidy up a comment, fix a typo, remove a comment that's obsolete..
Tidy up a comment, fix a typo, remove a comment that's obsolete.
May 2 2019, 5:14 PM
echristo accepted D61464: [RiscV] Typo in register aliases.

LGTM. Sorry I didn't notice this earlier.

May 2 2019, 5:07 PM · Restricted Project, Restricted Project