DOC: fix typo in linalg.lstsq doc string
ENH: random: Allow ngood=0 or nbad=0 in mtrand.hypergeometric.

Also edited the 'Parameters' section of the docstring to comply
with the numpy docstring standard.
Merge pull request #3431 from WarrenWeckesser/mtrand-hypergeom-edge-case

ENH: random: Allow ngood=0 or nbad=0 in mtrand.hypergeometric.
ENH: tell gcc to unroll strided copy loops

The strided copy loops profit a lot from unrolling as the number of
operations executed is in each iterations very small.
GCC needs to be told explicitly to do unrolling even on O3.

Unrolling is only profitable if the move can be done in a single
instruction, else the increased code size makes it slower, thus the flag
is only used for operations on element sizes less equal the native
pointer size.

Tested to improve performance of by 20-50% on intel core2duo, xeon
5xxx/7xxx and amd phenom x4.
DOC: minor tweak of linalg.lstsq doc string
DOC: another minor tweak of linalg.lstsq doc string
Updated info about sphinx.ext.autosummary.
Merge pull request #3435 from zabbarob/patch-1

Updated info about sphinx.ext.autosummary.
ENH: vectorize boolean logical &&, ||, abs and not

The code ensures the result is identical to a boolean operation even
though this might be unnecessary if bools are used correctly everywhere.
The overhead doesn't matter much as vectorizing single byte operations
hits the memory bandwidth limit very quickly.

Improves performance by about a factor of 5 to 10 depending on the cpu.
These operations currently can't be autovectorized by gcc 4.8.
Merge pull request #3432 from fhs/lstsq-doc

DOC: fix typo in linalg.lstsq doc string
Fix minor typos in Polynomial class documentation

Signed-Off-By: Kumar Appaiah <a.kumar@alumni.iitm.ac.in>
Merge pull request #3438 from kumanna/master

Fix minor typos in Polynomial class documentation
MAINT: ma: clean up ma/test_extras.py: don't use 'import *'; PEP8 whitespace
BUG: ma: ma.average didn't handle complex arrays correctly (issue gh-2684)
Merge pull request #3440 from WarrenWeckesser/bug-ma-average

BUG: ma: ma.average didn't handle complex arrays correctly (issue gh-2684)
BUG: Revert "ENH: enable unaligned loads on x86"

This reverts commit aef286debfd11a62f1c337dea55624cee7fd4d9e.
x86 platform works with unaligned access but the compiler is allowed to assume
all data is aligned to its size by the C standard. This means it can vectorize
instructions peeling only by the size of the type, if the data is not aligned
to this size one ends up with data not correctly aligned for SSE instructions
(16 byte).
So this flag can only be enabled if autovectorization is disabled.
Merge pull request #3445 from juliantaylor/revert-x86-unaligned-access

BUG: Revert "ENH: enable unaligned loads on x86"
BUG: field assignment in masked array did not reset mask; closes #2403

The previous behavior when setting a field after indexing to
select an element was suitable for the hard mask case, but
not for the default soft mask.  In addition, the _hardmask
value was not being set at all in the mvoid instance.  With
this changeset, the _hardmask is passed in and __setitem__
takes it into account.
MAINT: fix compilation issue gh-3443.
Merge PR-3444 from 'jmozmoz:master' into master.

https://github.com/numpy/numpy/pull/3444
Fixed compilation with Cygwin.