sas (Stephane Sezer)
User

Projects

User does not belong to any projects.

User Details

User Since
Oct 22 2014, 4:26 PM (164 w, 3 d)

Recent Activity

Tue, Nov 28

sas added a comment to D40539: Allow using the object file name for debug symbol resolution.
In D40539#937854, @sas wrote:

Basically, if you have a .debug directory in the same directory where the original object file is, you can have debug symbols there. For instance, you can have:

/my/project/myElf.exe
/my/project/.debug/myElf.exe

with the first file being a standard stripped elf file, and the second one being the associated debug symbols.

Do adding a FileSpec that contains just the basename will cause us to look for this file in the same directory as the original ELF file in the .debug folder?

Tue, Nov 28, 10:25 AM
sas added a comment to D40537: Simplify UUID::IsValid().
In D40537#937866, @sas wrote:

You could use llvm's range adapters to make this slightly better.

auto Bytes = makeArrayRef(m_uuid, m_num_uuid_bytes);
return llvm::find(Bytes, 0) != Bytes.end();

Another option would just be return *this != UUID(m_num_uuid_bytes);

We want at least one non-zero element, we don't want a zero-element, so the proposed code wouldn't work. I'm not sure if there's an llvm utility that allows doing that directly without having to pass a lambda.

Wouldn't the other alternative work, where you just use operator== against a default constructed instance?

Tue, Nov 28, 10:18 AM
sas added a comment to D40537: Simplify UUID::IsValid().

A better solution would be to initialize UUID::m_num_uuid_bytes with zero and only set it to a valid value if we set bytes into it. Then UUID::IsValid() becomes easy:

bool UUID::IsValid() const { return m_num_uuid_bytes > 0; }

This would allows us to actually have a UUID value that is valid and all zeroes. A few comments would need to be fixed as it currently assumes length is 16 or 20.

Tue, Nov 28, 10:11 AM
sas added a comment to D40537: Simplify UUID::IsValid().

You could use llvm's range adapters to make this slightly better.

auto Bytes = makeArrayRef(m_uuid, m_num_uuid_bytes);
return llvm::find(Bytes, 0) != Bytes.end();

Another option would just be return *this != UUID(m_num_uuid_bytes);

Tue, Nov 28, 10:10 AM
sas added a comment to D40539: Allow using the object file name for debug symbol resolution.

Basically, if you have a .debug directory in the same directory where the original object file is, you can have debug symbols there. For instance, you can have:

/my/project/myElf.exe
/my/project/.debug/myElf.exe

with the first file being a standard stripped elf file, and the second one being the associated debug symbols.

Tue, Nov 28, 9:58 AM
sas committed rL319191: Simplify UUID constructors.
Simplify UUID constructors
Tue, Nov 28, 9:51 AM
sas closed D40536: Simplify UUID constructors by committing rL319191: Simplify UUID constructors.
Tue, Nov 28, 9:51 AM

Mon, Nov 27

sas created D40539: Allow using the object file name for debug symbol resolution.
Mon, Nov 27, 6:31 PM
sas created D40538: Relax size constraints on UUID objects.
Mon, Nov 27, 6:18 PM
sas created D40537: Simplify UUID::IsValid().
Mon, Nov 27, 6:14 PM
sas created D40536: Simplify UUID constructors.
Mon, Nov 27, 6:13 PM
sas committed rL319132: Remove some duplicated code in UUID.cpp.
Remove some duplicated code in UUID.cpp
Mon, Nov 27, 5:26 PM
sas closed D40519: Remove some duplicated code in UUID.cpp by committing rL319132: Remove some duplicated code in UUID.cpp.
Mon, Nov 27, 5:26 PM
sas updated the diff for D40519: Remove some duplicated code in UUID.cpp.

Address @zturner's comment and remove a useless temporary variable.

Mon, Nov 27, 5:24 PM
sas created D40519: Remove some duplicated code in UUID.cpp.
Mon, Nov 27, 1:50 PM
sas committed rL319095: Mark UUID::GetByteSize() const.
Mark UUID::GetByteSize() const
Mon, Nov 27, 1:17 PM
sas closed D40517: Mark UUID::GetByteSize() const by committing rL319095: Mark UUID::GetByteSize() const.
Mon, Nov 27, 1:17 PM
sas created D40517: Mark UUID::GetByteSize() const.
Mon, Nov 27, 12:58 PM

