Page MenuHomePhabricator

aganea (Alexandre Ganea)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 6 2017, 1:24 PM (76 w, 4 d)

Recent Activity

Fri, May 24

aganea added inline comments to D62422: [COFF] Add ImportChunkThunk, simplify, deduplicate.
Fri, May 24, 2:25 PM · Restricted Project
aganea accepted D62422: [COFF] Add ImportChunkThunk, simplify, deduplicate.

Looks good, thanks!

Fri, May 24, 2:18 PM · Restricted Project
aganea added a comment to D62356: [COFF] Replace OutputSection* with uint16_t index in Chunk.

The Interop.Dia2Lib.dll and the msdiaXXX.dll have to match. Try regsvr32.exe "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Packages\Debugger\msdia120.dll" (or look for msdia120.dll on your PC).

Fri, May 24, 1:50 PM · Restricted Project
aganea added a comment to D62347: [Support] Modernize process launching API.

The "modernized" api is a good chunk wordier. Can you outline how composing launching would look like with and without this change?

You're right, I'll reduce it. There are a few unrelated changes that could be done after. I'll have to get back to you regarding the "without this change".

Fri, May 24, 12:17 PM · Restricted Project
aganea accepted D62362: [COFF] De-virtualize Chunk and SectionChunk.
Fri, May 24, 12:03 PM · Restricted Project
aganea added a comment to D62356: [COFF] Replace OutputSection* with uint16_t index in Chunk.

Thanks, I built it, but when I try to use it to load lld.pdb, it raises a "class not registered" exception, despite the fact that I followed the README.md instructions and registered msdia120.dll. DIA registration seems to be a continuing pain point in the Windows development world. :( I'll mess around with it.

Fri, May 24, 11:55 AM · Restricted Project
aganea added inline comments to D62362: [COFF] De-virtualize Chunk and SectionChunk.
Fri, May 24, 9:23 AM · Restricted Project
aganea added inline comments to D62356: [COFF] Replace OutputSection* with uint16_t index in Chunk.
Fri, May 24, 9:11 AM · Restricted Project
aganea added a comment to D62356: [COFF] Replace OutputSection* with uint16_t index in Chunk.

Great stuff, thanks for doing this Reid! :) Inherently, this should make things a bit faster, it will also reduce cache misses.
We use a neat tool called Crunchersharp to have a broader overview:

Fri, May 24, 8:42 AM · Restricted Project

Thu, May 23

aganea created D62347: [Support] Modernize process launching API.
Thu, May 23, 2:34 PM · Restricted Project
aganea updated the diff for D55056: [CMake] Default options for faster executables on MSVC.

If using -DLLVM_TOOL_LLDB_BUILD it now displays "Using /MD as required by LLDB."
If using -DLLVM_TOOL_LLDB_BUILD -DLLVM_USE_CRT_RELEASE=MT it displays "Disabling /MT as required by LLDB."
Otherwise /MT is the new default.

Thu, May 23, 1:00 PM · Restricted Project
aganea requested review of D55056: [CMake] Default options for faster executables on MSVC.
Thu, May 23, 1:00 PM · Restricted Project
aganea added a comment to D55056: [CMake] Default options for faster executables on MSVC.
In D55056#1514451, @rnk wrote:

Previously I passed LLVM_USE_CRT_RELEASE=MT explicitly as part of my build, and I ran into the same problems with LLDB that you did. I'll try to modify this once it lands to warn when the user tries to do that. At the time, I couldn't see how to do it easily.

Thu, May 23, 12:00 PM · Restricted Project
aganea added inline comments to D55056: [CMake] Default options for faster executables on MSVC.
Thu, May 23, 10:50 AM · Restricted Project
aganea updated the diff for D55056: [CMake] Default options for faster executables on MSVC.
Thu, May 23, 10:50 AM · Restricted Project

Wed, May 22

aganea reopened D55056: [CMake] Default options for faster executables on MSVC.
Wed, May 22, 5:33 PM · Restricted Project
aganea updated the diff for D55056: [CMake] Default options for faster executables on MSVC.

