bare-arm, stmhal: Fix --nostdlib to -nostdlib

-nostdlib is the correct option, gcc recognizes the double dash version
when in link-only mode, but not when compiling.

Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
bare-arm, stmhal, teensy: Duplicate -nostdlib to CFLAGS

As we are building with -nostdlib gcc features like the stack protector
will fail linking, because the failure handlers are in gcc's internal
libs. Such features are implicitly disabled during compilation when
-nostdlib is used in CFLAGS too.

Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
Merge pull request #700 from swegener/for-upstream

bare-arm, stmhal: Disable stack protector
bench: Add test for function call overhead.

For a trivial operation, calling a function is 5 times slower than doing
operation inline.
bench: Add tests for constructing various containers from iterator.

Both "bound" (like, length known) and "unbound" (length unknown) are tested.
All of list, tuple, bytes, bytesarray offer approximately the same
performance, with "unbound" case being 30 times slower.
bench: Add test for map() vs inplace operations in array-likes.

map() is 5 times slower. That's mostly because of inefficiency of creating
containers from iterables of unknown length (like map()).
bench: Three ways to process a byte buffer.