Page MenuHomePhabricator

aleksandr.urakov (Aleksandr Urakov)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 4 2018, 3:35 AM (68 w, 23 m)

Recent Activity

Fri, Sep 13

aleksandr.urakov added a comment to D67347: [Windows] Use information from the PE32 exceptions directory to construct unwind plans.

Hi Jason, thanks for the review!

Fri, Sep 13, 12:17 PM · Restricted Project, Restricted Project
aleksandr.urakov updated the diff for D67347: [Windows] Use information from the PE32 exceptions directory to construct unwind plans.

Update due to the requests.

Fri, Sep 13, 11:00 AM · Restricted Project, Restricted Project

Thu, Sep 12

aleksandr.urakov added a comment to D67347: [Windows] Use information from the PE32 exceptions directory to construct unwind plans.

Thanks all for taking a look!

Thu, Sep 12, 1:11 AM · Restricted Project, Restricted Project
aleksandr.urakov updated the diff for D67347: [Windows] Use information from the PE32 exceptions directory to construct unwind plans.

Update diff due to Pavel's requests.

Thu, Sep 12, 1:02 AM · Restricted Project, Restricted Project

Tue, Sep 10

aleksandr.urakov added a comment to D67347: [Windows] Use information from the PE32 exceptions directory to construct unwind plans.

It's a good point, thank you! I had the same thoughts when I done it, but I'm not completely sure. The problem is that an object file can't be completely responsible for choosing an unwind plan, because some plans are produced by symbol files (and an object file knows nothing about that, if I understand right). So we can move only a part of the plan-choosing-functionality from FuncUnwinders to ObjectFiles, but will it be better? In that case both FuncUnwinders and ObjectFiles will be responsible for managing plans, won't it add an additional complexity to the solution?

Tue, Sep 10, 6:41 AM · Restricted Project, Restricted Project

Mon, Sep 9

aleksandr.urakov updated subscribers of D67347: [Windows] Use information from the PE32 exceptions directory to construct unwind plans.
Mon, Sep 9, 4:46 AM · Restricted Project, Restricted Project
aleksandr.urakov retitled D67347: [Windows] Use information from the PE32 exceptions directory to construct unwind plans from [Windows] Use EH info from the PE32 exceptions directory to construct unwind plans to [Windows] Use information from the PE32 exceptions directory to construct unwind plans.
Mon, Sep 9, 4:46 AM · Restricted Project, Restricted Project
aleksandr.urakov created D67347: [Windows] Use information from the PE32 exceptions directory to construct unwind plans.
Mon, Sep 9, 4:11 AM · Restricted Project, Restricted Project

Thu, Sep 5

aleksandr.urakov committed rG6179c0eb0d15: [Windows] Add support of watchpoints to `ProcessWindows` (authored by aleksandr.urakov).
[Windows] Add support of watchpoints to `ProcessWindows`
Thu, Sep 5, 10:38 PM
aleksandr.urakov committed rL371166: [Windows] Add support of watchpoints to `ProcessWindows`.
[Windows] Add support of watchpoints to `ProcessWindows`
Thu, Sep 5, 10:38 PM
aleksandr.urakov closed D67168: [Windows] Add support of watchpoints to `ProcessWindows`.
Thu, Sep 5, 10:37 PM · Restricted Project, Restricted Project
aleksandr.urakov added a comment to D67168: [Windows] Add support of watchpoints to `ProcessWindows`.

Thanks all!

Thu, Sep 5, 10:37 PM · Restricted Project, Restricted Project
aleksandr.urakov added inline comments to D67168: [Windows] Add support of watchpoints to `ProcessWindows`.
Thu, Sep 5, 5:50 AM · Restricted Project, Restricted Project
aleksandr.urakov updated the diff for D67168: [Windows] Add support of watchpoints to `ProcessWindows`.

Determine whether 8-byte watchpoints are supported or not statically.

Thu, Sep 5, 5:28 AM · Restricted Project, Restricted Project
aleksandr.urakov created D67222: [Windows] Added support of watchpoints to `NativeProcessWindows`.
Thu, Sep 5, 5:08 AM · Restricted Project

