Page MenuHomePhabricator

mib (Med Ismail Bennani)
Compiler Engineer

Projects

User does not belong to any projects.

User Details

User Since
Jan 19 2019, 8:24 PM (227 w, 5 d)

Recent Activity

Today

mib added a comment to D152012: [lldb/crashlog] Expand crash report file path before parsing.

The key here is that you're expanding the path and checking for the validity before calling CrashLogParser.create() right? It looks like for the load_crashlog_in_scripted_process case nothing has changed. If my understanding is correct, then this looks good to me.

Fri, Jun 2, 11:25 AM · Restricted Project, Restricted Project
mib requested review of D152013: [lldb/Commands] Fix disk completion from root directory.
Fri, Jun 2, 10:41 AM · Restricted Project, Restricted Project
mib requested review of D152012: [lldb/crashlog] Expand crash report file path before parsing.
Fri, Jun 2, 10:39 AM · Restricted Project, Restricted Project
mib requested review of D152011: [lldb/Commands] Add support to auto-completion for user commands.
Fri, Jun 2, 10:35 AM · Restricted Project, Restricted Project
mib updated the diff for D151859: [lldb/Target] Add ability to set a label to targets.

Address @bulbazord comments:

  • Make Target::SetLabel return an llvm::Error to propagate error messages to both the CommandObject and the SBAPI callers.
Fri, Jun 2, 1:41 AM · Restricted Project, Restricted Project
mib accepted D151960: [lldb][NFCI] Change the way Process stores StructuredData plugins.
Fri, Jun 2, 12:24 AM · Restricted Project, Restricted Project
mib accepted D151962: [lldb][NFCI] Change return type of REPL::GetSourceFileBasename.
Fri, Jun 2, 12:19 AM · Restricted Project, Restricted Project

Yesterday

mib accepted D151949: [lldb][NFCI] Use size_t in OptionValueProperties.
Thu, Jun 1, 11:57 PM · Restricted Project, Restricted Project
mib committed rG78ecb428d564: [lldb/crashlog] Add test for non-symbolicated report crash (authored by mib).
[lldb/crashlog] Add test for non-symbolicated report crash
Thu, Jun 1, 5:52 PM · Restricted Project
mib committed rG0b080260541d: [lldb/crashlog] Run python formatter (nfc) (authored by mib).
[lldb/crashlog] Run python formatter (nfc)
Thu, Jun 1, 5:13 PM · Restricted Project
mib committed rG032d91cb2fb5: [lldb/crashlog] Create interactive crashlog with no binary (authored by mib).
[lldb/crashlog] Create interactive crashlog with no binary
Thu, Jun 1, 5:11 PM · Restricted Project
mib committed rGa5a6c03c448b: [lldb/crashlog] Fix crash when loading non-symbolicated report (authored by mib).
[lldb/crashlog] Fix crash when loading non-symbolicated report
Thu, Jun 1, 5:11 PM · Restricted Project
mib closed D151849: [lldb/crashlog] Create interactive crashlog with no binary.
Thu, Jun 1, 5:11 PM · Restricted Project, Restricted Project
mib closed D151844: [lldb/crashlog] Fix crash when loading non-symbolicated report.
Thu, Jun 1, 5:11 PM · Restricted Project, Restricted Project
mib updated the diff for D151849: [lldb/crashlog] Create interactive crashlog with no binary.

Address @bulbazord last comments

Thu, Jun 1, 5:08 PM · Restricted Project, Restricted Project
mib accepted D151940: Fix regex & startsWith name lookup in SBTarget::FindGlobalVariables.

LGTM!

Thu, Jun 1, 3:13 PM · Restricted Project, Restricted Project
mib updated the diff for D151859: [lldb/Target] Add ability to set a label to targets.

Address @bulbazord & @jingham's comments:

  • Rename name -> label
  • Add test
  • Add sanity check to avoid having integer only labels
  • Add target index when label already exist for another target
