compnerd (Saleem Abdulrasool)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 9 2012, 11:41 PM (254 w, 9 h)

Recent Activity

Yesterday

compnerd accepted D38299: [ARM] Honor -mfloat-abi for libcall calling convention.
Sun, Oct 22, 5:47 PM
compnerd added inline comments to D38819: [libunwind] Add support for dwarf unwinding on windows on x86_64.
Sun, Oct 22, 2:23 PM
compnerd committed rL316303: ExecutionEngine: make COFF Thumb2 assertions non-tautological.
ExecutionEngine: make COFF Thumb2 assertions non-tautological
Sun, Oct 22, 1:52 PM
compnerd closed D39102: [ExecutionEngine] Adjust some COFF Thumb tautological asserts.

SVN r316303

Sun, Oct 22, 1:51 PM
compnerd added inline comments to D39148: [COFF] Add support for /WX.
Sun, Oct 22, 1:49 PM

Sat, Oct 21

compnerd accepted D39156: [libunwind] Make HIDDEN_DIRECTIVE a function-like macro. NFCI..

Thanks for cleaning this up. IIRC, I have similar behavior in compiler-rt for HIDDEN_SYMBOL.

Sat, Oct 21, 7:20 PM

Fri, Oct 20

compnerd added a comment to D39146: WIP: fix ldscript AT> parsing.

The name is a bad idea, because you could get an expression or a value which is not a region name. I think that you should test that as well.

Fri, Oct 20, 3:21 PM
compnerd committed rL316224: GNU: do not read the FDE count if omitted.
GNU: do not read the FDE count if omitted
Fri, Oct 20, 11:48 AM

Thu, Oct 19

compnerd accepted D39102: [ExecutionEngine] Adjust some COFF Thumb tautological asserts.
Thu, Oct 19, 9:21 PM
compnerd committed rL316204: Basic: restore {,u}intptr_t on NetBSD/ARM.
Basic: restore {,u}intptr_t on NetBSD/ARM
Thu, Oct 19, 9:12 PM
compnerd committed rL316169: ExecutionEngine: adjust COFF i386 tautological asserts.
ExecutionEngine: adjust COFF i386 tautological asserts
Thu, Oct 19, 9:58 AM
compnerd closed D38871: [ExecutionEngine] Modify static_casts to not be tautological in some COFF i386 relocations.

SVN r316169

Thu, Oct 19, 9:58 AM

Tue, Oct 17

compnerd accepted D37905: [libclang, bindings]: add spelling location.

@frutiger you have commit rights now right?

Tue, Oct 17, 9:25 PM
compnerd committed rL316046: Basic: fix __{,U}INTPTR_TYPE__ on ARM.
Basic: fix __{,U}INTPTR_TYPE__ on ARM
Tue, Oct 17, 5:01 PM
compnerd committed rL316042: Basic: fix `__INTPTR_TYPE__` for Windows ARM.
Basic: fix `__INTPTR_TYPE__` for Windows ARM
Tue, Oct 17, 3:50 PM
compnerd accepted D38940: Make x86 __ehhandler comdat if parent function is.
Tue, Oct 17, 1:44 PM
compnerd committed rL316013: Sema: use new `getNS{,U}IntegerType` for NS{,U}Integer.
Sema: use new `getNS{,U}IntegerType` for NS{,U}Integer
Tue, Oct 17, 10:39 AM

Mon, Oct 16

compnerd committed rL315968: Basic: make the nan family pure.
Basic: make the nan family pure
Mon, Oct 16, 8:30 PM

Sun, Oct 15

compnerd added a comment to D38940: Make x86 __ehhandler comdat if parent function is.

BTW, I think that this is sufficient to show the behavior in MSVC:

Sun, Oct 15, 6:02 PM
compnerd added a comment to D38940: Make x86 __ehhandler comdat if parent function is.

You should be able to just do an IR level check for this. You can ensure that both get placed into a COMDAT section.

Sun, Oct 15, 4:26 PM

Sat, Oct 14