Wed, Sep 4

aleksandr.urakov added inline comments to D67168: [Windows] Add support of watchpoints to `ProcessWindows`.
Wed, Sep 4, 10:59 PM · Restricted Project, Restricted Project
aleksandr.urakov updated the diff for D67168: [Windows] Add support of watchpoints to `ProcessWindows`.

Check bitness of the target when checking the watchpoint size.

Wed, Sep 4, 10:39 PM · Restricted Project, Restricted Project
aleksandr.urakov updated the diff for D67168: [Windows] Add support of watchpoints to `ProcessWindows`.

Address the requested changes.

Wed, Sep 4, 10:18 PM · Restricted Project, Restricted Project
aleksandr.urakov updated the diff for D67168: [Windows] Add support of watchpoints to `ProcessWindows`.

Address the requested changes.

Wed, Sep 4, 10:15 PM · Restricted Project, Restricted Project
aleksandr.urakov updated subscribers of D67168: [Windows] Add support of watchpoints to `ProcessWindows`.
Wed, Sep 4, 6:42 AM · Restricted Project, Restricted Project
aleksandr.urakov created D67168: [Windows] Add support of watchpoints to `ProcessWindows`.
Wed, Sep 4, 6:42 AM · Restricted Project, Restricted Project

Sun, Aug 25

aleksandr.urakov accepted D66634: Postfix: move more code out of the PDB plugin.

LGTM, thanks!

Sun, Aug 25, 11:39 PM · Restricted Project

Jul 17 2019

aleksandr.urakov accepted D64851: [NativePDB] Add a FromCompilerDecl for going from lldb -> clang.

LGTM!

Jul 17 2019, 12:30 AM · Restricted Project

Jul 16 2019

aleksandr.urakov added a comment to D64660: add a workaround in GetLine to account for ReadFile not reporintg error.

That makes sense, thank you!

Jul 16 2019, 10:26 PM · Restricted Project

Jul 15 2019

aleksandr.urakov added a reviewer for D64689: [NativePDB] Make GetOrCreateDeclForUid return an lldb CompilerDecl: amccarth.
Jul 15 2019, 11:57 PM
aleksandr.urakov accepted D64688: [NativePDB] Make GetTranslationUnitDecl return an lldb CompilerDeclCtx.

LGTM, thanks! Sorry for the long delay with the reply, I had days off.

Jul 15 2019, 11:56 PM
aleksandr.urakov accepted D64689: [NativePDB] Make GetOrCreateDeclForUid return an lldb CompilerDecl.

LGTM! So the other functions (e.g. GetOrCreateDeclContextForUid, GetParentDeclContext etc.) will be also replaced in the future in a corresponding manner?

Jul 15 2019, 11:49 PM
aleksandr.urakov added a comment to D64660: add a workaround in GetLine to account for ReadFile not reporintg error.

I do not fully understand how this works... Does the second fgets sets error to EINTR?

Jul 15 2019, 11:46 PM · Restricted Project

Jul 11 2019

aleksandr.urakov accepted D64615: check for interrupt from fgets on Windows.

LGTM!

Jul 11 2019, 11:41 PM

Jun 18 2019

aleksandr.urakov added inline comments to D63526: [NativePDB] Read inc-link thunks from /* LINKER */ module and create symbols.
Jun 18 2019, 11:25 PM

May 16 2019

aleksandr.urakov accepted D62021: Fix LLDB warnings when compiling with Clang 8.0.

LGTM, thanks!

May 16 2019, 12:37 PM · Restricted Project, Restricted Project
aleksandr.urakov added a comment to D53753: [Windows] Define generic arguments registers for Windows x64.

Ah, yes, sure, it will just be moved on the lldb-server side. Thanks again for the clarification!

May 16 2019, 5:57 AM · Restricted Project, Restricted Project
aleksandr.urakov added a comment to D53753: [Windows] Define generic arguments registers for Windows x64.