Thu, Jun 1, 1:03 PM · Restricted Project, Restricted Project
mib added inline comments to D151859: [lldb/Target] Add ability to set a label to targets.
Thu, Jun 1, 12:53 PM · Restricted Project, Restricted Project
mib updated the diff for D151849: [lldb/crashlog] Create interactive crashlog with no binary.

Reload the previous version of this diff

Thu, Jun 1, 12:53 PM · Restricted Project, Restricted Project
mib updated the diff for D151849: [lldb/crashlog] Create interactive crashlog with no binary.

Address @bulbazord & @jingham's comments:

  • Rename name -> label
  • Add test
  • Add sanity check to avoid having integer only labels
  • Add target index when label already exist for another target
Thu, Jun 1, 12:51 PM · Restricted Project, Restricted Project
mib added a comment to D151843: Add EXC_SYSCALL to the allowable ignored exceptions for Darwin.

LGTM! Sorry I didn't look at this earlier...

Thu, Jun 1, 11:10 AM · Restricted Project, Restricted Project

Wed, May 31

mib added a comment to D151859: [lldb/Target] Add ability to set a label to targets.

I still need to add some tests.

Wed, May 31, 5:11 PM · Restricted Project, Restricted Project
mib requested review of D151859: [lldb/Target] Add ability to set a label to targets.
Wed, May 31, 5:10 PM · Restricted Project, Restricted Project
mib added inline comments to D151849: [lldb/crashlog] Create interactive crashlog with no binary.
Wed, May 31, 4:39 PM · Restricted Project, Restricted Project
mib added inline comments to D151844: [lldb/crashlog] Fix crash when loading non-symbolicated report.
Wed, May 31, 3:50 PM · Restricted Project, Restricted Project
mib requested review of D151849: [lldb/crashlog] Create interactive crashlog with no binary.
Wed, May 31, 3:47 PM · Restricted Project, Restricted Project
mib requested review of D151844: [lldb/crashlog] Fix crash when loading non-symbolicated report.
Wed, May 31, 3:28 PM · Restricted Project, Restricted Project
mib added inline comments to D151591: HostInfoMacOS: Add a utility function for finding an SDK-specific tool.
Wed, May 31, 10:28 AM · Restricted Project
mib added a comment to D151597: [lldb][NFCI] Remove use of ConstString from IOHandler.

TBH, it feels like a lot of - risky - changes just so IOHandlerGetControlSequence can return a llvm::StringRef ? Is that really necessary ?

Wed, May 31, 10:25 AM · Restricted Project, Restricted Project

Tue, May 30

mib accepted D151764: [lldb] Support file and function names in LLDB_LOGF macro.

LGTM! Can we add a test for this ?

Tue, May 30, 4:51 PM · Restricted Project
mib accepted D151762: [lldb] Remove __FUNCTION__ from log messages in lldbHost (NFC).

LGTM! Are you considering doing it for the rest of the codebase as well ? That would be very nice :)

Tue, May 30, 4:36 PM · Restricted Project

Thu, May 25

mib added inline comments to D151366: [lldb] Disable variable watchpoints when going out of scope.
Thu, May 25, 4:59 PM · Restricted Project, Restricted Project
mib added inline comments to D151366: [lldb] Disable variable watchpoints when going out of scope.
Thu, May 25, 4:51 PM · Restricted Project, Restricted Project
mib accepted D151392: Fix SBValue::FindValue for file static variables.

LGTM!

Thu, May 25, 4:09 PM · Restricted Project, Restricted Project
mib accepted D151399: [lldb] Introduce FileSpec::GetComponents.

LGTM!

Thu, May 25, 3:48 PM · Restricted Project, Restricted Project
mib updated subscribers of D151497: [lldb] Improve function caller error message .