compnerd added inline comments to D38819: [libunwind] Add support for dwarf unwinding on windows on x86_64.
Sat, Oct 14, 5:30 PM

Fri, Oct 13

compnerd committed rL315741: Basic: adjust attributes on `nan` LIBBUILTINs.
Basic: adjust attributes on `nan` LIBBUILTINs
Fri, Oct 13, 1:07 PM
compnerd added a reviewer for D38871: [ExecutionEngine] Modify static_casts to not be tautological in some COFF i386 relocations: lhames.
Fri, Oct 13, 11:08 AM
compnerd accepted D38871: [ExecutionEngine] Modify static_casts to not be tautological in some COFF i386 relocations.
Fri, Oct 13, 11:08 AM

Wed, Oct 11

compnerd added a comment to D38821: [COFF, ARM64] Add MS builtins __dmb, __dsb, __isb.

Don't you need a change to the intrinsics to actually map the builtin?

Wed, Oct 11, 8:12 PM

Mon, Oct 9

compnerd requested changes to D38680: [libunwind] Fix handling of DW_CFA_GNU_args_size.

I think that the problem is that we are using the generic register name, but we need to use the target specific register name. On x86, EIP/ESP are swapped. We should also have a test case for this. I had reduced this down to a simpler test case of:

Mon, Oct 9, 2:19 PM

Fri, Oct 6

compnerd closed D37891: Driver: hoist the `wchar_t` handling to the driver.

SVN r315126

Fri, Oct 6, 4:18 PM · Restricted Project
compnerd committed rL315126: Driver: hoist the `wchar_t` handling to the driver.
Driver: hoist the `wchar_t` handling to the driver
Fri, Oct 6, 4:12 PM
compnerd added inline comments to D37891: Driver: hoist the `wchar_t` handling to the driver.
Fri, Oct 6, 4:10 PM · Restricted Project
compnerd accepted D38532: [X86] Update an outdated comment about SjLj. NFC..
Fri, Oct 6, 2:44 PM
compnerd updated the diff for D37891: Driver: hoist the `wchar_t` handling to the driver.

Split the defaulting back to all the various targets.

Fri, Oct 6, 2:43 PM · Restricted Project
compnerd committed rL315086: Bitcode: add an auto-upgrade for LTO section name.
Bitcode: add an auto-upgrade for LTO section name
Fri, Oct 6, 11:08 AM
compnerd added a comment to D38532: [X86] Update an outdated comment about SjLj. NFC..

Id like to keep the bit about "please don't use these" ... we do support zero cost exceptions nearly everywhere now.

Fri, Oct 6, 8:30 AM
compnerd accepted D38576: |libunwind] [docs] Mention that SjLj works on any OS on the archs where supported by the compiler.
Fri, Oct 6, 8:29 AM
compnerd accepted D38598: [llvm-objdump] Add RAII for xar apis.
Fri, Oct 6, 8:29 AM

Thu, Oct 5

compnerd added inline comments to D38598: [llvm-objdump] Add RAII for xar apis.
Thu, Oct 5, 4:18 PM
compnerd requested changes to D38598: [llvm-objdump] Add RAII for xar apis.
Thu, Oct 5, 2:02 PM
compnerd added inline comments to D37891: Driver: hoist the `wchar_t` handling to the driver.
Thu, Oct 5, 12:03 PM · Restricted Project
compnerd updated the diff for D37891: Driver: hoist the `wchar_t` handling to the driver.

Moves the logic back into Basic. The flags are now optional, but controlled by the driver. The test adjustments are to map the old -fshort-wchar to -fwchar-type=short -fno-signed-wchar for the most part, there is one case where we were checking that we were passing -fshort-wchar through to the frontend, which we no longer do.

Thu, Oct 5, 9:00 AM · Restricted Project

Tue, Oct 3

compnerd added a comment to D38522: [libc++] Support Microsoft ABI without vcruntime headers.

Why do we expect the tests to fail without vcruntime headers?

Tue, Oct 3, 5:49 PM
compnerd accepted D38333: [X86] Fix using the SJLJ jump table on x86_64.

