Page MenuHomePhabricator

Ilod (Rudy Pons)
User

Projects

User does not belong to any projects.

User Details

User Since
Oct 24 2014, 3:08 AM (266 w, 6 d)

Recent Activity

Feb 8 2017

Ilod added a comment to D29379: [cmake] Generate symbol exports files in config subdir.

I don't have commit rights, so I'll be dependent of someone commiting it for me.

Feb 8 2017, 6:31 AM
Ilod created D29707: Fix improper microsoft-pure-definition warning on template class.
Feb 8 2017, 1:39 AM · Restricted Project

Feb 1 2017

Ilod created D29379: [cmake] Generate symbol exports files in config subdir.
Feb 1 2017, 12:45 AM

Nov 15 2016

Ilod updated the diff for D26656: [COFF] Fix manifest resource file creation on Windows.

Added comment.
I don't have commit rights, so I will depend on you for this.

Nov 15 2016, 11:33 AM · lld
Ilod updated the diff for D26656: [COFF] Fix manifest resource file creation on Windows.

Not much simpler in fact, because we need to handle a vector of files, but more local, so probably easier to understand.

Nov 15 2016, 11:06 AM · lld

Nov 14 2016

Ilod added inline comments to D26656: [COFF] Fix manifest resource file creation on Windows.
Nov 14 2016, 7:03 PM · lld
Ilod added inline comments to D26656: [COFF] Fix manifest resource file creation on Windows.
Nov 14 2016, 6:40 PM · lld
Ilod retitled D26656: [COFF] Fix manifest resource file creation on Windows from to [COFF] Fix manifest resource file creation on Windows.
Nov 14 2016, 6:15 PM · lld

Nov 1 2016

Ilod retitled D26209: Fix windows build after r285702, missing include to define PATH_MAX from to Fix windows build after r285702, missing include to define PATH_MAX.
Nov 1 2016, 12:38 PM

Oct 21 2016

Ilod updated the diff for D25681: [PseudoTerminal] Fix PseudoTerminal MSVC release crash.

Yeah, you're right, the previous code is used for reference was inconsistent here. Now I return false and set an error string. Also remove an hacky ifdef which was needed on previous implementation (because the master id was updated to 0), but now we leave it to -1, so it's not needed anymore.

Oct 21 2016, 7:42 AM

Oct 17 2016

Ilod retitled D25681: [PseudoTerminal] Fix PseudoTerminal MSVC release crash from to [PseudoTerminal] Fix PseudoTerminal MSVC release crash.
Oct 17 2016, 8:51 AM

Jul 12 2016

Ilod added a comment to D21385: Adjust Registry interface to not require plugins to export a registry.

I don't have write access to SVN, so IIUC LLVM policy says I can't approve a patch.

Jul 12 2016, 2:56 AM

Jul 8 2016

Ilod accepted D21971: Explicitly export symbols from the sample analyzer plugin.
Jul 8 2016, 5:24 AM
Ilod added a comment to D21971: Explicitly export symbols from the sample analyzer plugin.

Do you known if there is any good reason Analyzer plugins aren't using the Registry system (thus forcing plugin writers to manually export the functions)?

Jul 8 2016, 5:24 AM
Ilod added a comment to D21385: Adjust Registry interface to not require plugins to export a registry.

Plugins tests are still disabled by lit.cfg I think, as it only checks for enable_shared, which is disabled. I suppose we could wait for both this and the SampleAnalyzerPlugin to be patched before enabling plugins tests if we have LLVM_EXPORT_SYMBOLS_FOR_PLUGINS, as every plugin test should work after this.

Jul 8 2016, 5:23 AM

Jul 2 2016

Ilod added a comment to D21385: Adjust Registry interface to not require plugins to export a registry.

The PrintFunctionNames plugin works fine, but not the SampleAnalyzerPlugin? The checker-plugins test fails. Not sure, but I suppose it's because the regitration method for checkers is different (a C method called clang_registerCheckers is retrieved in the DLL from the main program, then called with a CheckerRegistry - which is not related with the Registry class - on which a templated method addChecker is called).