Wed, Nov 22

sas committed rL318886: Run clang-format on source/Host/common/Symbols.cpp.
Run clang-format on source/Host/common/Symbols.cpp
Wed, Nov 22, 3:57 PM

Nov 13 2017

sas committed rL318079: Reformat a comment. NFC..
Reformat a comment. NFC.
Nov 13 2017, 12:15 PM

Nov 6 2017

sas added a comment to D39315: Correct the start address for exported windows functions in arm.

Friendly ping.

Nov 6 2017, 4:21 PM
sas committed rL317529: Disable tests in lang/c/shared_lib on Windows.
Disable tests in lang/c/shared_lib on Windows
Nov 6 2017, 4:15 PM
sas closed D39692: Disable tests in lang/c/shared_lib on Windows by committing rL317529: Disable tests in lang/c/shared_lib on Windows.
Nov 6 2017, 4:15 PM
sas updated the summary of D39692: Disable tests in lang/c/shared_lib on Windows.
Nov 6 2017, 12:08 PM
sas created D39692: Disable tests in lang/c/shared_lib on Windows.
Nov 6 2017, 12:07 PM
sas committed rL317501: Add a dependency from check-lldb on lld.
Add a dependency from check-lldb on lld
Nov 6 2017, 11:26 AM
sas closed D39689: Add a dependency from check-lldb on lld by committing rL317501: Add a dependency from check-lldb on lld.
Nov 6 2017, 11:26 AM
sas updated the diff for D39689: Add a dependency from check-lldb on lld.

Move check out of if (TARGET clang) block.

Nov 6 2017, 11:15 AM
sas updated the diff for D39689: Add a dependency from check-lldb on lld.

Check only on Windows.

Nov 6 2017, 9:47 AM
sas added a comment to D39689: Add a dependency from check-lldb on lld.

@davide: I agree, the extra dependency is annoying.

Nov 6 2017, 9:29 AM
sas added reviewers for D39689: Add a dependency from check-lldb on lld: davide, clayborg.
Nov 6 2017, 9:09 AM
sas created D39689: Add a dependency from check-lldb on lld.
Nov 6 2017, 9:08 AM

Nov 2 2017

sas committed rL317219: Run clang-format on lldb.cpp.
Run clang-format on lldb.cpp
Nov 2 2017, 9:57 AM
sas committed rL317218: Use LLVM version string.
Use LLVM version string
Nov 2 2017, 9:57 AM
sas closed D39429: Use LLVM version string by committing rL317218: Use LLVM version string.
Nov 2 2017, 9:56 AM

Oct 30 2017

sas created D39429: Use LLVM version string.
Oct 30 2017, 12:25 PM

Oct 26 2017

sas updated subscribers of D39315: Correct the start address for exported windows functions in arm.

So when you're using ds2 as the remote, are you still using the normal lldb test suite? dotest.py? If so, then we could have a test decorator that says @expectedFailure(not(debugserver=ds2)) or something. Then, even though you're the only one that can run it, at least YOU are sure it works. Some coverage is better than nothing. Is something like this possible?

Oct 26 2017, 1:20 PM
sas added a comment to D39315: Correct the start address for exported windows functions in arm.
In D39315#908246, @sas wrote:

Same thing here, I have no idea how to go about testing something specific like this. Given that this is Windows Phone, it's even worse than simply Windows Desktop because the only way to test is by doing remote debugging. I suppose checking in binaries to the tree so we can analyze the symbols and ensure correctness is the only way to do it?

Do you guys not have access to Windows Desktops? It sounds like we need to get remote debugging of Windows targets working. I don't think I'm gonna be the one to do that in the near future, but if it's going to be a frequent thing that you're improving windows support for remote targets like Windows Phone, I imagine you're going to want the code to be tested, so hopefully you can convince someone to give you cycles to make remote debugging work properly, otherwise you're shipping untested code :-/