Please adjust the comments.

Tue, Oct 3, 1:53 PM
compnerd added a comment to D38513: [LLD] [RFC] [COFF] Add support for GNU binutils import libraries.

@ruiu I'm not sure that I understand the first question. Might be easier to discuss this on IRC or at the social.

Tue, Oct 3, 1:45 PM
compnerd accepted D38341: [compiler-rt] Add back ARM EABI aliases where legal..

Thanks for finding and fixing the performance regression on the older targets!

Tue, Oct 3, 1:40 PM
compnerd committed rL314834: build: use POSITION_INDEPENDENT_CODE instead of -fPIC.
build: use POSITION_INDEPENDENT_CODE instead of -fPIC
Tue, Oct 3, 1:24 PM

Mon, Oct 2

compnerd added inline comments to D38333: [X86] Fix using the SJLJ jump table on x86_64.
Mon, Oct 2, 7:16 PM
compnerd accepted D38390: [builtins] ARM: Reland fix for assembling builtins in thumb state..

Please make sure that you do a build for watchOS before committing this, but this looks like it should accommodate that too.

Mon, Oct 2, 1:51 PM
compnerd accepted D38343: [X86] Provide the LSDA pointer with RIP relative addressing if necessary.
Mon, Oct 2, 1:43 PM
compnerd accepted D38380: [libunwind] Add CMake support for building for MinGW.
Mon, Oct 2, 1:42 PM

Sun, Oct 1

compnerd added inline comments to D38343: [X86] Provide the LSDA pointer with RIP relative addressing if necessary.
Sun, Oct 1, 2:13 PM
compnerd added a comment to D38250: [libunwind] Implement the Get/SetTopOfFunctionStack functions via a __thread TLS variable.

I believe that SVN r314632 should address the issue more thorougly.

Sun, Oct 1, 1:09 PM
compnerd committed rL314632: SjLj: make the SjLj implementation more portable.
SjLj: make the SjLj implementation more portable
Sun, Oct 1, 1:08 PM
compnerd requested changes to D38250: [libunwind] Implement the Get/SetTopOfFunctionStack functions via a __thread TLS variable.

Actually, Ill go ahead and make the more invasive change and that will provide this properly.

Sun, Oct 1, 12:40 PM
compnerd accepted D38250: [libunwind] Implement the Get/SetTopOfFunctionStack functions via a __thread TLS variable.
Sun, Oct 1, 12:25 PM

Thu, Sep 28

compnerd added a comment to D38250: [libunwind] Implement the Get/SetTopOfFunctionStack functions via a __thread TLS variable.

Ugh, I was mixing up _Unwind_SjLj_Register with this function.

Thu, Sep 28, 10:21 PM
compnerd added a comment to D38380: [libunwind] Add CMake support for building for MinGW.

With an explanation of the gcc_s vs gcc, I think this LG.

Thu, Sep 28, 10:18 PM
compnerd accepted D38381: [libunwind] Skip building x86 parts of UnwindRegisters*.S when targeting SjLj.

I really wish that there was a way to handle this in the build system instead.

Thu, Sep 28, 10:16 PM
compnerd accepted D38343: [X86] Provide the LSDA pointer with RIP relative addressing if necessary.

LGTM with the comment adjustments.

Thu, Sep 28, 8:23 PM
compnerd accepted D37905: [libclang, bindings]: add spelling location.
Thu, Sep 28, 8:19 PM
compnerd closed D38377: [llvm-readobj] Fix typos in error messages inside of ELFDumper constructor.

SVN r314485

Thu, Sep 28, 7:48 PM
compnerd committed rL314485: llvm-readobj: fix a few typos (NFC).
llvm-readobj: fix a few typos (NFC)
Thu, Sep 28, 7:47 PM
compnerd accepted D38377: [llvm-readobj] Fix typos in error messages inside of ELFDumper constructor.
Thu, Sep 28, 6:02 PM
compnerd accepted D38252: [ARM] Fix SJLJ exception handling when manually chosen on a platform where it isn't default.
Thu, Sep 28, 8:28 AM

