Home - Waterfall Grid T-Grid Console Builders Recent Builds Buildslaves Changesources - JSON API - About

Console View

Categories: Cygwin Linux Linux cross Linux fast Windows
Legend:   Passed Failed Warnings Failed Again Running Exception Offline No data

Cygwin Linux Linux cross Linux fast Windows
Greg Clayton
Did some cleanup to stop us from leaking Pipe file descriptors.

The main issue was the Communication::Disconnect() was calling its Connection::Disconnect() but this wouldn't release the pipes that the ConnectionFileDescriptor was using. We also have someone that is holding a strong reference to the Process so that when you re-run, target replaces its m_process_sp, but it doesn't get destructed because someone has a strong reference to it. I need to track that down. But, even if we have a strong reference to the a process that is outstanding, we need to call Process::Finalize() to have it release as much of its resources as possible to avoid memory bloat.

Removed the ProcessGDBRemote::SetExitStatus() override and replaced it with ProcessGDBRemote::DidExit().

Now we aren't leaking file descriptors and the stand alone test suite should run much better.
Tobias Grosser
Enable scalar and PHI code generation for Polly

The feature itself has been committed by Johannes in r238070. As this is the
way forward, we now enable it to ensure we get test coverage.

Thank you Johannes for this nice work!
Tobias Grosser
Make use of scalar/phi code generation explicit in the tests

This ensures we pass all tests independently of how we set the options
-disable-polly-intra-scop-scalar-to-array and -polly-model-phi-nodes.

(At least if we enable both or disable both. Enabling them individually makes
little sense, as they will hopefully disappear soon anyhow).
Kostya Serebryany
[lib/Fuzzer] doxygen-ify the comments for the user interface
  • ninja-clang-x64-mingw64-RA: built llvmclang failed -  stdio
Kostya Serebryany
[dfsan] ignore more __sanitizer callbacks
Duncan P. N. Exon Smith
AsmPrinter: Remove the vtable-entry from DIEValue

Remove all virtual functions from `DIEValue`, dropping the vtable
pointer from its layout.  Instead, create "impl" functions on the
subclasses, and use the `DIEValue::Type` to implement the dynamic

This is necessary -- obviously not sufficient -- for passing `DIEValue`s
around by value.  However, this change stands on its own: we make tons
of these.  I measured a drop in memory usage from 888 MB down to 860 MB,
or around 3.2%.

(I'm looking at `llc` memory usage on `verify-uselistorder.lto.opt.bc`;
see r236629 for details.)
David Majnemer
[Sema] Don't use dyn_cast to detect an AtomicType

An AtomicType might be hidden behind arbitrary levels of typedefs.
getAs<> will reliably walk through the sugar to get the underlying

This fixes PR23638.
Duncan P. N. Exon Smith
CodeGen: Remove redundant DIETypeSignature::dump(), NFC

We already have this in `DIEValue`; no reason to shadow it.
Kostya Serebryany
[lib/Fuzzer] fully get rid of std::cerr in libFuzzer
Akira Hatanaka
Stop resetting NoFramePointerElim in TargetMachine::resetTargetOptions.

This is part of the work to remove TargetMachine::resetTargetOptions.

In this patch, instead of updating global variable NoFramePointerElim in
resetTargetOptions, its use in DisableFramePointerElim is replaced with a call
to TargetFrameLowering::noFramePointerElim. This function determines on a
per-function basis if frame pointer elimination should be disabled.

There is no change in functionality except that cl:opt option "disable-fp-elim"
can now override function attribute "no-frame-pointer-elim".
Akira Hatanaka
Simplify and rename function overrideFunctionAttributes. NFC.

This is in preparation to making changes needed to stop resetting
NoFramePointerElim in resetTargetOptions.
Kostya Serebryany
[lib/Fuzzer] start getting rid of std::cerr. Sadly, these parts of C++ library used in libFuzzer badly interract with the same code used in the target function and also with dfsan. It's easier to just not use std::cerr than to defeat these issues.
Akira Hatanaka
Remove unnecessary command line option "-disable-fp-elim".

This option currently has no effect as function attribute
"no-frame-pointer-elim=false" overrides it.
Rafael Espindola
This reverts commit r238064 and r238055.

They depend on a reverted llvm commit.
Rafael Espindola
Revert "make reciprocal estimate code generation more flexible by adding command-line options"

This reverts commit r238051.

It broke some bots:

Philip Reames
Correct a mistaken comment from 238071 [NFC]
Rafael Espindola
Produce a single string table in a ELF .o

Normally an ELF .o has two string tables, one for symbols, one for section

With the scheme of naming sections like ".text.foo" where foo is a symbol,
there is a big potential saving in using a single one.

Building llvm+clang+lld with master and with this patch the results were:

master:                          193,267,008 bytes
patch:                          186,107,952 bytes
master non unique section names: 183,260,192 bytes
patch non unique section names:  183,118,632 bytes

So using non usique saves 10,006,816 bytes, and the patch saves 7,159,056 while
still using distinct names for the sections.
Lang Hames
[lld] Manage atom ordinals in the File class rather than using a static counter.

This is a cleaner fix for the race-condition bug that was originally papered
over by r237857.
Philip Reames
Extend EarlyCSE to handle basic cases from JumpThreading and CVP

This patch extends EarlyCSE to take advantage of the information that a controlling branch gives us about the value of a Value within this and dominated basic blocks. If the current block has a single predecessor with a controlling branch, we can infer what the branch condition must have been to execute this block. The actual change to support this is downright simple because EarlyCSE's existing scoped hash table logic deals with most of the complexity around merging.

The patch actually implements two optimizations.
1) The first is analogous to JumpThreading in that it enables EarlyCSE's CSE handling to fold branches which are exactly redundant due to a previous branch to branches on constants. (It doesn't actually replace the branch or change the CFG.) This is pretty clearly a win since it enables substantial CFG simplification before we start trying to inline.

Johannes Doerfert
Add scalar and phi code generation

  To reduce compile time and to allow more and better quality SCoPs in
  the long run we introduced scalar dependences and PHI-modeling. This
  patch will now allow us to generate code if one or both of those
  options are set. While the principle of demoting scalars as well as
  PHIs to memory in order to communicate their value stays the same,
  this allows to delay the demotion till the very end (the actual code
  generation). Consequently:
    - We __almost__ do not modify the code if we do not generate code
      for an optimized SCoP in the end. Thus, the early exit as well as
      the unprofitable option will now actually preven us from
      introducing regressions in case we will probably not get better
    - Polly can be used as a "pure" analyzer tool as long as the code
      generator is set to none.
    - The original SCoP is almost not touched when the optimized version

Oleksiy Vyalov
Use target's SIGSTOP and SIGINT when making decision about continue after async packet.

David Majnemer
[InstCombine] Don't eagerly propagate nsw for A*B+A*C => A*(B+C)

InstCombine transforms A *nsw B +nsw A *nsw C to A *nsw (B + C).
This is incorrect -- e.g. if A = -1, B = 1, C = INT_SMAX. Then
nothing in the LHS overflows, but the multiplication in RHS overflows.

We need to first make sure that we won't multiple by INT_SMAX + 1.

Test case `add_of_mul` contributed by Sanjoy Das.

This fixes PR23635.

Differential Revision: http://reviews.llvm.org/D9629
Greg Clayton
Fix this module to work with current packects and also to be able to figure out average packets speed and standard deviation.
Sanjay Patel
add missing include for TargetRecip
Kostya Serebryany
[lib/Fuzzer] remove -use_coverage_pairs=1, an experimental feature that is unlikely to ever scale