Reopening with fixes for LLDB.

Wed, May 22, 5:33 PM · Restricted Project
aganea added a comment to D61914: [Support][Test] Time profiler: add regression test.

Could you please move the test to a more approriate location? (ie. clang/trunk/test/Driver/)

Wed, May 22, 7:25 AM · Restricted Project, Restricted Project

Tue, May 21

aganea committed rG047e65db7757: [DebugInfo] Don't emit checksums when compiling a preprocessed CPP (authored by aganea).
[DebugInfo] Don't emit checksums when compiling a preprocessed CPP
Tue, May 21, 12:39 PM
aganea committed rL361296: [DebugInfo] Don't emit checksums when compiling a preprocessed CPP.
[DebugInfo] Don't emit checksums when compiling a preprocessed CPP
Tue, May 21, 12:38 PM
aganea committed rC361296: [DebugInfo] Don't emit checksums when compiling a preprocessed CPP.
[DebugInfo] Don't emit checksums when compiling a preprocessed CPP
Tue, May 21, 12:38 PM
aganea closed D60283: [DebugInfo] Don't emit checksums when compiling a preprocessed CPP.
Tue, May 21, 12:37 PM · Restricted Project
aganea committed rGb07176666b8e: Fix LLDB warnings when compiling with Clang 8.0 (authored by aganea).
Fix LLDB warnings when compiling with Clang 8.0
Tue, May 21, 12:33 PM
aganea committed rL361295: Fix LLDB warnings when compiling with Clang 8.0.
Fix LLDB warnings when compiling with Clang 8.0
Tue, May 21, 12:32 PM
aganea committed rLLDB361295: Fix LLDB warnings when compiling with Clang 8.0.
Fix LLDB warnings when compiling with Clang 8.0
Tue, May 21, 12:32 PM
aganea closed D62021: Fix LLDB warnings when compiling with Clang 8.0.
Tue, May 21, 12:32 PM · Restricted Project, Restricted Project
aganea added inline comments to D60095: [LLD][COFF] Early load PDB type server files.
Tue, May 21, 9:17 AM · Restricted Project
aganea updated the diff for D60095: [LLD][COFF] Early load PDB type server files.
Tue, May 21, 9:14 AM · Restricted Project

Mon, May 20

aganea added a comment to D60283: [DebugInfo] Don't emit checksums when compiling a preprocessed CPP.

Ping! Any further comments?

Mon, May 20, 6:20 AM · Restricted Project
aganea added a comment to D60095: [LLD][COFF] Early load PDB type server files.

Ping!

Mon, May 20, 6:20 AM · Restricted Project

Fri, May 17

aganea added inline comments to D62021: Fix LLDB warnings when compiling with Clang 8.0.
Fri, May 17, 9:56 AM · Restricted Project, Restricted Project

Thu, May 16

aganea created D62021: Fix LLDB warnings when compiling with Clang 8.0.
Thu, May 16, 11:40 AM · Restricted Project, Restricted Project
aganea committed rG738e42efb3c4: ftime-trace as a CoreOption (authored by aganea).
ftime-trace as a CoreOption
Thu, May 16, 8:14 AM
aganea committed rC360907: ftime-trace as a CoreOption.
ftime-trace as a CoreOption
Thu, May 16, 8:14 AM
aganea committed rL360907: ftime-trace as a CoreOption.
ftime-trace as a CoreOption
Thu, May 16, 8:14 AM
aganea closed D61945: ftime-trace as a CoreOption.
Thu, May 16, 8:14 AM · Restricted Project, Restricted Project

Wed, May 15

aganea updated the diff for D60283: [DebugInfo] Don't emit checksums when compiling a preprocessed CPP.