Wed, Sep 27

compnerd requested changes to D37905: [libclang, bindings]: add spelling location.

If I'm not mistaken, the change just means that the python bindings need a "newer" libclang, libclang's interfaces don't really change. I think that is acceptable.

Wed, Sep 27, 9:28 PM
compnerd accepted D37855: [bindings] allow null strings in Python 3.
Wed, Sep 27, 9:22 PM
compnerd requested changes to D38341: [compiler-rt] Add back ARM EABI aliases where legal..

These functions would only really compile down to an additional branch. I can understand the desire to micro-optimize away the additional branch. However, I think that I would rather that the following pattern is used:

Wed, Sep 27, 7:39 PM

Tue, Sep 26

compnerd accepted D38227: [Builtins] ARM: Fix assembling files in thumb mode..
Tue, Sep 26, 6:42 PM
compnerd accepted D38268: [Builtins] ARM: Fix msr assembly instruction use for Thumb2..
Tue, Sep 26, 6:41 PM
compnerd committed rL314241: Sema: rename SemaBuiltinVAStart to SemaBuiltinVAStartMicrosoft.
Sema: rename SemaBuiltinVAStart to SemaBuiltinVAStartMicrosoft
Tue, Sep 26, 3:35 PM
compnerd committed rL314236: Basic: support Preserve{Most,All} CC on Windows.
Basic: support Preserve{Most,All} CC on Windows
Tue, Sep 26, 3:35 PM
compnerd committed rL314226: Sema: Windows/ARM __va_start is not const correct.
Sema: Windows/ARM __va_start is not const correct
Tue, Sep 26, 3:34 PM
compnerd accepted D38271: [Builtins] Use 4 byte alignment for __aeabi_memclr..
Tue, Sep 26, 3:30 PM
compnerd accepted D38251: [X86] Remove erroneous callsite offsetting in SJLJ landing pads.
Tue, Sep 26, 3:30 PM
compnerd accepted D38254: [X86] Fix SJLJ struct offsets for x86_64.
Tue, Sep 26, 3:30 PM
compnerd added a comment to D38253: [ARM] Restore the right frame pointer register in Int_eh_sjlj_longjmp.

Um, doesn't that clobber a register which is unexpected?

Tue, Sep 26, 3:30 PM
compnerd accepted D38248: [X86] Correct byte offsets and data types in a comment. NFC..
Tue, Sep 26, 3:30 PM
compnerd added a comment to D37788: [ARM] builtins: Replace abort by assert in clear_cache..

Ugh, this is not particularly helpful. I think that in the case that we can detect the failure, it would be nice. OTOH, I agree that these functions are special (effectively to be treated as if the compiler had emitted them inline). I think that having a guarded way to actually keep the abort is nice ... maybe an assert(start_reg == 0 && "syscall failed"); instead. That would just get pulled out in the case of a _NDEBUG build.

Tue, Sep 26, 3:30 PM
compnerd requested changes to D38252: [ARM] Fix SJLJ exception handling when manually chosen on a platform where it isn't default.

@t.p.northover should absolutely look at this. The problem here is that the MCAsmInfo is sometimes not set up early enough which results in the exception model not being correct. We need to wire this up better so that the information is not pulled from MCAsmInfo but passed through properly.

Tue, Sep 26, 3:30 PM
compnerd requested changes to D38250: [libunwind] Implement the Get/SetTopOfFunctionStack functions via a __thread TLS variable.

I have a complete implementation for this which is known to work on Windows at least. The only thing that __thread requires is a working linker (which does not include binutils -- I do have a local patch to make that work though). Are these two the only ones that are missing? At the very least, the implementation of SetTopOfFunctionStack is incorrect.

Tue, Sep 26, 3:29 PM
compnerd accepted D38247: [libunwind] Correct data types in the _Unwind_FunctionContext struct.
Tue, Sep 26, 3:29 PM
compnerd accepted D38249: [libunwind] Skip building unused parts when targeting SJLJ.
Tue, Sep 26, 3:29 PM

