joerg (Joerg Sonnenberger)
User

Projects

User Details

User Since
Nov 23 2012, 10:16 AM (263 w, 5 d)

Recent Activity

Tue, Dec 5

joerg added inline comments to D40159: Correct handling of the TLS/NetBSD block of the main program.
Tue, Dec 5, 7:44 AM · Restricted Project

Fri, Dec 1

joerg added a comment to D40697: Cache modulo values for the .gnu.hash section..

Instead of computing and storing the modulus directly, it is likely better to precompute the inverse and use that to improve the performance of the operation in first place. Consider using fast_remainder32 and associated functions.

Fri, Dec 1, 7:34 AM

Wed, Nov 29

joerg added a comment to D39016: Add Percent Symbol In PPC Registers for Linux.

So the next steps if you have the time would IMO be:

Wed, Nov 29, 3:10 PM
joerg committed rL319381: First step towards more human-friendly PPC assembler output:.
First step towards more human-friendly PPC assembler output:
Wed, Nov 29, 3:06 PM
joerg closed D39016: Add Percent Symbol In PPC Registers for Linux by committing rL319381: First step towards more human-friendly PPC assembler output:.
Wed, Nov 29, 3:06 PM

Tue, Nov 21

joerg updated the diff for D39016: Add Percent Symbol In PPC Registers for Linux.

Split into verbose conditional register names into a separate function. We likely want to remove them going forward as they are a specific feature of the Darwin assembler and not wildly supported.

Tue, Nov 21, 2:13 PM
joerg commandeered D39016: Add Percent Symbol In PPC Registers for Linux.
Tue, Nov 21, 2:10 PM

Sun, Nov 19

joerg added a comment to D40159: Correct handling of the TLS/NetBSD block of the main program.

The public interface for obtaining the TLS storage is the combination of reading the DTV vector of a thread in combination with dl_iterate_phdr to find the size of the TLS block of a specific module. That gives you all that you need to know. It is important to keep in mind that the vector can be initialized lazily, so __tls_get_addr and friends will have to be intercepted to update the global view.

Sun, Nov 19, 7:51 AM · Restricted Project

Fri, Nov 17

joerg added inline comments to D40159: Correct handling of the TLS/NetBSD block of the main program.
Fri, Nov 17, 7:10 AM · Restricted Project

Thu, Nov 16

joerg added inline comments to D40105: Implement GetTls() for NetBSD.
Thu, Nov 16, 2:24 PM · Restricted Project

Mon, Nov 13

joerg added a comment to D39464: Define fs::allocate_file which preallocates disk blocks..

I really dislike this direction. fallocate can double the amount of disk IO and increase cache trashing, especially when linking large programs with debug information. Keeping more things in memory doesn't sound like an actual improvement either. If the goal is really only to improve the diagnostics in tools, I think a better idea would be to figure out a good way to handle this from a SIGBUS handler based on the passed in siginfo_t.

Mon, Nov 13, 3:37 PM

Nov 7 2017

joerg added a comment to D39619: Correct atexit(3) support in TSan/NetBSD.

No need for a custom container, just allocate the vector dynamically and free it when it becomes empty.

Nov 7 2017, 4:14 AM · Restricted Project

Nov 6 2017

joerg added a comment to D39619: Correct atexit(3) support in TSan/NetBSD.

No, __cxa_atexit will always reference the DSO handle. That exists even in the main executable.

Nov 6 2017, 5:36 AM · Restricted Project

Nov 3 2017

joerg added a comment to D39619: Correct atexit(3) support in TSan/NetBSD.

Is there any reason why keeping at_exit and __cxa_atexit handling merged? They are pretty much disjunct code paths, especially since the at_exit stack means that the real at_exit can be used.

Nov 3 2017, 4:01 PM · Restricted Project

Oct 27 2017