I think it's good to improve the error messaging but I think we can probably do better. "Function caller" is specific to the internals of LLDB and isn't really meaningful for many users. It's also somewhat confusing from a user's perspective when the expression you're running isn't calling a function. For example:

alex@alangford build % ./bin/lldb ~/tmp/foo
(lldb) target create "/Users/alex/tmp/foo"
Current executable set to '/Users/alex/tmp/foo' (arm64).
(lldb) b main
Breakpoint 1: where = foo`main + 28 at foo.c:6:7, address = 0x0000000100003f68
(lldb) r
Process 44467 launched: '/Users/alex/tmp/foo' (arm64)
Process 44467 stopped
* thread #1, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1
    frame #0: 0x0000000100003f68 foo`main at foo.c:6:7
   1    #include <stdio.h>
   2
   3    int g_foo = 5;
   4
   5    int main() {
-> 6      int val = 7;
   7      printf("Hello World!: %d\n", val);
   8      return 0;
   9    }
(lldb) c
Process 44467 resuming
Hello World!: 7
Process 44467 exited with status = 0 (0x00000000)
(lldb) p val
error: Can't make a function caller while the process is running

If I were an end user who didn't know much about LLDB, I would think "I'm trying to print a variable, what's this about a function?" and "Why is memory allocation involved?". I would suggest changing the error message to something like: "Unable to evaluate expression while the process is $STATE: the process must be running and stopped to evaluate this expression".

What do you think?

Thu, May 25, 3:12 PM · Restricted Project, Restricted Project
mib committed rG7c847ac4bd1b: [lldb] Disable variable watchpoints when going out of scope (authored by mib).
[lldb] Disable variable watchpoints when going out of scope
Thu, May 25, 3:07 PM · Restricted Project
mib closed D151366: [lldb] Disable variable watchpoints when going out of scope.
Thu, May 25, 3:07 PM · Restricted Project, Restricted Project
mib added a comment to D151366: [lldb] Disable variable watchpoints when going out of scope.

@aprantl Do you know if we can detect the end of the scope ? I'm not sure it's possible currently ... But even if we could do it, that wouldn't cover the following case:

When setting a variable watchpoint, you would have to store the scope the variable is in, and then ignore all hits that are (1) on the same thread but (2) where the scope is not any of the lexical scopes in any of the stack frames. Because you still want to find modifications in child frames or on other threads.

