std: Ignore a flaky test on freebsd

This test runs successfully manually, but the bots are having trouble getting
this test to pass. Ignore it on freebsd for now.
libstd: Check TMPDIR for android as well and if not set use '/data/local/tmp' instead of '/data/tmp'.
auto merge of #14046 : alexcrichton/rust/ignore-a-test-on-freebsd, r=kballard

This test runs successfully manually, but the bots are having trouble getting
this test to pass. Ignore it on freebsd for now.
auto merge of #14054 : luqmana/rust/at, r=alexcrichton

`/data/local/tmp` seems to be more common.
Workaround for Windows denormal bug in float_to_str_bytes_common

On Windows (MinGW32), `2.0f64.powf(-1074.0)` returns zero instead of a
denormal number, which screws up everything later on in
`float_to_str_bytes_common`.  Changing it to use `powi` works around the
problem.