Skip testing multilocale lammps/lsms files under comm=none.
Update .good/.prediff for chown file to support cygwin platform.

On cygwin, chown is reporting an "Invalid argument" error instead of the
expected "Operation not permitted" error. The new prediff replaces both
of these with "SYS_ERR", which is what the .good file now expects.
Convert collapseBlocks functions in to methods on FnSymbol and BlockStmt
Merge pull request #755 from vasslitvinov/skip-multilocale-lammps-for-comm=none

Skip testing multilocale lammps/lsms files under comm=none.

These sets of tests:

  studies/lammps/shemmy/p-lammps-n1
  studies/lammps/shemmy/p-lammps-n2
  studies/lammps/shemmy/p-lammps-n4

and

  studies/lsms/shemmy/lsms-parallel-n1
  studies/lsms/shemmy/lsms-parallel-n2
  studies/lsms/shemmy/lsms-parallel-n4

differ only in .numlocales. So:

* Skipif ...-n2 and ...-n4 when comm=none.

* Change ...-n2.{chpl,good,execopts} and ...-n4.{chpl,good,execopts}
  to symlinks to the respective ...-n1.*
  to emphasize their same-ness.

When our testing system supports multiple numlocales for a single test,
the symlinks can just be deleted.

I debated whether to make ...-n2.chpl and ...-n4.chpl
just 'use' the respective ...-n1.chpl, instead of symlinks.
Then I realized that that was not an option because
the file names had dashes, and I was not up for renaming the files.

Reviewed by Lydia.
Fix QIO ctests after #746.

The QIO ctests do not pull in the definition of chpl_memcpy from chpl-mem.h, so an
alternate definition must be supplied when SIMPLETEST is true.

I changed renamed chpl_memcpy() calls to qio_memcpy() or deque_memcpy() as appropriate and
provided macro definitions for these functions.
Remove test/puzzles/hilde/overflow.
Merge pull request #764 from hildeth/master

Remove test/puzzles/hilde/overflow.
Fixed handling of exec timeout in sub_test.
Added a comment.
Merge pull request #763 from hildeth/fixQioCtests

Fix QIO ctests after #746.

The QIO ctests do not pull in the definition of chpl_memcpy from chpl-mem.h, so an
alternate definition must be supplied when SIMPLETEST is true.

I changed renamed chpl_memcpy() calls to qio_memcpy() or deque_memcpy() as appropriate and
provided macro definitions for these functions.
Merge pull request #765 from vasslitvinov/fix-exectimeout-in-sub_test

Fixed the handling of test execution timeout in sub_test.

When a test with multiple execopts settings timed out under
one of those setting, the later execopts settings would still run
but would not be diff-ed against .good or reported as a success or a failure.
This change fixes that.

The bug was due to the following. The variable 'exectimeout' was used
roughly as follows:

for testname in testsrc:
    exectimeout = False
    for compopts in compoptslist:
        for texecopts in execoptslist:
            for count in xrange(numTrials):
                ... if there is a timeout:
                        exectimeout = True
                if not exectimeout:
                    ... run prediffs ...
                    ... report test success or failure ... 
                if perftest:
                    if exectimeout or status != 0:
                        break

So 'exectimeout = False' was due at the top of the loop body of
either 'for count' or 'for texecopts'.

I chose to put it at the top of 'for count' - the innermost loop
that launches test execution.

The 'exectimeout = False' at the top of the 'for testname' loop
needs to be removed - this will be my upcoming separate PR.
Update the interface to buildVarDecls for LLVM
Merge pull request #758 from thomasvandoren/cygwin-regressions

Update .good/.prediff for chown file to support cygwin platform.

On cygwin, chown is reporting an "Invalid argument" error instead of the
expected "Operation not permitted" error. The new prediff replaces both
of these with "SYS_ERR", which is what the .good file now expects.
Merge pull request #767 from noakesmichael/collapseBlocks

Initial code shuffle collapse blocks and fix for LLVM

1) There is an operation that collapses nested BlockStmts in appropriate contexts.  The current implementation must be refactored as part of the While/For loop refactoring.  This is an initial trivial code shuffle to convert 
existing function in to AST class methods.  No change in functionality.

2) Also an update to LLVM code to conform to the new interface to buildVarDecls.


Compiled: Clang darwin STD, GCC linux64 STD, GCC linux64 LLVM
Tested: Full regression suite STD and LLVM
Reviewed: None