Mon, Sep 25

compnerd committed rL314165: X86: remove R12 from CSR on Windows x64 SwiftCC.
X86: remove R12 from CSR on Windows x64 SwiftCC
Mon, Sep 25, 3:02 PM

Sep 22 2017

compnerd closed D37573: [bindings] add Cursor.linkage.

SVN r314009

Sep 22 2017, 11:36 AM
compnerd committed rL314009: bindings: expose Linkage to the python bindings.
bindings: expose Linkage to the python bindings
Sep 22 2017, 11:36 AM
compnerd added a comment to D37573: [bindings] add Cursor.linkage.

Sure, Ill get this merged shortly.

Sep 22 2017, 10:37 AM

Sep 21 2017

compnerd committed rL313956: AArch64: support SwiftCC properly on AAPCS64.
AArch64: support SwiftCC properly on AAPCS64
Sep 21 2017, 9:33 PM
compnerd committed rL313954: Driver: remove support for libstdc++ from CrossWindows.
Driver: remove support for libstdc++ from CrossWindows
Sep 21 2017, 9:02 PM
compnerd accepted D37671: [index] Generate class & metaclass manglings for objc.
Sep 21 2017, 4:57 PM
compnerd accepted D38108: [libunwind] Partially revert r297174 to fix build on at least FreeBSD..
Sep 21 2017, 1:30 PM
compnerd added a comment to D38108: [libunwind] Partially revert r297174 to fix build on at least FreeBSD..

Moving the __APPLE__ case up to the top of the file would be nice, although, it does move a compatibility implementation too. I suppose that it isn't too terrible though.

Sep 21 2017, 11:18 AM
compnerd added inline comments to D38108: [libunwind] Partially revert r297174 to fix build on at least FreeBSD..
Sep 21 2017, 9:33 AM

Sep 20 2017

compnerd added inline comments to D38108: [libunwind] Partially revert r297174 to fix build on at least FreeBSD..
Sep 20 2017, 4:18 PM
compnerd accepted D38106: TargetLibraryInfo: Stop guessing the wchar_t size.

This is pretty awesome. I assume that you will do a corresponding change in clang to remove the single use of that function?

Sep 20 2017, 4:16 PM
compnerd added a comment to D30696: Improve readability and correctness of the OS specific libunwind bits..

@bsdjhb shouldn't link.h be includable in a C++ header without worrying about the namespacing? But, moving the declarations is certainly reasonable.

Sep 20 2017, 3:47 PM
compnerd added a comment to D38050: [ARM] Use correct calling convention for libm..

@peter.smith the reason that the complexity exists currently is interoperability with gcc. If the triple is not hf, libgcc does not use AAPCS_VFP_CC. This is the source of the problem. Your mapping is correct though:

Sep 20 2017, 3:12 PM
compnerd accepted D38095: Remove references to response file argument in CommandLine.rst.
Sep 20 2017, 2:37 PM
compnerd committed rL313822: Revert "Revert "ExecutionEngine: add R_AARCH64_ABS{16,32}"".
Revert "Revert "ExecutionEngine: add R_AARCH64_ABS{16,32}""
Sep 20 2017, 2:34 PM
compnerd committed rL313813: X86: treat SwiftCC as Win64_CC on Win64.
X86: treat SwiftCC as Win64_CC on Win64
Sep 20 2017, 2:02 PM
compnerd committed rL313791: CodeGen: support SwiftError SwiftCC on Windows x64.
CodeGen: support SwiftError SwiftCC on Windows x64
Sep 20 2017, 11:42 AM

Sep 19 2017

compnerd committed rL313687: CodeGen: use range based for loops (NFC).
CodeGen: use range based for loops (NFC)
Sep 19 2017, 3:11 PM
compnerd committed rL313668: Revert "ExecutionEngine: add R_AARCH64_ABS{16,32}".
Revert "ExecutionEngine: add R_AARCH64_ABS{16,32}"
Sep 19 2017, 1:37 PM