joerg added inline comments to D39016: Add Percent Symbol In PPC Registers for Linux.
Oct 27 2017, 2:36 PM
joerg added inline comments to D39016: Add Percent Symbol In PPC Registers for Linux.
Oct 27 2017, 9:15 AM
joerg added inline comments to D35509: Covnert .[cd]tors to .{init,fini}_array using synthetic section..
Oct 27 2017, 2:13 AM

Oct 24 2017

joerg added a comment to D39079: New clang option -fno-plt to avoid PLT for external calls.
In D39079#905468, @rnk wrote:

It also increases the pressure on the branch predictor, so it is not really black and white.

I don't understand this objection. I'm assuming that the PLT stub is an indirect jump through the PLTGOT,
not a hotpatched stub that jumps directly to the definition chosen by the loader. This is the ELF model
that I'm familiar with, especially since calls to code more than 2GB away generally need to be indirect anyway.

Oct 24 2017, 11:31 AM
joerg added a comment to D39079: New clang option -fno-plt to avoid PLT for external calls.
In D39079#905396, @rnk wrote:

Why again is this a good idea?

It saves the direct jump to the PLT, reducing icache pressure, which is a major cost in some workloads.

Oct 24 2017, 10:46 AM
joerg added a comment to D39079: New clang option -fno-plt to avoid PLT for external calls.

Let me phrase it differently. What is this patch (and the matching backend PR) supposed to achieve? There are effectively two ways to get rid of PLT entries:
(1) Bind references locally. This is effectively what -Bsymbolic does and what is breaking the ELF interposition rules.
(2) Do an indirect call via the GOT. Requires knowing what an external symbol is, making it non-attractive for anything but LTO, since it will create performance issues for all non-local accesses (i.e. anything private).

Oct 24 2017, 10:25 AM
joerg added a comment to D39079: New clang option -fno-plt to avoid PLT for external calls.

Why again is this a good idea? This is an even worse hack than -Bsymbolic, the latter at least is visible in ELF header without code inspection. This is breaking core premises of ELF.

Oct 24 2017, 10:13 AM
joerg added a comment to D39016: Add Percent Symbol In PPC Registers for Linux.

Almost.

Oct 24 2017, 6:58 AM

Oct 23 2017

joerg added a comment to D39016: Add Percent Symbol In PPC Registers for Linux.

Because it is not possible to change the cl option by LLDB.

Oct 23 2017, 10:36 AM
joerg added a comment to D39016: Add Percent Symbol In PPC Registers for Linux.

This is even worse. You can't new[] and then free(). Please follow the suggestion on just embedding the prefix directly, if desirable.

Oct 23 2017, 8:52 AM
joerg added a comment to D38554: Fixed ppc32 function relocations in non-pic mode.

Even a full static binary will have a PLT when IFUNC is used. As such, a linker has to deal with conversion between direct and PLT branches anyway.

Oct 23 2017, 6:46 AM
joerg added a comment to D38554: Fixed ppc32 function relocations in non-pic mode.

A PLT is used not only by PIC code. It is required for all dynamic entry points and that's not limited to PIC. It's not even limited to dynamically linked binaries. There is no support for the embedded ABIs as I said before. I'm going to stop responding since it is rather pointless now. My objection stands.

Oct 23 2017, 4:50 AM

Oct 22 2017

joerg added a comment to D38554: Fixed ppc32 function relocations in non-pic mode.

A working linker is certainly expected to use the most efficient binding. The assembler (and by extension the compiler) can't tell. This applies in both directions -- in your example, the linker might need to translate the direct call into a PLT call, depending on the target. It all goes back to "use a working linker". So yes, at this point in time the existance of two different relocations for call instructions can be clearly seen as a historic artifact. This doesn't change anything of what I have been saying since the beginning. The PowerPC ABIs are heavily biases towards position independent code and this is just adding complications for no good reason.

Oct 22 2017, 5:11 PM
joerg added a comment to D38680: [libunwind] Fix handling of DW_CFA_GNU_args_size.