When we evaluate an expression, we jit a bunch of opcodes into the inferior memory and then have it execute them. For that to work, we need to allocate some memory in order to store the opcodes. We cannot use the general expression engine to jit that expression, as we would be back to square one, so we manually set the PC to the entry point of the mmap function, and set the argument values as if it was being called. Then we just let the inferior loose and have it allocate the memory for us and return it. For this to work, we need abi knowledge both to correctly set the arguments of mmap, and to retrieve its result.

May 16 2019, 5:44 AM · Restricted Project, Restricted Project
aleksandr.urakov added a comment to D53753: [Windows] Define generic arguments registers for Windows x64.

I'm not sure what exactly are the consequences of not using the correct ABI definition here. I think the case where the difference may start to become obvious is if you try to get argument values of a function for which you don't have debug info for.

It sounds strange to me... If we don't have symbols for a function, then we can't even know amount of its arguments, so how can we retrieve them? Also e.g. on Windows x86 both stdcall, ccall, thiscall and fastcall are commonly used, so it would be strange to use some "default" ABI...

May 16 2019, 4:53 AM · Restricted Project, Restricted Project
aleksandr.urakov added a comment to D53753: [Windows] Define generic arguments registers for Windows x64.

@lanza Hello! AFAIU, these values have nothing to do with the Microsoft x64 calling convention. They are used by ABISysV_x86_64, which specifies ABI for working with code injectable into a process being debugged. It requires six arguments to be passed through registers (see GetArgumentValues).

May 16 2019, 1:15 AM · Restricted Project, Restricted Project

May 13 2019

aleksandr.urakov committed rG7f5318c89258: [NativePDB] Fix tests after r360569 (authored by aleksandr.urakov).
[NativePDB] Fix tests after r360569
May 13 2019, 8:06 AM
aleksandr.urakov committed rL360587: [NativePDB] Fix tests after r360569.
[NativePDB] Fix tests after r360569
May 13 2019, 8:04 AM
aleksandr.urakov committed rLLDB360587: [NativePDB] Fix tests after r360569.
[NativePDB] Fix tests after r360569
May 13 2019, 8:03 AM
aleksandr.urakov committed rG869f934d19f7: [NativePDB] Support member function types in PdbAstBuilder (authored by aleksandr.urakov).
[NativePDB] Support member function types in PdbAstBuilder
May 13 2019, 2:40 AM
aleksandr.urakov committed rLLDB360569: [NativePDB] Support member function types in PdbAstBuilder.
[NativePDB] Support member function types in PdbAstBuilder
May 13 2019, 2:39 AM
aleksandr.urakov committed rL360569: [NativePDB] Support member function types in PdbAstBuilder.
[NativePDB] Support member function types in PdbAstBuilder
May 13 2019, 2:39 AM

Apr 29 2019

aleksandr.urakov committed rLLDB359420: [Windows] Dump more information about access violation exception.
[Windows] Dump more information about access violation exception
Apr 29 2019, 12:32 AM
aleksandr.urakov committed rG26366c3e2cc0: [Windows] Dump more information about access violation exception (authored by aleksandr.urakov).
[Windows] Dump more information about access violation exception
Apr 29 2019, 12:28 AM
aleksandr.urakov committed rL359420: [Windows] Dump more information about access violation exception.
[Windows] Dump more information about access violation exception
Apr 29 2019, 12:27 AM
aleksandr.urakov closed D60519: [Windows] Dump more information about access violation exception.
Apr 29 2019, 12:27 AM · Restricted Project, Restricted Project

Apr 23 2019

aleksandr.urakov accepted D61003: PostfixExpression: move parser out of NativePDB internals.

LGTM, thanks!

Apr 23 2019, 9:41 AM · Restricted Project

Apr 22 2019