Oct 26 2017, 11:23 AM
sas added a comment to D39315: Correct the start address for exported windows functions in arm.

Same thing here, I have no idea how to go about testing something specific like this. Given that this is Windows Phone, it's even worse than simply Windows Desktop because the only way to test is by doing remote debugging. I suppose checking in binaries to the tree so we can analyze the symbols and ensure correctness is the only way to do it?

Oct 26 2017, 11:09 AM
sas added a comment to D39315: Correct the start address for exported windows functions in arm.

@clayborg: the follow-up to this change is in D39337, where we implement GetAddressClass().

Oct 26 2017, 10:50 AM
sas created D39337: Implement a simple GetAddressClass for PECOFF.
Oct 26 2017, 10:50 AM
sas added a dependent revision for D39315: Correct the start address for exported windows functions in arm: D39337: Implement a simple GetAddressClass for PECOFF.
Oct 26 2017, 10:50 AM
sas added a comment to D19603: Fix entry point lookup for ObjectFilePECOFF.

Does this need some ARM support where we strip bit zero in case the entry point is Thumb?

Oct 26 2017, 10:39 AM
sas updated the diff for D39315: Correct the start address for exported windows functions in arm.

Address comments by @clayborg.

Oct 26 2017, 10:25 AM
sas abandoned D12415: Use $<TARGET_FILE:...> to get the path lf lldb in test runs..
Oct 26 2017, 10:09 AM
sas committed rL316673: Allow SysV-i386 ABI on everything other than Apple targets.
Allow SysV-i386 ABI on everything other than Apple targets
Oct 26 2017, 10:05 AM
sas closed D39335: Allow SysV-i386 ABI on everything other than Apple targets by committing rL316673: Allow SysV-i386 ABI on everything other than Apple targets.
Oct 26 2017, 10:04 AM
sas requested review of D39315: Correct the start address for exported windows functions in arm.

I saw the bool is_arm = pattern only in ObjectFileMachO.cpp. I'm not sure about the specifics for Darwin targets, but having an object file with some functions in ARM and some functions in Thumb is valid, so I think checking for each symbol is the right thing to do.

Oct 26 2017, 10:04 AM
sas added a comment to D39314: Implement basic DidAttach and DidLaunch for DynamicLoaderWindowsDYLD.

can you please try adding a test for this one? :)

Oct 26 2017, 9:58 AM
sas retitled D19603: Fix entry point lookup for ObjectFilePECOFF from Fix entry point lookup for ObjectFilePECOFF. to Fix entry point lookup for ObjectFilePECOFF.
Oct 26 2017, 9:51 AM
sas created D39335: Allow SysV-i386 ABI on everything other than Apple targets.
Oct 26 2017, 9:48 AM

Oct 25 2017

sas created D39315: Correct the start address for exported windows functions in arm.
Oct 25 2017, 6:23 PM
sas created D39314: Implement basic DidAttach and DidLaunch for DynamicLoaderWindowsDYLD.
Oct 25 2017, 6:19 PM

Oct 24 2017

sas committed rL316533: Fix a compile warning on linux.
Fix a compile warning on linux
Oct 24 2017, 4:46 PM
sas committed rL316532: Allow ObjectFilePECOFF to initialize with ARM binaries..
Allow ObjectFilePECOFF to initialize with ARM binaries.
Oct 24 2017, 4:41 PM
sas closed D19604: Allow ObjectFilePECOFF to initialize with ARM binaries. by committing rL316532: Allow ObjectFilePECOFF to initialize with ARM binaries..
Oct 24 2017, 4:41 PM
sas updated the diff for D19604: Allow ObjectFilePECOFF to initialize with ARM binaries..

Rebase.

Oct 24 2017, 4:28 PM
sas committed rL316527: Remove some unused function calls from ClangUserExpression.cpp.
Remove some unused function calls from ClangUserExpression.cpp
Oct 24 2017, 4:01 PM
sas committed rL316526: Remove some dead code from ClangExpressionDeclMap.cpp.
Remove some dead code from ClangExpressionDeclMap.cpp
Oct 24 2017, 3:56 PM

Oct 23 2017