Jul 2 2016, 9:51 AM

Jul 1 2016

Ilod added a comment to D21385: Adjust Registry interface to not require plugins to export a registry.
In D21385#471807, @Ilod wrote:

I gave up after this. I have Pyhton 3.5 64 bits, and was building clang 32-bits on Windows with Visual Studio 2015 Update 2.

python 3 isn't supported when building llvm/clang, according to llvm's CMakeLists.txt.

Jul 1 2016, 5:29 AM

Jun 30 2016

Ilod abandoned D21908: Allow to load DLL plugins on MSVC clang.
Jun 30 2016, 3:52 PM
Ilod added a comment to D21385: Adjust Registry interface to not require plugins to export a registry.

When I tried your patch and added LLVM_EXPORT_SYMBOLS_FOR_PLUGINS=ON, I had multiple errors on your python scripts, like:

  File "utils/extract_symbols.py", line 399, in <module>
    calling_convention_decoration = is_32bit_windows(libs[0])
  File "utils/extract_symbols.py", line 88, in dumpbin_is_32bit_windows
    match = re.match('.+machine \((\S+)\)', line)
  File "C:\Program Files\Python35\lib\re.py", line 163, in match
    return _compile(pattern, flags).match(string)
TypeError: cannot use a string pattern on a bytes-like object
Jun 30 2016, 3:51 PM
Ilod retitled D21908: Allow to load DLL plugins on MSVC clang from to Allow to load DLL plugins on MSVC clang.
Jun 30 2016, 2:09 PM

Jun 22 2016

Ilod abandoned D20603: [Inline] Add ability to restrict inlining pass to hinted functions only.
Jun 22 2016, 8:16 AM
Ilod added a comment to D20647: Add support for /Ob1 and -finline-hint-functions flags.

Thanks.
I will let you submit it for me if everything seems ok.

Jun 22 2016, 8:02 AM

Jun 21 2016

Ilod added a comment to D20647: Add support for /Ob1 and -finline-hint-functions flags.
Jun 21 2016, 12:17 PM
Ilod updated the diff for D20647: Add support for /Ob1 and -finline-hint-functions flags.

Fixed passing argument from clang driver to cc1.
Added driver tests.

Jun 21 2016, 12:16 PM
Ilod added inline comments to D20647: Add support for /Ob1 and -finline-hint-functions flags.
Jun 21 2016, 11:25 AM
Ilod retitled D20647: Add support for /Ob1 and -finline-hint-functions flags from Add flag to add InlineHint attribute on implicitly inline functions to Add support for /Ob1 and -finline-hint-functions flags.
Jun 21 2016, 5:10 AM
Ilod updated the diff for D18847: Fix Registry::import() crash on mingw when loading a DLL plugin.

Updated to head. Removed the Cmake rule modification (because we need first to add some code in clang to really handle plugins on Windows).

Jun 21 2016, 4:36 AM

Jun 20 2016

Ilod updated the diff for D20647: Add support for /Ob1 and -finline-hint-functions flags.

New patch, which instead add NoInline to function not marked (implicitly or explicitly) inline, when we use the -finline-hint-functions flag (effectily inlining only implicitly and explicitly inline functions). Also adds support for /Ob1, since it's now an alias for it.
There is no longer a flag to treat implicit and explicit inline functions exactly the same way, I don't kow if it's really useful (it can be if we want to use the threshold difference between InlineHint and standard functions). If it's wanted for other uses, I can re-add it.
There is no flag to inline only explicitly marked inline functions, but it can be done by passing -finline-functions -mllvm -inline-threshold=-1000 (which will add InlineHint only to explicitly inline functions, and put a negative enough threshold for non-hinted functions to inline only the hinted ones).

Jun 20 2016, 4:21 PM

Jun 16 2016

Ilod added a comment to D20647: Add support for /Ob1 and -finline-hint-functions flags.