aleksandr.urakov committed rGee12a75e388a: [NativePDB] Add anonymous namespaces support (authored by aleksandr.urakov).
[NativePDB] Add anonymous namespaces support
Apr 22 2019, 12:13 AM
aleksandr.urakov committed rLLDB358873: [NativePDB] Add anonymous namespaces support.
[NativePDB] Add anonymous namespaces support
Apr 22 2019, 12:13 AM
aleksandr.urakov committed rL358873: [NativePDB] Add anonymous namespaces support.
[NativePDB] Add anonymous namespaces support
Apr 22 2019, 12:13 AM
aleksandr.urakov closed D60817: [NativePDB] Add anonymous namespaces support.
Apr 22 2019, 12:12 AM · Restricted Project, Restricted Project

Apr 21 2019

aleksandr.urakov added a comment to D60817: [NativePDB] Add anonymous namespaces support.

Thanks for the review! Sorry, I've forgot to include context in the updated patch. Yes, it's exactly the case that is broken, I've left FIXME there until it will be fixed.

Apr 21 2019, 10:35 PM · Restricted Project, Restricted Project

Apr 19 2019

aleksandr.urakov updated subscribers of D60817: [NativePDB] Add anonymous namespaces support.
Apr 19 2019, 12:51 AM · Restricted Project, Restricted Project

Apr 18 2019

aleksandr.urakov updated the diff for D60817: [NativePDB] Add anonymous namespaces support.

Thank you for the comments, I agree with you. I've fixed the patch.

Apr 18 2019, 11:56 PM · Restricted Project, Restricted Project
aleksandr.urakov added inline comments to D60817: [NativePDB] Add anonymous namespaces support.
Apr 18 2019, 11:56 PM · Restricted Project, Restricted Project

Apr 17 2019

aleksandr.urakov created D60817: [NativePDB] Add anonymous namespaces support.
Apr 17 2019, 5:19 AM · Restricted Project, Restricted Project

Apr 14 2019

aleksandr.urakov accepted D60599: Move postfix expression code out of the NativePDB plugin.

Sorry for the long delay with the response, I had days off. LGTM, thanks!

Apr 14 2019, 11:09 PM · Restricted Project

Apr 5 2019

aleksandr.urakov accepted D60271: PDBFPO: Use references instead of pointers, where possible.

LGTM too!

Apr 5 2019, 12:20 AM · Restricted Project

Apr 2 2019

aleksandr.urakov added a comment to D59862: Add a function for mapping PDBSymbol index IDs to lldb::LangTypes.

I agree with Zachary here. I think that implementing this in the native PDB plugin is more preferable. It still has some issues, and unfortunately I can't get into this right now because of another current work, but I'm planning to do it some later.

Apr 2 2019, 4:56 AM
aleksandr.urakov added a comment to D60068: PDBFPO: Refactor register reference resolution.

I think both approaches are acceptable, but I would prefer to include it into the Symbols library because this functionality is more symbols-related than general.

Apr 2 2019, 3:04 AM · Restricted Project

Apr 1 2019

aleksandr.urakov accepted D60068: PDBFPO: Refactor register reference resolution.

LGTM!

Apr 1 2019, 11:09 PM · Restricted Project

Mar 13 2019

aleksandr.urakov committed rG867c2a7d369c: [AST] Improve support of external layouts in `MicrosoftRecordLayoutBuilder` (authored by aleksandr.urakov).
[AST] Improve support of external layouts in `MicrosoftRecordLayoutBuilder`
Mar 13 2019, 6:38 AM
aleksandr.urakov committed rC356047: [AST] Improve support of external layouts in `MicrosoftRecordLayoutBuilder`.
[AST] Improve support of external layouts in `MicrosoftRecordLayoutBuilder`
Mar 13 2019, 6:37 AM
aleksandr.urakov added a comment to D58544: [AST] Improve support of external layouts in `MicrosoftRecordLayoutBuilder`.

Thank you! I've added a slightly reworked test too.

Mar 13 2019, 6:37 AM · Restricted Project, Restricted Project
aleksandr.urakov committed rL356047: [AST] Improve support of external layouts in `MicrosoftRecordLayoutBuilder`.
[AST] Improve support of external layouts in `MicrosoftRecordLayoutBuilder`
Mar 13 2019, 6:37 AM
aleksandr.urakov closed D58544: [AST] Improve support of external layouts in `MicrosoftRecordLayoutBuilder`.
Mar 13 2019, 6:37 AM · Restricted Project, Restricted Project