I've looked at this in some detail now. I'm not exactly sure yet why it is broken. The patch seems quite wrong to me. DW_CFA_GNU_args_size should be applied only when unwinding a call instruction and that regard, the commit message of the original change is quite correct. What I am still trying to understand is how the precise unwind frame disagrees with the unwinder.

Oct 22 2017, 2:18 PM
joerg added a comment to D39162: [test] Fix clang-test for FreeBSD and NetBSD.

I think we should special case Darwin and Windows and fall-back to LD_LIBRARY_PATH for the rest. Can't remember if there is a UNIX-like platform left where it doesn't work.

Oct 22 2017, 1:56 PM
joerg added a comment to D38554: Fixed ppc32 function relocations in non-pic mode.

There is no layer of indirection here. The call gets resolved to the local symbol by a working linker.

Oct 22 2017, 1:31 PM
joerg added a comment to D38554: Fixed ppc32 function relocations in non-pic mode.

On the contrary, I find little reason for adding the complexity here. That's even ignoring the question of whether the suggested check even covers the relocation models correctly.

Oct 22 2017, 10:26 AM
joerg requested changes to D38554: Fixed ppc32 function relocations in non-pic mode.

The existing code works fine. What you have demonstrated so far is more an issue with lld and not a problem in the code. GNU ld is perfectly fine with translating the PLT references to direct calls. As such, I see no need for changes here.

Oct 22 2017, 9:06 AM

Oct 20 2017

joerg requested changes to D39016: Add Percent Symbol In PPC Registers for Linux.

The patch is not acceptable in the current form. This includes fixing the memory leaks.

Oct 20 2017, 5:53 AM
joerg added a comment to D37954: Try to shorten system header paths when using -MD depfiles.

This is not about any operating system, but basic consistent behavior. either do the canonicalisation or not. Doing it sometimes is just bogus. You've effectively implemented -fcanonical-system-headers=sometimes.

Oct 20 2017, 4:09 AM

Oct 19 2017

joerg added a comment to D37954: Try to shorten system header paths when using -MD depfiles.

The behavior of sometimes transforming the path and sometimes not is IMO completely unacceptable. I don't care if GCC created that bug first.

Oct 19 2017, 5:42 PM

Oct 12 2017

joerg added inline comments to D38861: [CodeGen] Error on unsupported checked multiplies early.
Oct 12 2017, 6:32 PM

Oct 4 2017

joerg added a comment to D38554: Fixed ppc32 function relocations in non-pic mode.

In that case: the short version is that there is no EABI support at the moment. That patch changes the behavior for SYSV ABI, it is not acceptable as such. The test case doesn't reflect the ABI variance either.

Oct 4 2017, 3:32 PM
joerg added a comment to D38554: Fixed ppc32 function relocations in non-pic mode.

Let's start with the obvious: I have no idea why you need this code at all. NetBSD builds a mix of static, PIC and PIE code using GNU ld without hitting any unsupported relocations. As I said before, the normal ABI on PowerPC is mostly PIC by default. I wonder if the root of your problem is that you want EABI and not the SYSV ABI.

Oct 4 2017, 2:26 PM
joerg added a comment to D38554: Fixed ppc32 function relocations in non-pic mode.

This doesn't look right to me at all. The normal SYSV ABI on PowerPC is effectively PIC, with a few edge cases. This really looks like a step backwards.

Oct 4 2017, 1:52 PM

Sep 28 2017

joerg committed rL314417: Merging r311921:.
Merging r311921:
Sep 28 2017, 7:15 AM

Sep 20 2017

joerg added a comment to D37954: Try to shorten system header paths when using -MD depfiles.

Well, the background for the use of the option in NetBSD is related to inducted differences in reproducable builds. From that perspective, it is even worth to sometimes shorten the dependency and sometimes not.

Sep 20 2017, 2:01 AM

Sep 17 2017

joerg added a comment to D37954: Try to shorten system header paths when using -MD depfiles.