sas abandoned D39200: Fix an implicit conversion truncation.

Indeed.

Oct 23 2017, 1:38 PM
sas updated subscribers of D39200: Fix an implicit conversion truncation.
Oct 23 2017, 12:27 PM
sas updated the summary of D39200: Fix an implicit conversion truncation.
Oct 23 2017, 12:25 PM
sas created D39200: Fix an implicit conversion truncation.
Oct 23 2017, 12:17 PM

Oct 9 2017

sas committed rL315221: Update ABISysV_arm64::RegisterIsVolatile to accept registers prefixed with r.
Update ABISysV_arm64::RegisterIsVolatile to accept registers prefixed with r
Oct 9 2017, 10:51 AM
sas closed D38376: Update ABISysV_arm64::RegisterIsVolatile to accept registers prefixed with r by committing rL315221: Update ABISysV_arm64::RegisterIsVolatile to accept registers prefixed with r.
Oct 9 2017, 10:51 AM

Sep 28 2017

sas committed rL314455: Add a few missing newlines in lldb-server messages.
Add a few missing newlines in lldb-server messages
Sep 28 2017, 12:50 PM
sas closed D38373: Add a few missing newlines in lldb-server messages by committing rL314455: Add a few missing newlines in lldb-server messages.
Sep 28 2017, 12:50 PM
sas accepted D38376: Update ABISysV_arm64::RegisterIsVolatile to accept registers prefixed with r.

Looks good to me, but I'd like to see what @clayborg thinks about this.

Sep 28 2017, 12:35 PM
sas created D38373: Add a few missing newlines in lldb-server messages.
Sep 28 2017, 11:50 AM

Sep 25 2017

sas committed rL314045: Implement trampoline step-through for Windows-x86..
Implement trampoline step-through for Windows-x86.
Sep 25 2017, 5:07 AM
sas closed D22231: Implement trampoline step-through for Windows-x86. by committing rL314045: Implement trampoline step-through for Windows-x86..
Sep 25 2017, 5:06 AM
sas updated the diff for D22231: Implement trampoline step-through for Windows-x86..

Rebase + clang-format.

Sep 25 2017, 5:02 AM

Sep 18 2017

sas accepted D37926: Fix the SIGINT handlers.
Sep 18 2017, 10:09 AM

Sep 13 2017

sas accepted D37651: Fix for bug 34532 - A few rough corners related to post-mortem debugging (core/minidump).

Seems fine.

Sep 13 2017, 2:37 PM

Sep 8 2017

sas requested changes to D37651: Fix for bug 34532 - A few rough corners related to post-mortem debugging (core/minidump).

I think it would be cleaner/smaller if you didn't use pure-virtual functions, but instead you had CanReseume() return false in Process.h, and had a default implementation of DoResume() that called llvm::report_fatal_error().

Sep 8 2017, 4:35 PM

Jul 5 2017

sas added a comment to D35036: switch on enum should be exhaustive and warning-free.

Putting that check in an inline function instead of doing ad-hoc validation in the call-site seems better indeed.

Jul 5 2017, 10:34 PM
sas accepted D35036: switch on enum should be exhaustive and warning-free.

Looks like the numeric values of TypeCode are contiguous. It would probably be cleaner to a check after the cast to validate the value instead of having to add a line for each label in the switch statement. Something like this:

Jul 5 2017, 10:09 PM

Jun 22 2017

sas accepted D34550: Fix typo: using && instead of & when evaluating a mask.
Jun 22 2017, 10:32 PM

Jun 5 2017

sas committed rL304725: Avoid invalid string access in ObjCLanguage::MethodName::SetName.
Avoid invalid string access in ObjCLanguage::MethodName::SetName
Jun 5 2017, 10:44 AM
sas closed D33853: Avoid invalid string access in ObjCLanguage::MethodName::SetName by committing rL304725: Avoid invalid string access in ObjCLanguage::MethodName::SetName.
Jun 5 2017, 10:44 AM
sas added a comment to D33853: Avoid invalid string access in ObjCLanguage::MethodName::SetName.

This seems like a fairly straightforward fix so I'll merge it.

Jun 5 2017, 10:44 AM