Mar 12 2019

aleksandr.urakov added a comment to D58544: [AST] Improve support of external layouts in `MicrosoftRecordLayoutBuilder`.

Ping! Can you take a look, please?

Mar 12 2019, 12:32 AM · Restricted Project, Restricted Project

Feb 22 2019

aleksandr.urakov created D58544: [AST] Improve support of external layouts in `MicrosoftRecordLayoutBuilder`.
Feb 22 2019, 4:30 AM · Restricted Project, Restricted Project

Feb 12 2019

aleksandr.urakov committed rGeaa0ad672e39: [NativePDB] Process virtual bases in the correct order (authored by aleksandr.urakov).
[NativePDB] Process virtual bases in the correct order
Feb 12 2019, 12:19 AM
aleksandr.urakov committed rL353806: [NativePDB] Process virtual bases in the correct order.
[NativePDB] Process virtual bases in the correct order
Feb 12 2019, 12:17 AM
aleksandr.urakov committed rLLDB353806: [NativePDB] Process virtual bases in the correct order.
[NativePDB] Process virtual bases in the correct order
Feb 12 2019, 12:17 AM
aleksandr.urakov closed D56904: [NativePDB] Process virtual bases in the correct order.
Feb 12 2019, 12:17 AM · Restricted Project

Feb 11 2019

aleksandr.urakov added a comment to D56904: [NativePDB] Process virtual bases in the correct order.

Thanks for the help with the tests, it looks like they are ok now! So can we proceed with this patch?

Feb 11 2019, 7:19 AM · Restricted Project
aleksandr.urakov committed rGeac19858e92f: [build.py] Add `-fms-compatibility-version=19` to `build.py` (authored by aleksandr.urakov).
[build.py] Add `-fms-compatibility-version=19` to `build.py`
Feb 11 2019, 7:15 AM
aleksandr.urakov committed rLLDB353709: [build.py] Add `-fms-compatibility-version=19` to `build.py`.
[build.py] Add `-fms-compatibility-version=19` to `build.py`
Feb 11 2019, 7:15 AM
aleksandr.urakov committed rL353709: [build.py] Add `-fms-compatibility-version=19` to `build.py`.
[build.py] Add `-fms-compatibility-version=19` to `build.py`
Feb 11 2019, 7:15 AM
aleksandr.urakov closed D57809: [build.py] Add `VCINSTALLDIR` to default variables.
Feb 11 2019, 7:15 AM · Restricted Project, Restricted Project
aleksandr.urakov added a comment to D57809: [build.py] Add `VCINSTALLDIR` to default variables.

Zachary, can you take a look? please?

Feb 11 2019, 12:11 AM · Restricted Project, Restricted Project

Feb 8 2019

aleksandr.urakov added a comment to D55122: [PDB] Fix location retrieval for function local variables and arguments that are stored relative to VFRAME.

Fixed in r353503, thanks!

Feb 8 2019, 12:51 AM · Restricted Project, Restricted Project
aleksandr.urakov committed rGee21a66a7b80: [NFC] Fix license headers after r352845 (authored by aleksandr.urakov).
[NFC] Fix license headers after r352845
Feb 8 2019, 12:49 AM
aleksandr.urakov committed rL353503: [NFC] Fix license headers after r352845.
[NFC] Fix license headers after r352845
Feb 8 2019, 12:48 AM
aleksandr.urakov committed rLLDB353503: [NFC] Fix license headers after r352845.
[NFC] Fix license headers after r352845
Feb 8 2019, 12:48 AM

Feb 6 2019

aleksandr.urakov updated the diff for D57809: [build.py] Add `VCINSTALLDIR` to default variables.

I've checked your solution, and it's worked for me too! I think that your solution is better because it is more straight-forward. Here is the updated patch.