ninja is not the only consumer of this. For human inspection, it can be quite surprising to see symlinks resolved, i.e. /usr/include/machine on NetBSD. Build systems have different ideas on whether they want absolute resolved paths or not, so it seems like ninja should be able to cope with either format. This is a lossy transformation, so I'm somewhat reluctant to agree with it.

Sep 17 2017, 4:17 PM
joerg added a comment to D37954: Try to shorten system header paths when using -MD depfiles.

The comments at the very least are misleading. Resolving the path doesn't necessary shorten the string at all, in many cases it will be longer. I'm really not sure if clang should resolve symlinks like this as it can be quite surprising.

Sep 17 2017, 2:47 PM

Sep 15 2017

joerg added a comment to D37302: [Headers] Define *_HAS_SUBNORM for FLT, DBL, LDBL.

So what about targets that don't support subnormals? I'm moderately sure ARM falls into this category given the right phase of the moon.

Sep 15 2017, 1:39 AM

Sep 13 2017

joerg added a comment to D37788: [ARM] builtins: Replace abort by assert in clear_cache..

I can't really comment on the Linux interface, but we generally ignore the system call error in NetBSD where one is necessary. While aborting might be legal, it seems to be the worst possible way of dealing with questionable arguments.

Sep 13 2017, 4:48 AM

Sep 12 2017

joerg added a comment to D34158: For Linux/gnu compatibility, preinclude <stdc-predef.h> if the file is available .

This version is fine with me. The only contentious part is whether it should be opt-in or opt-out for platforms, so getting this version in and revisiting the issue again later is OK from my perspective.

Sep 12 2017, 12:24 PM

Sep 8 2017

joerg added a comment to D29086: Restore visibility attribute for OpenBSD's stack guard.

Create a function that does check the guard variable and make sure that it has the correct visibility declaration and/or access.

Sep 8 2017, 5:39 AM

Aug 29 2017

joerg committed rL312038: Simplify test case, so that it works for both trunk and release-5.0..
Simplify test case, so that it works for both trunk and release-5.0.
Aug 29 2017, 2:19 PM

Aug 28 2017

joerg committed rL311921: Fix ARMv4 support.
Fix ARMv4 support
Aug 28 2017, 1:22 PM
joerg closed D37030: Fix ARMv4 support by committing rL311921: Fix ARMv4 support.
Aug 28 2017, 1:21 PM
joerg added inline comments to D37030: Fix ARMv4 support.
Aug 28 2017, 7:46 AM

Aug 22 2017

joerg created D37030: Fix ARMv4 support.
Aug 22 2017, 3:11 PM

Aug 21 2017

joerg added a comment to D33878: Handle NetBSD specific _Unwind_Ptr.

Well, the libexecinfo one exists as fallback because gcc doesn't provide one.

Aug 21 2017, 10:06 AM
joerg added a comment to D33878: Handle NetBSD specific _Unwind_Ptr.

Kamil, which unwind.h are you using? The outdated copy in libexecinfo.h or the modern one used by libunwind? I see little reason to cater to the bugs in the former...

Aug 21 2017, 9:35 AM

Aug 18 2017

joerg added a comment to D13104: Mips - Mark the section .eh_frame as writeable for pic.

BTW, I recently spend some time slapping GNU ld in NetBSD into shape so that it can properly support read-only .eh_frame even on MIPS. You might want to look at adopting similar changes.

Aug 18 2017, 1:35 PM
joerg committed rL311156: Spelling.
Spelling
Aug 18 2017, 5:58 AM

Aug 17 2017

joerg added a comment to D36764: The following functions and tests work fine for powerpc64, so enable them..

divtc3 and friends.

Aug 17 2017, 1:09 PM
joerg added a comment to D36764: The following functions and tests work fine for powerpc64, so enable them..

Because PPC uses the TC variant.

Aug 17 2017, 9:06 AM
joerg added a comment to D36587: Add NetBSD ASAN shadow mapping for x86-64.

Just assume that the full 32bit address space is available.

Aug 17 2017, 8:39 AM · Restricted Project
joerg added a comment to D35200: Don't use mmap on Windows.