Jun 2 2017

sas created D33853: Avoid invalid string access in ObjCLanguage::MethodName::SetName.
Jun 2 2017, 3:22 PM

May 23 2017

sas committed rL303677: Fix bad change in RenderScriptx86ABIFixups.cpp, forgot to change everything….
Fix bad change in RenderScriptx86ABIFixups.cpp, forgot to change everything…
May 23 2017, 12:25 PM
sas closed D33456: Fix bad change in RenderScriptx86ABIFixups.cpp, forgot to change everything necessary by committing rL303677: Fix bad change in RenderScriptx86ABIFixups.cpp, forgot to change everything….
May 23 2017, 12:25 PM
sas committed rL303674: hange RenderScriptx86ABIFixups.cpp to use llvm::AttributeList iterator.
hange RenderScriptx86ABIFixups.cpp to use llvm::AttributeList iterator
May 23 2017, 11:54 AM
sas accepted D33453: Change RenderScriptx86ABIFixups.cpp to use llvm::AttributeList iterator.
May 23 2017, 11:42 AM

Apr 27 2017

sas accepted D32584: Fixing the build break introduced by the change in LangStandard in clang.
Apr 27 2017, 12:52 AM

Apr 19 2017

sas accepted D32137: [Utility] Placate another GCC warning.
Apr 19 2017, 5:40 PM

Mar 31 2017

sas committed rL299239: Verify memory address range validity in GDBRemoteCommunicationClient.
Verify memory address range validity in GDBRemoteCommunicationClient
Mar 31 2017, 11:13 AM
sas closed D31485: Verify memory address range validity in GDBRemoteCommunicationClient by committing rL299239: Verify memory address range validity in GDBRemoteCommunicationClient.
Mar 31 2017, 11:13 AM

Mar 29 2017

sas added a reviewer for D31485: Verify memory address range validity in GDBRemoteCommunicationClient: clayborg.

Doing additional checking on the packets returned over the wire seems decent to me. CC'ing @clayborg to see what he thinks about it also.

Mar 29 2017, 10:38 PM

Mar 24 2017

sas accepted D31335: Allow getCompiler to return None in the test suite.
Mar 24 2017, 11:51 AM

Mar 20 2017

sas added a comment to D31086: Remove FileSystem::MakeDirectory.
In D31086#704518, @sas wrote:

The second behavioral change seems good but the first thing you described is a bit odd. Creating folders with 770 does not seem like a common behavior, and 700 or 755 is usually more standard.

Don't forget that the real permissions will also reflect the user's umask(2). The completely standard way would be to use 777 or 666 for the permissions (except perhaps for some temporary/sensitive files), and then let the user choose what are the real permissions he wants by setting umask in his bashrc. I guess we are being a bit paranoid here and disallowing the "others" permissions just in case...

Mar 20 2017, 11:53 AM

Mar 17 2017

sas added inline comments to D31110: [FileSystem] Make file_status store link count and add a file_status::getLinkCount() method..
Mar 17 2017, 5:26 PM
sas accepted D31086: Remove FileSystem::MakeDirectory.

The second behavioral change seems good but the first thing you described is a bit odd. Creating folders with 770 does not seem like a common behavior, and 700 or 755 is usually more standard.

Mar 17 2017, 5:03 PM
sas accepted D31108: Delete LLDB code for MD5'ing a file. Use LLVM instead.

So nice.

Mar 17 2017, 4:53 PM

Nov 15 2016

sas added a comment to D26676: Patch for lldb bug 26322 “core load hangs”.

Just a couple nits inline. Also, did you run clang-format on your change? I see some issues with ifs and the associated parentheses.

Nov 15 2016, 10:53 AM
sas accepted D25947: Merge Linux and FreeBSD arm64 register contexts.

Cool stuff.

Nov 15 2016, 10:50 AM

Oct 31 2016

sas committed rL285658: Remove executable bit on a source file.
Remove executable bit on a source file
Oct 31 2016, 5:31 PM

Oct 5 2016

sas accepted D25201: Fix GetDisplayName when only a demangled name is available.
Oct 5 2016, 4:02 PM