Minor stuff. This solution is surprisingly simple, the main question being (and I don't have an answer) whether increasing the size of PresumedLoc is okay.

Thanks Paul! PresumedLoc seems to be used only as a temporary (on the stack).

Wed, May 15, 12:32 PM · Restricted Project
aganea added inline comments to D61946: [xray] Remove usage of procid_t.
Wed, May 15, 7:35 AM · Restricted Project
aganea created D61946: [xray] Remove usage of procid_t.
Wed, May 15, 7:35 AM · Restricted Project
aganea created D61945: ftime-trace as a CoreOption.
Wed, May 15, 7:05 AM · Restricted Project, Restricted Project
aganea updated the diff for D60283: [DebugInfo] Don't emit checksums when compiling a preprocessed CPP.

Updated again with a different solution. We can't just act on Entry.getFile().hasLineDirectives() because a directive such as #line 100 simply overrides the __LINE__, not __FILE__ (we need to retain and hash the previous __FILE__ in that case). Please see an example here in the IBM documentation.
Also we can't compare by FileID because a LineEntry simply stores a string (called filename) but the buffer for that file isn't stored in the SourceManager.

Wed, May 15, 6:53 AM · Restricted Project

Mon, May 13

aganea added inline comments to D61698: [COFF] Store alignment in log2 form, NFC.
Mon, May 13, 2:07 PM · Restricted Project

Fri, May 10

aganea committed rG904a3e51839d: Fixed tests where grep was not matching the linefeed (authored by aganea).
Fixed tests where grep was not matching the linefeed
Fri, May 10, 1:10 PM
aganea committed rL360467: Fixed tests where grep was not matching the linefeed.
Fixed tests where grep was not matching the linefeed
Fri, May 10, 1:10 PM
aganea committed rC360467: Fixed tests where grep was not matching the linefeed.
Fixed tests where grep was not matching the linefeed
Fri, May 10, 1:10 PM
aganea closed D61496: Fixed tests where grep was not matching the linefeed.
Fri, May 10, 1:10 PM · Restricted Project
aganea added a comment to D59676: Make Parallel.h build with libc++ on Windows..

In addition to the std::mutex issue @BillyONeal mentions, it seems there's a fair amount of "friction"/spinning in concrt.
As a good example, while using WIP patch D55585, about ~15% of time is spent in concrt yielding the CPU on a 6-core PC. And the more cores you have, the worse it gets, up to ~33% of time yielding the CPU on a 36-cores PC (see below).

Fri, May 10, 9:29 AM · Restricted Project

Thu, May 9

aganea added inline comments to D61696: [COFF] Simplify Chunk::writeTo and remove OutputSectionOff, NFC.
Thu, May 9, 1:59 PM · Restricted Project
aganea added inline comments to D61698: [COFF] Store alignment in log2 form, NFC.
Thu, May 9, 1:53 PM · Restricted Project

Tue, May 7

aganea added a comment to D60095: [LLD][COFF] Early load PDB type server files.

Ping! Any further suggestions? Thanks in advance for your time.

Tue, May 7, 6:31 AM · Restricted Project

Mon, May 6

aganea committed rG9ce8b7e95f8b: Fix CMake Invalid Escape Sequence (authored by aganea).
Fix CMake Invalid Escape Sequence
Mon, May 6, 7:07 AM
aganea committed rL360045: Fix CMake Invalid Escape Sequence.
Fix CMake Invalid Escape Sequence
Mon, May 6, 7:07 AM
aganea closed D60658: Fix CMake Invalid Escape Sequence.
Mon, May 6, 7:07 AM · Restricted Project
aganea added a comment to D60658: Fix CMake Invalid Escape Sequence.

I've commited the patch, and quoted you as the maker. You should maybe consider asking commit rights if you're planning more changes in the future?

Mon, May 6, 7:06 AM · Restricted Project
aganea added inline comments to D61496: Fixed tests where grep was not matching the linefeed.
Mon, May 6, 6:49 AM · Restricted Project
aganea committed rG799d96ec395f: Fix compilation warnings when compiling with GCC 7.3 (authored by aganea).
Fix compilation warnings when compiling with GCC 7.3
Mon, May 6, 6:40 AM
aganea committed rL360044: Fix compilation warnings when compiling with GCC 7.3.
Fix compilation warnings when compiling with GCC 7.3
Mon, May 6, 6:40 AM
aganea closed D61046: Fix compilation warnings when compiling with GCC 7.3.
Mon, May 6, 6:40 AM · lld, Restricted Project, Restricted Project
aganea added a comment to D61046: Fix compilation warnings when compiling with GCC 7.3.
In D61046#1486850, @rnk wrote:

The only remaining change I find questionable is the R600 backend change

Mon, May 6, 6:32 AM · lld, Restricted Project, Restricted Project

Sun, May 5

aganea added a comment to D60658: Fix CMake Invalid Escape Sequence.

Do you have commit access? Should I commit this for you?

Sun, May 5, 5:48 AM · Restricted Project

Fri, May 3

aganea added a comment to D61496: Fixed tests where grep was not matching the linefeed.

Checked-in files should not have CRLF endings, in general (there are a very few exceptions, and these aren't among them).
If the checked-in files have LF endings but your tool checks them out with CRLF then that is a problem with your config, or with the tool.
Adding dos2unix to the RUN lines is the wrong fix, either way.

Fri, May 3, 6:35 AM · Restricted Project
aganea updated the diff for D61496: Fixed tests where grep was not matching the linefeed.

Changed to use FileCheck instead of grep

Fri, May 3, 6:35 AM · Restricted Project
aganea created D61496: Fixed tests where grep was not matching the linefeed.
Fri, May 3, 5:53 AM · Restricted Project
aganea updated the summary of D61496: Fixed tests where grep was not matching the linefeed.
Fri, May 3, 5:53 AM · Restricted Project

Wed, May 1

aganea updated subscribers of D42642: [CUDA] Detect installation in PATH.

So it turns out this is a symlink issue. The file clang/trunk/test/Driver/Inputs/CUDA-symlinks/usr/bin/ptxas has been synchronized on my Windows 10 PC as a regular text file, not a symlink. It looks like TortoiseSVN doesn't implement symlinks. As WSL inherits of my file system, it will not find the symbolic link. I suppose REQUIRES: !system-windows isn't enough for cuda-detect-path.cu, and it would need something like REQUIRES: symlinks along with support in lit. @rnk

Wed, May 1, 1:59 PM · Restricted Project
aganea added a comment to D61046: Fix compilation warnings when compiling with GCC 7.3.

Ping! Is this good to go?

Wed, May 1, 11:25 AM · lld, Restricted Project, Restricted Project

Apr 26 2019

aganea added a comment to D60283: [DebugInfo] Don't emit checksums when compiling a preprocessed CPP.

Thanks Paul, your solution is even better. I'll apply rL333311 locally - if everything's fine, do you mind if I re-land it again?

Apr 26 2019, 8:49 AM · Restricted Project
aganea committed rG8245140d3f59: Fix llvm-objcopy/ELF/preserve-segment-contents test on UTF-8 locale (authored by aganea).
Fix llvm-objcopy/ELF/preserve-segment-contents test on UTF-8 locale
Apr 26 2019, 6:11 AM
aganea committed rL359302: Fix llvm-objcopy/ELF/preserve-segment-contents test on UTF-8 locale.
Fix llvm-objcopy/ELF/preserve-segment-contents test on UTF-8 locale
Apr 26 2019, 6:10 AM
aganea closed D61137: Fix llvm-objcopy/ELF/preserve-segment-contents test on UTF-8 locale.
Apr 26 2019, 6:10 AM · Restricted Project
aganea retitled D61137: Fix llvm-objcopy/ELF/preserve-segment-contents test on UTF-8 locale from Fix llvm-objcopy/ELF/preserve-segment-contents test under Python 3.6 to Fix llvm-objcopy/ELF/preserve-segment-contents test on UTF-8 locale.
Apr 26 2019, 6:05 AM · Restricted Project
aganea added a comment to D61137: Fix llvm-objcopy/ELF/preserve-segment-contents test on UTF-8 locale.

Yes the encoding is different. By running https://gist.github.com/zed/5898423 I get:

   Windows 10 cmd shell:                    WSL:
locale(False):     cp1252             locale(False):     UTF-8
device(stdout):    cp850              device(stdout):    UTF-8
stdout.encoding:   utf-8              stdout.encoding:   UTF-8
device(stderr):    cp850              device(stderr):    UTF-8
stderr.encoding:   utf-8              stderr.encoding:   UTF-8
device(stdin):     cp850              device(stdin):     UTF-8
stdin.encoding:    utf-8              stdin.encoding:    UTF-8

I've checked clang/llvm/lld/lldb, this seems to be the only place where raw bytes are encoded in python.

Apr 26 2019, 6:05 AM · Restricted Project

Apr 25 2019

Herald added a project to D42642: [CUDA] Detect installation in PATH: Restricted Project.

Just a quick heads-up - the cuda-detect-path.cu test fails on WSL/Ubuntu 18.04:

aganea@MTL-BJ842:/mnt/f/svn/buildWSL$ /usr/bin/python3.6 bin/llvm-lit -vv ../clang/test/Driver/cuda-detect-path.cu
llvm-lit: /mnt/f/svn/llvm/utils/lit/lit/llvm/config.py:341: note: using clang: /mnt/f/svn/buildWSL/bin/clang
-- Testing: 1 tests, single process --
FAIL: Clang :: Driver/cuda-detect-path.cu (1 of 1)
******************** TEST 'Clang :: Driver/cuda-detect-path.cu' FAILED ********************
Apr 25 2019, 10:23 AM · Restricted Project
aganea added inline comments to D61046: Fix compilation warnings when compiling with GCC 7.3.
Apr 25 2019, 9:27 AM · lld, Restricted Project, Restricted Project
aganea updated the diff for D61046: Fix compilation warnings when compiling with GCC 7.3.

Please let me know if other changes are needed.

Apr 25 2019, 9:27 AM · lld, Restricted Project, Restricted Project
Herald added a reviewer for D61137: Fix llvm-objcopy/ELF/preserve-segment-contents test on UTF-8 locale: alexshap.
Apr 25 2019, 9:13 AM · Restricted Project
aganea updated the diff for D60095: [LLD][COFF] Early load PDB type server files.

I simplfied the patch by moving the PDBInputFile behavior into the existing TypeServerSource class. This makes things more elegant and keeps everything related to debug types into one place.

Apr 25 2019, 8:51 AM · Restricted Project

Apr 24 2019

aganea added inline comments to D61046: Fix compilation warnings when compiling with GCC 7.3.
Apr 24 2019, 2:25 PM · lld, Restricted Project, Restricted Project
aganea added inline comments to D61046: Fix compilation warnings when compiling with GCC 7.3.
Apr 24 2019, 1:04 PM · lld, Restricted Project, Restricted Project
aganea updated the diff for D61046: Fix compilation warnings when compiling with GCC 7.3.

Adressed some of the comments.

Apr 24 2019, 1:04 PM · lld, Restricted Project, Restricted Project

Apr 23 2019

aganea updated the diff for D61046: Fix compilation warnings when compiling with GCC 7.3.
Apr 23 2019, 5:21 PM · lld, Restricted Project, Restricted Project
aganea added inline comments to D61046: Fix compilation warnings when compiling with GCC 7.3.
Apr 23 2019, 5:07 PM · lld, Restricted Project, Restricted Project
aganea created D61046: Fix compilation warnings when compiling with GCC 7.3.
Apr 23 2019, 5:03 PM · lld, Restricted Project, Restricted Project
aganea changed the repository for D60283: [DebugInfo] Don't emit checksums when compiling a preprocessed CPP from rL LLVM to rC Clang.
Apr 23 2019, 3:39 PM · Restricted Project
aganea updated the diff for D60283: [DebugInfo] Don't emit checksums when compiling a preprocessed CPP.

Steal one bit from PresumedLoc::Column as suggested by @rnk.
Ping @rsmith !

Apr 23 2019, 2:01 PM · Restricted Project
aganea committed rG2769d58628f9: [LLD][COFF] Fix /linkrepro with output options that take a filename or path (authored by aganea).
[LLD][COFF] Fix /linkrepro with output options that take a filename or path
Apr 23 2019, 5:30 AM
aganea committed rL358980: [LLD][COFF] Fix /linkrepro with output options that take a filename or path.
[LLD][COFF] Fix /linkrepro with output options that take a filename or path
Apr 23 2019, 5:30 AM
aganea committed rLLD358980: [LLD][COFF] Fix /linkrepro with output options that take a filename or path.
[LLD][COFF] Fix /linkrepro with output options that take a filename or path
Apr 23 2019, 5:30 AM
aganea closed D59530: [LLD][COFF] Fix /linkrepro with options that take a filename or path.
Apr 23 2019, 5:30 AM · Restricted Project

Apr 19 2019

aganea added a comment to D60095: [LLD][COFF] Early load PDB type server files.
In D60095#1472111, @rnk wrote:

InputFile abstracts the concept of a file containing symbols. In each parse() function, we parse a symbol table and then insert symbols to the symbol table. parse() is part of a symbol resolution process step.

Since PDBInputFile doesn't contain any symbols, it doesn't fit to that concept, and it doesn't seem you need to parse them while we parse other types of input files.

So, why don't you just add a pdb file to some global list, and after resolving all symbols, parse them in a simple for loop? I guess that's conceptually much simpler.

IIUC, the point of this change is to start loading types in parallel as early as possible. The suggestion to accumulate the inputs on the side and wait until after symbol resolution won't exploit all the parallelism that's available.

Apr 19 2019, 12:43 PM · Restricted Project

Apr 17 2019

aganea updated the summary of D60095: [LLD][COFF] Early load PDB type server files.
Apr 17 2019, 6:03 AM · Restricted Project
aganea added a comment to D60095: [LLD][COFF] Early load PDB type server files.

Ping! I know Reid is OOO this week and Zachary might not be available for reviewing. @ruiu could you please take a quick look at this? Thank you in advance for your time.

Apr 17 2019, 5:57 AM · Restricted Project

Apr 15 2019

aganea updated the diff for D59530: [LLD][COFF] Fix /linkrepro with options that take a filename or path.
Apr 15 2019, 9:19 AM · Restricted Project
aganea updated the diff for D59530: [LLD][COFF] Fix /linkrepro with options that take a filename or path.

Simplified as requested.

Apr 15 2019, 9:18 AM · Restricted Project
aganea accepted D60658: Fix CMake Invalid Escape Sequence.

Thanks for the fix!

Apr 15 2019, 5:26 AM · Restricted Project

Apr 11 2019

aganea accepted D60576: [cmake] Fix dependency issue in TableGen.

Makes sense, thank you for fixing this!

Apr 11 2019, 1:46 PM · Restricted Project

Apr 9 2019

Herald added a project to D53354: [WIP][NOT FOR COMMIT][PROTOTYPE] clang-scan-deps: dependency scanning tool rough prototype: Restricted Project.
Apr 9 2019, 6:57 AM · Restricted Project

Apr 7 2019

aganea added a comment to D52193: RFC: [clang] Multithreaded compilation support -- NOT FOR SUBMIT.

That is strange. As you can’t mix /Yc and /Yu on the command line, MSBuild should issue two different calls to clang-cl, one with /Yc and one /Yu /MP. Can you check with ProcMon that commands are issued in the right order?

Apr 7 2019, 6:19 AM · Restricted Project, Restricted Project

Apr 5 2019

aganea added a comment to D60283: [DebugInfo] Don't emit checksums when compiling a preprocessed CPP.

I'll try profiling several solution on a large unity/jumbo file and get back with some results.

Apr 5 2019, 11:46 AM · Restricted Project
aganea added a comment to D60283: [DebugInfo] Don't emit checksums when compiling a preprocessed CPP.

See http://llvm-cs.pcc.me.uk/tools/clang/lib/Frontend/VerifyDiagnosticConsumer.cpp#756 for a "is same file" example. I'm not sure adding a bool to PresumedLoc is worth it for this.

Apr 5 2019, 11:46 AM · Restricted Project