The primary reason for using mmap is not so much performance, but reduced memory foot print.

Aug 17 2017, 4:48 AM

Aug 12 2017

joerg added a comment to D35035: [InstCombine] Prevent memcpy generation for small data size.

@spatel: I don't see a reason why we can't (or shouldn't) try to do common-prefix elimination for the memcmp intrinsic. It certainly seems to be better to me to preserve the intrinsics in your case as they should be easier to reason about. That's kind of my question for here too -- why does the expansion allow better code?

Aug 12 2017, 7:18 AM
joerg added a comment to D35035: [InstCombine] Prevent memcpy generation for small data size.

What is the advantage of expanding the memcpy intrinsic in InstCombine vs doing it later in the target-specific code?

Aug 12 2017, 2:18 AM

Aug 10 2017

joerg added a comment to D34158: For Linux/gnu compatibility, preinclude <stdc-predef.h> if the file is available .

Now, the "/tmp/foo-XXX.sh" also has a line labeled "Driver args: " with the original command-line on it. If I understand correctly, you then like to take this
simpler Driver command-line, and edit it manually: add -save-temps, and change the input filename to the "/tmp/foo-XXX.c" file, and run that, instead
of actually invoking the reproducer foo-XXX.sh.

Aug 10 2017, 10:51 AM
joerg added a comment to D34158: For Linux/gnu compatibility, preinclude <stdc-predef.h> if the file is available .

(2) It adds magic behavior that can make debugging more difficult. Partially preprocessed sources for example could be compiled with plain -c before, now they need a different command line.

If this is a problem, making it be Linux-only does _nothing_ to solve it. But I don't actually see how this is a substantively new problem? Compiling with plain -c before
would get #defines for those predefined macros that the compiler sets, even though you may not have wanted those. Is this fundamentally different?

It makes it a linux-only problem. As such, it is something *I* only care about secondary. A typical use case I care about a lot is pulling the crash report sources from my (NetBSD) build machine,
extracting the original command line to rerun the normal compilation with -save-temps. I don't necessarily have the (same) system headers on the machine I use for debugging and that's exactly
the kind of use case this change breaks. All other predefined macros are driven by the target triple and remain stable.

Don't you use preprocessed source files from a crash?

Aug 10 2017, 10:44 AM

Aug 9 2017

joerg added a comment to D34158: For Linux/gnu compatibility, preinclude <stdc-predef.h> if the file is available .

(2) It adds magic behavior that can make debugging more difficult. Partially preprocessed sources for example could be compiled with plain -c before, now they need a different command line.

If this is a problem, making it be Linux-only does _nothing_ to solve it. But I don't actually see how this is a substantively new problem? Compiling with plain -c before
would get #defines for those predefined macros that the compiler sets, even though you may not have wanted those. Is this fundamentally different?

Aug 9 2017, 12:08 PM
joerg added inline comments to D36484: Add NetBSD support in asan_symbolize.py.
Aug 9 2017, 11:40 AM · Restricted Project

Aug 3 2017

joerg added a comment to D35917: [mips] Implement -muninit-const-in-rodata.

I don't see any reason why zero-initialised constants should be emitted in BSS. I know that GCC does that and I just fixed bugs in that because created wrong section flags for it. So yes, I'd prefer to revert this and fix the real problem.

Aug 3 2017, 12:07 PM
joerg added a comment to D35680: [ELF] - Round executable PT_LOAD to page size and pad it with traps.

I'm not sure I want anything like this unconditionally. It is going to waste quite a bit of space, i.e. 2KB per executable and shared library sums up.

Aug 3 2017, 4:53 AM

Aug 1 2017

joerg added a comment to D34158: For Linux/gnu compatibility, preinclude <stdc-predef.h> if the file is available .

I had a long discussion with James about this on IRC without reaching a clear consensus. I consider forcing this behavior on all targets to be a major bug. It should be opt-in and opt-in only:

Aug 1 2017, 4:13 AM

Jul 26 2017

joerg added a comment to D35567: [Sparc] invalid adjustments in TLS_LE/TLS_LDO relocations removed.

Merging would be reasonable, yes.

Jul 26 2017, 2:05 PM

Jul 25 2017

joerg added a comment to D35509: Covnert .[cd]tors to .{init,fini}_array using synthetic section..

Warning for .ctor/.dtor use would IMO be completely bogus. They can easily be translated and they are kind of the LCD for "portable" assembler, i.e. much less problematic to deal with than plain .init/.fini segments.

Jul 25 2017, 5:13 AM

Jul 23 2017

joerg added a comment to D35780: Introduce -nostdlib++ flag to disable linking the C++ standard library..

I don't really like this. The reason why -lm is added explicitly on many targets is because the C++ STL typically depends on it and that means for static linking and broken ELF linkers, it will be necessary to link against it explicitly.
There is also the question on whether any platform we have currently uses separate STL and ABI libraries and it is not clear whether the flag should handle both.

Jul 23 2017, 12:08 PM
joerg added a comment to D35778: Add NetBSD PaX MPROTECT support in allocateMappedMemory.

While more localized, this seems to be an even greater hack than adopting the JIT users to use AllocateRWXMemory.

Jul 23 2017, 9:44 AM

Jul 21 2017

joerg added a comment to D35558: Use sys::Memory::AllocateRWX for JIT code.

They are not allocated RWX, they are allocated RW with the option for later X. I.e. the kernel enforces W^X, but you can request additional protections for later use.

When you say "additional protections" do you mean you can add the 'X' permission later (to get RWX), or just that you can later toggle from RW- to R-X?

Jul 21 2017, 2:11 AM

Jul 20 2017

joerg added a comment to D35558: Use sys::Memory::AllocateRWX for JIT code.

Keep in mind that the SELinux case in libffi is not fork-safe. One important part LLVM needs to consider is
whether it wants to enshrine the performance penalty of mprotect-after-commit in its APIs or not. The second part
is whether platforms should aim to support hot-patchable JIT for multi-threaded environments or not. If the latter is
not considered relevant, the API only needs to provide a function to allocate JIT-safe memory and a function to make
it executable. If the latter is relevant, the current AllocateRWX is the interface you will end up with, one way or the other.

Jul 20 2017, 1:53 AM

Jul 19 2017

joerg added a comment to D35558: Use sys::Memory::AllocateRWX for JIT code.

Right, the pages are allocated RWX.

It seems odd to prevent the flipping of the W/X bits while allowing RWX pages. I assume there are additional privileges
required (granted only to JITs and debuggers?) to get RWX pages? Is there a good source for me to read up about the PaX MPROTECT design?

Jul 19 2017, 5:09 PM

Jul 18 2017

joerg accepted D35331: [Solaris] enable --whole-archive for shared-library build, disable --version-script for Solaris-ld.
Jul 18 2017, 5:04 PM
joerg added inline comments to D35577: Add -flookup-tables and -fno-lookup-tables flags.
Jul 18 2017, 3:28 PM
joerg added inline comments to D35579: [SimplifyCFG] Make the no-jump-tables attribute also disable switch lookup tables.
Jul 18 2017, 3:22 PM
joerg added a comment to D35567: [Sparc] invalid adjustments in TLS_LE/TLS_LDO relocations removed.

Test cases?

Jul 18 2017, 9:48 AM
joerg added a comment to D35067: [x86, CGP] increase memcmp() expansion up to 4 load pairs.

i386: code requires three push instructions + call + potential stack cleanup.
x86_64: code requires three register loads + call

Jul 18 2017, 6:37 AM
joerg added inline comments to D35554: Add NetBSD support in sanitizer_platform_limits_posix.*.
Jul 18 2017, 6:06 AM · Restricted Project
joerg added a comment to D35553: Define OFF_T as 64-bit integer on NetBSD.

This doesn't make sense to me, both the existing and new code. off_t is a signed type.

Jul 18 2017, 6:00 AM · Restricted Project

Jul 16 2017

joerg accepted D35462: Also add the option -no-pie (like -nopie).

Please mark it as alias for -nopie, otherwise fine.

Jul 16 2017, 9:48 AM

Jul 12 2017

joerg added a comment to D35190: __builtin_constant_p should consider the parameter of a constexpr function as constant.

What if the constexpr function is called with in a non-constexpr context, e.g. with a random global variable as argument?

Jul 12 2017, 6:28 AM

Jul 11 2017

joerg accepted D35277: Make shell redirection construct portable.

Strictly speaking, I think this comes from csh, but LGTM.

Jul 11 2017, 2:38 PM
joerg added a comment to D35245: [LibFuzzer] Fix GCC `-Wunused-result` warning.

A better construct would be to compute the full length and change both it and Str in the loop. No point in the complex arithmetic. I generally do prefer this as it improves interaction with pipes etc.

Jul 11 2017, 11:52 AM
joerg committed rL307665: NetBSD uses soft-float by default, unless the environment is EABIHF or.
NetBSD uses soft-float by default, unless the environment is EABIHF or
Jul 11 2017, 8:51 AM
joerg committed rL307664: Run the preprocessor test as frontend test for NetBSD, since CC1 mode.
Run the preprocessor test as frontend test for NetBSD, since CC1 mode
Jul 11 2017, 8:50 AM

Jul 10 2017

joerg committed rL306965: Add an option group for deprecated warnings. Add the removed.
Add an option group for deprecated warnings. Add the removed
Jul 10 2017, 9:42 AM

Jul 6 2017

joerg added inline comments to D35065: [LLDB][ppc64le] Rename enums in AuxVector.
Jul 6 2017, 4:09 PM
joerg added inline comments to D35065: [LLDB][ppc64le] Rename enums in AuxVector.
Jul 6 2017, 2:54 PM
joerg added a comment to D35065: [LLDB][ppc64le] Rename enums in AuxVector.

If you want to go this way, rename them consistently and use a different prefix (e.g. AUXV_*) please.

Jul 6 2017, 9:56 AM
joerg accepted D35054: [Solaris] get rid of _RESTRICT_KYWD warning during the build.

LGTM, as Kamil said, we have the same change in pkgsrc for Illumos.

Jul 6 2017, 8:38 AM
joerg added a comment to D33657: Allow libraries to be loaded with RTLD_LOCAL on Unix..

The bigger question for me is: what depends on the RTLD_GLOBAL behavior? I generally consider using it a design bug. I.e. what breaks if we just change to RTLD_LOCAL?

Jul 6 2017, 5:43 AM

Jul 1 2017

joerg closed D34926: Deprecation flag group + use for BB vectorizer options by committing rL306965: Add an option group for deprecated warnings. Add the removed.
Jul 1 2017, 2:36 PM
joerg created D34926: Deprecation flag group + use for BB vectorizer options.
Jul 1 2017, 9:49 AM
joerg added a comment to D34918: [libc++] Refactoring __sync_* builtins; NFC.

Lock-free atomic operations are also signal safe. Your code is not. While I don't know whether all this functions are not required to be signal safe, the general assertion is certainly questionable.

Jul 1 2017, 3:37 AM

Jun 30 2017

joerg added a comment to D34875: ARM: Report error for invalid use of AAPCS_VFP calling convention.

LGTM, but please cut down the test cases by hand. Most of the attributes and module flags should be unnecessary.

Jun 30 2017, 7:37 AM

Jun 29 2017

joerg added a comment to D34790: [NewPM] Add Clang cc1 flag -fdebug-pass-manager for printing debug information..

As I said in the discussion about similar flags for GVN, I'm generally fine with. We should have a big fat warning in the Release Notes that all -fexperimental-* flags are exactly that -- temporary and not intended for long term consumption. I.e. "we can and will remove them whenever it creates the most havoc".

Jun 29 2017, 6:56 AM