Set OPTIMIZE and DEBUG in the third-party directory as we do in the compiler and runtime

[reviewed by Lydia]

qThis commit puts logic in the top-level third-party Makefile that sets
OPTIMIZE and DEBUG based on the setting of CHPL_DEVELOPER as we
already do for the compiler and runtime directories.

I've also removed that same logic from the re2 Makefile as it is no
longer needed, assuming you call make from at least one level up.

So that is a caveat: you do not get this behavior if you go into a
specific third-party directory and do 'make'.



git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22545 3a8e244f-b0f2-452b-bcba-4c88e055c3ca
Remove more nondeterminism from refcnt.chpl. [reviewed by mppf]

In the "begin" scope, added a sync variable and wrapped allocation of the
record in a nested function, so the copy of the record owned by the spawning
routine is guaranteed to go out of scope before the spawned routine accesses
its copy.


git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22546 3a8e244f-b0f2-452b-bcba-4c88e055c3ca
Update RE2 to the latest version which builds on Mac OS X 10.9

[Reviewed by Lydia]

Some minor modifications to the patches we apply to RE2.
In particular, one of our patches (adding settable dot_nl to the regexp)
is now in the trunk version, so we no longer need to do that.

test/regexp passes after this change. 



git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22547 3a8e244f-b0f2-452b-bcba-4c88e055c3ca
Add ability to turn off qthread guard pages

[reviewed by Lydia]

If CHPL_QTHREAD_NO_GUARD_PAGES is set to 'true' or 'yes' (or variants
of those words, e.g. 't', 'Y', etc.), do not configure qthreads to use
guard pages.

Added a macro to $CHPL_HOME/make/Makefile.base called isTrue() that
performs the various comparisons so others can use it in the future.
(Thanks, Kyle)



git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22548 3a8e244f-b0f2-452b-bcba-4c88e055c3ca
Style-oriented housecleaning for tests looping over domains unnecessarily

[reviewed by lydia, kyleb, sungeun, hilde, diten, rafa]

This patch does a cleanup over the test directory, looking for cases
where a loop is looping over a domain expression unnecessarily.  An
example of this is:

        for i in {1..n} do

This says "Create the anonymous domain {1..n} and then loop over
it. Since domains are heavier-weight than ranges, the preferable form
in an optimized compiler is:

        for i in 1..n do

which only creates an anonymous range.  

Of course, ultimately, we'd like the compiler to strength-reduce such
cases, but until then we have to do it manually.  Even if we did have
the optimization, I think we want to put forth codes that demonstrate
preferred Chapel style, so rewriting these cases is beneficial anyway.

Note that there are still 3-5 cases that use the old forms because
part of their point in being tests seems to be to compare the
different forms.

One of the cases was in an internal module as well.




git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22549 3a8e244f-b0f2-452b-bcba-4c88e055c3ca
Mid week triage update

REGRESSIONS:

- Updated info on new bulkcomm errors from last week (CCE bug)

TRIAGE:

- Some more info about gasnet timeouts

- Remove RecordDestructor1b entry

- Updated entry regarding CCE seg faults (moved unrelated item to
  no-local internal error)

- Added cygwin lulesh timeout




git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22550 3a8e244f-b0f2-452b-bcba-4c88e055c3ca
Modified my Chpl vs C multidimensional and array of arrays comparison test.
Turns out it was doing a bit more work than it needed to.  Since the test still
takes a long time to run on gasnet-fast, I bumped the timeout, in case it would
be noisy otherwise.



git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22551 3a8e244f-b0f2-452b-bcba-4c88e055c3ca
New fannkuch versions

We reviewed fannkuch in the performance meeting today, and this
is me having some fun writing it more in my Chapel style and
trying some variations.  I added these to the graph file to
compare against Kyle's going forward.

The versions are:

fannkuch-redux-blc.chpl : my main version; relative to Kyle's
   version, uses int(64)s, type inference, declare-when-first-
   defined style (moreso), and more Chapel-isms (loop mechanisms,
   swap operator, etc.

fannkuch-redux-int8.chpl : this is a version in which I tried
   using int(8)s to see if the more compact memory footprint
   would help performance much.  Answer: not from what I've
   seen.  This version is also parameterized so that one can
   compare different int formats with a single source.

fannkuch-redux-compact.chpl : this version is terser, but
   probably also slower by using data parallelism in cases
   that don't warrant it.  This raises an increasingly common
   question: How can we have people write things cleanly without
   getting parallelism they don't want/need.


And one future:

fannkuch-redux-blc-unbounded.chpl : this is a future that tries
   to do 'for i in 1.. { ... }' to get an unbounded loop (that
   it will break out of before we run off the end of the unbounded
   range).  I wasn't entirely surprised that this didn't work, but
   I was surprised that it resulted in a syntax error rather than
   a runtime or compile time complaint about iterating over an
   unbounded range.  So this is a feature request.

(When this future is retired, it can be folded into the other
versions and removed rather than maintaining a fourth version.





git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22552 3a8e244f-b0f2-452b-bcba-4c88e055c3ca
var -> const changes

Oops, I forgot to change a few vars to consts when writing these
fannkuch versions yesterday.  I don't expect it to improve things
now, but perhaps in the future...  (and it expresses intent better
to the reader).



git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22553 3a8e244f-b0f2-452b-bcba-4c88e055c3ca
Lowering the problem size so that things don't take quite so long.



git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22554 3a8e244f-b0f2-452b-bcba-4c88e055c3ca
Forgot to remove the timeout file, since it shouldn't be relevant any more



git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22555 3a8e244f-b0f2-452b-bcba-4c88e055c3ca
Add a quick-reference entry on how to change the revision log retroactively.

git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22556 3a8e244f-b0f2-452b-bcba-4c88e055c3ca
Make paratest.server issue an error if CHPL_HOME is not set.

[reviewed by tvandoren]

If CHPL_HOME was not set, this script was getting an error about failing
to generate spec tests. Instead, verify that CHPL_HOME is set and issue a
clearer error if it is not.


git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22557 3a8e244f-b0f2-452b-bcba-4c88e055c3ca
Add future for enumerate iterator similar to python.

r: sungeun

git-svn-id: svn+ssh://svn.code.sf.net/p/chapel/code/trunk@22558 3a8e244f-b0f2-452b-bcba-4c88e055c3ca