Feb 6 2019, 4:47 AM · Restricted Project, Restricted Project
aleksandr.urakov created D57809: [build.py] Add `VCINSTALLDIR` to default variables.
Feb 6 2019, 1:07 AM · Restricted Project, Restricted Project
aleksandr.urakov committed rG823c66b617bf: [x64] Process the B field of the REX prefix correctly for the PUSH and POP… (authored by aleksandr.urakov).
[x64] Process the B field of the REX prefix correctly for the PUSH and POP…
Feb 6 2019, 12:49 AM
aleksandr.urakov committed rL353281: [x64] Process the B field of the REX prefix correctly for the PUSH and POP.
[x64] Process the B field of the REX prefix correctly for the PUSH and POP
Feb 6 2019, 12:48 AM
aleksandr.urakov committed rLLDB353281: [x64] Process the B field of the REX prefix correctly for the PUSH and POP.
[x64] Process the B field of the REX prefix correctly for the PUSH and POP
Feb 6 2019, 12:48 AM
aleksandr.urakov closed D57745: [x64] Process the B field of the REX prefix correctly for the PUSH and POP instructions.
Feb 6 2019, 12:48 AM · Restricted Project
aleksandr.urakov added a comment to D57745: [x64] Process the B field of the REX prefix correctly for the PUSH and POP instructions.

Thanks all for the review!

Feb 6 2019, 12:46 AM · Restricted Project
aleksandr.urakov updated the diff for D57745: [x64] Process the B field of the REX prefix correctly for the PUSH and POP instructions.

Yes, sure, sorry about this, I occasionally have forgot to update the prefixes...

Feb 6 2019, 12:45 AM · Restricted Project

Feb 5 2019

aleksandr.urakov updated the diff for D57745: [x64] Process the B field of the REX prefix correctly for the PUSH and POP instructions.

Yes, you are right, thank you! I've updated the patch.

Feb 5 2019, 6:25 AM · Restricted Project
aleksandr.urakov created D57745: [x64] Process the B field of the REX prefix correctly for the PUSH and POP instructions.
Feb 5 2019, 4:28 AM · Restricted Project
aleksandr.urakov accepted D57742: [Expressions] Fix -Wreorder warning from r353149.

Oh, sorry for this, there was even no warning about that on my system. Thanks for catching that!

Feb 5 2019, 3:32 AM · Restricted Project
aleksandr.urakov added a comment to D56904: [NativePDB] Process virtual bases in the correct order.

Thanks for the reply! It seems that after your hint I've figured it out. It's the environment variable VCINSTALLDIR. I've added it to the defaultenv list of the _get_visual_studio_environment function and the test passes now. What do you think about this solution?

Feb 5 2019, 2:34 AM · Restricted Project
aleksandr.urakov added a comment to D55318: [Expressions] Add support of expressions evaluation in some object's context.

Thank you! I've updated the comments in the commit.

Feb 5 2019, 1:15 AM · Restricted Project, Restricted Project
aleksandr.urakov committed rG40624a085c03: [Expressions] Add support of expressions evaluation in some object's context (authored by aleksandr.urakov).
[Expressions] Add support of expressions evaluation in some object's context
Feb 5 2019, 1:15 AM
aleksandr.urakov committed rLLDB353149: [Expressions] Add support of expressions evaluation in some object's context.
[Expressions] Add support of expressions evaluation in some object's context
Feb 5 2019, 1:15 AM
aleksandr.urakov committed rL353149: [Expressions] Add support of expressions evaluation in some object's context.
[Expressions] Add support of expressions evaluation in some object's context
Feb 5 2019, 1:14 AM
aleksandr.urakov closed D55318: [Expressions] Add support of expressions evaluation in some object's context.
Feb 5 2019, 1:14 AM · Restricted Project, Restricted Project

Feb 4 2019

aleksandr.urakov added a comment to D56904: [NativePDB] Process virtual bases in the correct order.

Ping! What do you think about it?

Feb 4 2019, 7:09 AM · Restricted Project
aleksandr.urakov added a comment to D55318: [Expressions] Add support of expressions evaluation in some object's context.

Ping! Can you take a look, please?

Feb 4 2019, 7:09 AM · Restricted Project, Restricted Project