I don't think weak linkage defines this.

Jun 16 2016, 4:28 PM
Ilod added a comment to D20603: [Inline] Add ability to restrict inlining pass to hinted functions only.
Jun 16 2016, 3:32 PM
Ilod updated the diff for D20603: [Inline] Add ability to restrict inlining pass to hinted functions only.

It's an equivalent of /Ob1 on MSVC. We usually use this option on build where we want only optimizations that do not hinder debugging. I want to use this to add support for /Ob1 in clang-cl mode.
It seems I could push -mllvm -inline-threshold=-1000 args or something like this when I get the /Ob1 argument instead of adding an API control in LLVM. It feels a little hackish to me (mainly because of the "arbitrary negative enough threshold" I would need to hardcode in clang), the inlining pass would need to compute the size even if it could be avoided, but it would work just fine. I would rather have an API access than pushing -mllvm command line parameters from clang, but I can live with it if you think it's better to keep it this way.

Jun 16 2016, 3:31 PM
Ilod updated the diff for D20647: Add support for /Ob1 and -finline-hint-functions flags.

Updated to head revision, and pinging this.

Jun 16 2016, 2:21 PM
Ilod updated the diff for D20603: [Inline] Add ability to restrict inlining pass to hinted functions only.

Updated to head revision, and pinging on this.

Jun 16 2016, 2:09 PM

Jun 7 2016

Ilod added a reviewer for D20603: [Inline] Add ability to restrict inlining pass to hinted functions only: eraman.
Jun 7 2016, 9:57 AM
Ilod added a comment to D20603: [Inline] Add ability to restrict inlining pass to hinted functions only.

Pinging about this

Jun 7 2016, 4:43 AM

May 25 2016

Ilod added a reviewer for D20647: Add support for /Ob1 and -finline-hint-functions flags: rsmith.
May 25 2016, 4:00 PM
Ilod retitled D20647: Add support for /Ob1 and -finline-hint-functions flags from to Add flag to add InlineHint attribute on implicitly inline functions.
May 25 2016, 3:40 PM

May 24 2016

Ilod added a comment to D20576: [Driver] Add support for -finline-functions and /Ob2 flags.

It seems the new test was commited as .cc instead of .c, which changes the name mangling, making // NOINLINE-LABEL: @foo fail.
Either the file should be renamed, or -x c should be added to clang invocation, or LABEL check updated.

May 24 2016, 4:21 PM
Ilod retitled D20603: [Inline] Add ability to restrict inlining pass to hinted functions only from to [Opt] Add ability to restrict inlining pass to hinted functions only.
May 24 2016, 3:33 PM
Ilod added a comment to D20576: [Driver] Add support for -finline-functions and /Ob2 flags.

I don't have commit access, so you can do it for me, thanks.

May 24 2016, 1:24 PM
Ilod updated the diff for D20576: [Driver] Add support for -finline-functions and /Ob2 flags.

Updated to respect the 80-columns limit.
Updated the tests to have a clearer checks. (I don't know well the FileCheck, so I took example from test/CodeGen/noinline.c, but this is indeed more comprehensible).

May 24 2016, 1:12 PM
Ilod retitled D20576: [Driver] Add support for -finline-functions and /Ob2 flags from to [Driver] Add support for -finline-functions and /Ob2 flags.
May 24 2016, 10:19 AM

Apr 6 2016

Ilod retitled D18847: Fix Registry::import() crash on mingw when loading a DLL plugin from to Fix Registry::import() crash on mingw when loading a DLL plugin.
Apr 6 2016, 4:31 PM

Jan 28 2015

Ilod added a comment to D7132: Refactoring llvm command line parsing and option registration..

This breaks the build on Visual 2013, with:
C:\Users\Ilod\pdb\llvm\lib\Support\CommandLine.cpp(90): error C2536: 'CommandLineParser::CommandLineParser::ProgramName' : cannot specify explicit initializer for arrays

Jan 28 2015, 1:53 PM