Thu, May 25, 3:06 PM · Restricted Project, Restricted Project
mib accepted D151381: [lldb][NFCI] Include <cstdio> in SBDefines for FILE * definition.
Thu, May 25, 3:04 PM · Restricted Project, Restricted Project
mib added a reverting change for rG429e74839506: Revert "[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process`…: rG0e90ac9c94d7: Re-revert "[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process`….
Thu, May 25, 2:00 PM · Restricted Project
mib committed rG0e90ac9c94d7: Re-revert "[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process`… (authored by mib).
Re-revert "[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process`…
Thu, May 25, 2:00 PM · Restricted Project
mib added a comment to D151460: [NFC][Py Reformat] Reformat python files in lldb.

Can you add this commit hash to the .git-blame-ignore-revs file so it doesn't show up in the git history

Thu, May 25, 9:17 AM · Restricted Project, Restricted Project

Wed, May 24

mib added a comment to D151366: [lldb] Disable variable watchpoints when going out of scope.

Just so I understand the limitations:
This works for

int main() {
  int val = 0;
  // Break here
  val++;
  val++;
  return 0;
}

but not for

int main() {
  {
    int val = 0;
    // Break here
    val++;
    val++;
  }
  {
    int other = 42;
    printf("assuming that other and val aliases");
  }
  return 0;
}

?

To be clear, I think this is still useful!

Wed, May 24, 5:02 PM · Restricted Project, Restricted Project
mib updated the diff for D151366: [lldb] Disable variable watchpoints when going out of scope.

Address @bulbazord & @aprantl comments.

Wed, May 24, 4:46 PM · Restricted Project, Restricted Project
mib added inline comments to D151366: [lldb] Disable variable watchpoints when going out of scope.
Wed, May 24, 3:57 PM · Restricted Project, Restricted Project
mib added inline comments to D151366: [lldb] Disable variable watchpoints when going out of scope.
Wed, May 24, 3:53 PM · Restricted Project, Restricted Project
mib resigned from D111409: proposed support for Java interface to Scripting Bridge.
Wed, May 24, 3:12 PM · Restricted Project
mib requested review of D151366: [lldb] Disable variable watchpoints when going out of scope.
Wed, May 24, 12:51 PM · Restricted Project, Restricted Project
mib committed rGe1086384e584: [lldb] Disable `watchpoint_callback.test` temporarily on darwin (authored by mib).
[lldb] Disable `watchpoint_callback.test` temporarily on darwin
Wed, May 24, 10:59 AM · Restricted Project

Tue, May 23

mib added a reverting change for rG273a2d337f67: [lldb] Move PassthroughScriptedProcess to `lldb.scripted_process` module: rG429e74839506: Revert "[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process`….
Tue, May 23, 4:04 PM · Restricted Project
mib committed rG429e74839506: Revert "[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process`… (authored by mib).
Revert "[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process`…
Tue, May 23, 4:04 PM · Restricted Project
mib added a reverting change for D151044: [lldb] Move PassthroughScriptedProcess to `lldb.scripted_process` module: rG429e74839506: Revert "[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process`….
Tue, May 23, 4:04 PM · Restricted Project, Restricted Project

Mon, May 22

mib committed rGbed4d7155b81: [lldb] Fix racing issue when loading inlined symbols from crash report (authored by mib).
[lldb] Fix racing issue when loading inlined symbols from crash report
Mon, May 22, 10:19 PM · Restricted Project
mib committed rGabba5de72466: [lldb/crashlog] Remove tempfile prefix from inlined symbol object file (authored by mib).
[lldb/crashlog] Remove tempfile prefix from inlined symbol object file
Mon, May 22, 4:15 PM · Restricted Project
mib committed rG273a2d337f67: [lldb] Move PassthroughScriptedProcess to `lldb.scripted_process` module (authored by mib).
[lldb] Move PassthroughScriptedProcess to `lldb.scripted_process` module
Mon, May 22, 4:15 PM · Restricted Project
mib committed rG8f407b8e6329: [lldb] Add "Trace" stop reason in Scripted Thread (authored by mib).
[lldb] Add "Trace" stop reason in Scripted Thread
Mon, May 22, 4:14 PM · Restricted Project
mib committed rGac09a0e192e3: [lldb] Fix process LLDB_LOG typo (nfci) (authored by mib).
[lldb] Fix process LLDB_LOG typo (nfci)
Mon, May 22, 4:14 PM · Restricted Project
mib committed rG1370a1cb5b97: [lldb] Add support for negative integer to {SB,}StructuredData (authored by mib).
[lldb] Add support for negative integer to {SB,}StructuredData
Mon, May 22, 4:14 PM · Restricted Project
mib closed D151045: [lldb/crashlog] Remove tempfile prefix from inlined symbol object file.
Mon, May 22, 4:14 PM · Restricted Project, Restricted Project
mib closed D151044: [lldb] Move PassthroughScriptedProcess to `lldb.scripted_process` module.
Mon, May 22, 4:14 PM · Restricted Project, Restricted Project
mib closed D151043: [lldb] Add "Trace" stop reason in Scripted Thread.
Mon, May 22, 4:14 PM · Restricted Project, Restricted Project
mib closed D150485: [lldb] Add support for negative integer to {SB,}StructuredData.
Mon, May 22, 4:14 PM · Restricted Project, Restricted Project
mib updated the diff for D151045: [lldb/crashlog] Remove tempfile prefix from inlined symbol object file.

More refactoring

Mon, May 22, 3:54 PM · Restricted Project, Restricted Project
mib updated the diff for D151045: [lldb/crashlog] Remove tempfile prefix from inlined symbol object file.

Address @JDevlieghere & @bulbazord comments.

Mon, May 22, 3:02 PM · Restricted Project, Restricted Project
mib updated the diff for D150485: [lldb] Add support for negative integer to {SB,}StructuredData.

Address @bulbazord comments.

Mon, May 22, 1:55 PM · Restricted Project, Restricted Project
mib added a comment to D151044: [lldb] Move PassthroughScriptedProcess to `lldb.scripted_process` module.

The bug that you're fixing is with thread handling in MultiplexerScriptedProcess right? That looks fine to me too.

Mon, May 22, 1:13 PM · Restricted Project, Restricted Project
mib resigned from D103271: [lldb/Target] Select most relevant frame only in case of signal.
Mon, May 22, 11:24 AM · Restricted Project, Restricted Project
mib added a comment to D151043: [lldb] Add "Trace" stop reason in Scripted Thread.

LGTM. Are there other stop reasons that are currently not supported by scripted threads that we should consider supporting?

Mon, May 22, 10:56 AM · Restricted Project, Restricted Project

Sun, May 21

mib requested review of D151045: [lldb/crashlog] Remove tempfile prefix from inlined symbol object file.
Sun, May 21, 12:59 AM · Restricted Project, Restricted Project
mib requested review of D151044: [lldb] Move PassthroughScriptedProcess to `lldb.scripted_process` module.
Sun, May 21, 12:57 AM · Restricted Project, Restricted Project
mib added inline comments to D151043: [lldb] Add "Trace" stop reason in Scripted Thread.
Sun, May 21, 12:55 AM · Restricted Project, Restricted Project
mib requested review of D151043: [lldb] Add "Trace" stop reason in Scripted Thread.
Sun, May 21, 12:52 AM · Restricted Project, Restricted Project
mib updated the diff for D150485: [lldb] Add support for negative integer to {SB,}StructuredData.

Many changes:

  • Change SBAPI templated specialization for 2 distinct methods GetUnsignedIntegerValue & GetSignedIntegerValue
  • Add new tests
  • Update previous tests
Sun, May 21, 12:48 AM · Restricted Project, Restricted Project

Fri, May 19

mib committed rGaefa8f4460d1: [lldb] Fix process pid parsing issue (authored by mib).
[lldb] Fix process pid parsing issue
Fri, May 19, 8:09 PM · Restricted Project
mib committed rGdfdd8988621b: [lldb/crashlog] Load inlined symbol into interactive crashlog (authored by mib).
[lldb/crashlog] Load inlined symbol into interactive crashlog
Fri, May 19, 8:08 PM · Restricted Project
mib closed D151002: [lldb] Fix process pid parsing issue.
Fri, May 19, 8:08 PM · Restricted Project, Restricted Project
mib closed D146765: [lldb/crashlog] Load inlined symbol into interactive crashlog.
Fri, May 19, 8:08 PM · Restricted Project, Restricted Project
mib updated the diff for D146765: [lldb/crashlog] Load inlined symbol into interactive crashlog.

Address @kastiglione comments and reformat.

Fri, May 19, 8:06 PM · Restricted Project, Restricted Project
mib updated the diff for D146765: [lldb/crashlog] Load inlined symbol into interactive crashlog.

Address @bulbazord comments

Fri, May 19, 4:18 PM · Restricted Project, Restricted Project
mib added inline comments to D146765: [lldb/crashlog] Load inlined symbol into interactive crashlog.
Fri, May 19, 4:06 PM · Restricted Project, Restricted Project
mib added a comment to D151002: [lldb] Fix process pid parsing issue.

You probably encountered this somewhere, is there a simple test we could add here? The change looks fine to me nonetheless.

Fri, May 19, 3:52 PM · Restricted Project, Restricted Project
mib requested review of D151002: [lldb] Fix process pid parsing issue.
Fri, May 19, 3:19 PM · Restricted Project, Restricted Project
mib updated the summary of D146765: [lldb/crashlog] Load inlined symbol into interactive crashlog.
Fri, May 19, 3:15 PM · Restricted Project, Restricted Project
mib updated the diff for D146765: [lldb/crashlog] Load inlined symbol into interactive crashlog.

Address feedbacks:

  • Simplify and Improve regex
  • Add test
Fri, May 19, 3:14 PM · Restricted Project, Restricted Project

Thu, May 18

mib added inline comments to D146765: [lldb/crashlog] Load inlined symbol into interactive crashlog.
Thu, May 18, 3:13 PM · Restricted Project, Restricted Project
mib accepted D150804: [lldb] Guarantee the lifetimes of all strings returned from SBAPI.

LGTM with nit.

Thu, May 18, 2:44 PM · Restricted Project, Restricted Project

Mon, May 15

mib accepted D150624: [lldb] Fix lua build after 27b6a4e63afe.

Let's fix the Lua build failures first

Mon, May 15, 5:21 PM · Restricted Project, Restricted Project
mib requested changes to D150624: [lldb] Fix lua build after 27b6a4e63afe.

We've already discussed that offline but I really think there should be a ScriptInterpreter SWIGBridge plugin and that would have all the method the Python and Lua SWIGBridge have in common, so the SB classes won't have to be specialized for every scripting language.

Mon, May 15, 4:38 PM · Restricted Project, Restricted Project
mib accepted D150235: [lldb] Change definition of DisassemblerCreateInstance.
Mon, May 15, 1:38 PM · Restricted Project, Restricted Project

Fri, May 12

mib requested review of D150485: [lldb] Add support for negative integer to {SB,}StructuredData.
Fri, May 12, 2:37 PM · Restricted Project, Restricted Project

Thu, May 11

mib accepted D150236: Thread::GetStackFrameCount should forestall interruption.

I guess the InterruptionControl argument makes it clearer. LGTM

Thu, May 11, 11:32 AM · Restricted Project, Restricted Project
mib added inline comments to D150236: Thread::GetStackFrameCount should forestall interruption.
Thu, May 11, 10:34 AM · Restricted Project, Restricted Project

Wed, May 10

mib accepted D150315: Make sure the "Relevant Frame" gets selected before the initial stop printing.

LGTM!

Wed, May 10, 3:29 PM · Restricted Project, Restricted Project
mib requested changes to D150236: Thread::GetStackFrameCount should forestall interruption.

I don't understand why the succeeding return value for GetFramesUpTo is false. It looks counter-intuitive to me. What's the motivation behind that ?

Wed, May 10, 11:37 AM · Restricted Project, Restricted Project

Tue, May 9

mib accepted D150157: [lldb] Mark most SBAPI methods involving private types as protected or private.

LGTM with some comments.

Tue, May 9, 1:16 PM · Restricted Project, Restricted Project
mib accepted D150219: [lldb][NFCI] Remove n^2 loops and simplify iterator usage.

LGTM!

Tue, May 9, 12:21 PM · Restricted Project, Restricted Project
mib added inline comments to D150219: [lldb][NFCI] Remove n^2 loops and simplify iterator usage.
Tue, May 9, 12:20 PM · Restricted Project, Restricted Project
mib added inline comments to D150219: [lldb][NFCI] Remove n^2 loops and simplify iterator usage.
Tue, May 9, 12:17 PM · Restricted Project, Restricted Project

Thu, May 4

mib added a comment to D149774: [lldb] Use templates to simplify {Get,Set}PropertyAtIndex (NFC).

Very cool stuff!

Thu, May 4, 3:12 PM · Restricted Project, Restricted Project