Release Notes for the Advance Toolchain 13.0-4
Features in 13.0-4
- The Advance Toolchain is a self contained toolchain which isn't reliant on the base system toolchain.
- Base toolchain packages:
- GNU Binutils - 2.34.0-33973d228c9b online docs
- Expat XML Parser - 2.2.7-d3b78b42a2dc online docs
- GCC (GNU Compiler Collection) - 9.3.1-e763634f5733 [C, C++ (g++), fortran, Go] online docs
- GNU Standard C++ Library v3 (Libstdc++-v3) - 9.3.1-e763634f5733 online docs
- GNU Libgomp - 9.3.1-e763634f5733 online docs
- GNU C Library - 2.30-889122cbface online docs
- GNU Multiple Precision Library - 6.1.2 online docs
- GNU MPC Library - 1.1.0-69ad1bcb8e9e online docs
- GNU MPFR Library - 4.0.2-13499 online docs
- Additional support libraries, including some additional floating point support libraries:
- Decimal Floating Point C Library - 1.0.13-e257474ab320 online docs
- Libhugetlbfs - 2.21-73d06e69108f online docs
- Libvecpf - 1.1.0 online docs
- Open Secure Sockets Layer - 1.1.1k-122e5f7c0108 online docs
- IBM Power Architecture Facilities Library - 0.3.0-cbb41aa0538a online docs
- Power Vector Library - 1.0.2-6933cc5 online docs
- Python - 3.7.9-13c94747c744 online docs
- TCMalloc - 2.8-bda3c82e1161 online docs
- ZLIB Compression Library - 1.2.11-ba9df2111e9c online docs
- Development tools:
- GDB (GNU Debugger) - 8.3.1-fc94da0a253e online docs
- Additional performance and debugging tools:
- Valgrind - 3.14.0-0c701ba2a4b1 online docs
- Additional multi core support libraries:
- Boost - 1.70.0 online docs
- SPHDE - 1.4.0-6a630fad0fbe online docs
- Userspace RCU - 0.11.3-cb0d07ea3a0b online docs
- Thread Building Blocks - 2019_U9-a803f276186f online docs
- POWER9 enablement.
- POWER9 optimized scheduler.
- Requires at least POWER8 for ppc64le.
- POWER8 Transactional Memory enablement.
- POWER8 Crypto Operations enablement.
- POWER8 and POWER9 optimized system libraries.
- POWER9 _Float128 enablement as specified by ISO/IEC TS 18661-3.
- GCC creates binaries using --mcpu=power8 --mtune=power9 by default.
- GCC provides:
- Fix for Brace initialization of array sometimes fails if no copy constructor.
- Fix for libstdc++-prettyprinters/libfundts.cc test failures on powerpc64.
- Fix for charlen_03, charlen_10 ICE.
- Fix for dangling reference in mutex:693.
- Fix for Bad intrinsic assignment of class(*) array component of derived type.
- Fix for LTO bootstapped binaries differ.
- Fix for [OOP] ICE with OMP.
- Fix for Can't apply attributes to lambdas with trailing returns.
- Fix for ICE: gimplification failed (contiguous expr).
- Fix for pretty printers: The __node_type type alias in _Hashtable is not available.
- Fix for Compiler is unable to generate finalization wrapper.
- Fix for ICE in check_constant_initializer, at fortran/trans-decl.c:5450.
- Fix for ICE in gfc_constructor_append_expr, at fortran/constructor.c:135.
- Fix for ICE in trans_array_constructor, at fortran/trans-array.c:2566.
- Fix for valgrind error for ./gfortran.dg/bessel_5.f90 since r9-1566-g87c789f1c0b2df41.
- Fix for ICE in gfc_match_subroutine, at fortran/decl.c:7913.
- Fix for internal compiler error: in build_over_call.
- Fix for ICE in fold_convert_loc, at fold-const.c:2558.
- Fix for bogus alignment for negative step grouped access.
- Fix for Clang can't compile <ext/throw_allocator.h>: error: use of undeclared identifier '__builtin_sprintf'.
- Fix for ICE in gimplify_expr, at gimplify.c:14638.
- Fix for ICE in fold_convert_loc, at fold-const.c:2398.
- Fix for gfortran 8-10 shape mismatch in assumed-length dummy argument character array.
- Fix for Unclassifiable statement with syntax similar to a type-bound procedure call is accepted.
- Fix for Wrong evaluation order of || operator.
- Fix for ICE with -ffast-math since r7-950-g8a85cee26eabf5cf.
- Fix for gfc_find_vtab can use a character type typespec as a derived type (causing invalid access).
- Fix for ICE in gimple check: expected gimple_assign(error_mark), have gimple_nop() in gimple_assign_rhs1, at gimple.h:2605 since r7-950-g8a85cee26eabf5cf.
- Fix for Vectorizer gives a boolean a value of 255.
- Fix for ICE: during RTL pass: cprop /segfault in sbitmap.
- Fix for loop end condition missing - endless loop with -fPIC.
- Fix for gcc.dg/strncmp-2.c frees mproptected memory.
- Fix for ICE in gfc_assign_data_value, at fortran/data.c:468 since r9-3803-ga5fbc2f36a291cbe.
- Fix for incorrect Type'Mod during a loop whose range is computed by a variable.
- Fix for d: ICE in gimplify_expr, at gimplify.c.
- Fix for Dependency check fails when using "allocatable" instead of "pointer" (forall_3.f90).
- Fix for gfortran segfault on character array initialization from parameter value since r8-5900-g266404a8d62b99ab.
- Fix for clang-tidy error parsing <mutex> on libstdc++-v3.
- Fix for FAIL: c37213j, c37213, kc37213l with stack overflow or erroneous memory access.
- Fix for [C++20] ICE in tsubst_copy, at cp/pt.c:16771.
- Fix for libphobos: junk in generated symbol.
- Fix for ICE in gfc_match_varspec, at fortran/primary.c:2411.
- Fix for ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:541.
- Fix for ICE in gimplify_scan_omp_clauses, at gimplify.c:9833.
- Fix for Segfault when passing allocatable scalar into intent(out) dummy argument.
- Fix for matmul on temporary array accesses invalid memory (segfault).
- Fix for Sanitizer detect heap-buffer-overflow in checkModFileAlias.
- Fix for libgo doesn't build against latest glibc.
- GNU C Library provides:
- Fix for (CVE-2020-27618) iconv hangs when converting some invalid inputs from several IBM character sets.
- Fix for (CVE-2020-29562) Assertion failure in iconv when converting invalid UCS4.
- Fix for (CVE-2021-3326) Assertion failure in ISO-2022-JP-3 gconv module related to combining characters.
- Fix for (CVE-2021-27645) double-free in nscd.
- OpenSSL provides:
- Version 1.1.1k, see the release notes for details.
- Python provides:
- Version 3.7.9, see the release notes for details.
- Userspace RCU provides:
- Version 0.11.3, see the release notes for details.
- GCC provides:
- Fix for ProcPtr function results: wrong name in error message.
- Fix for Preserve variable-use locations.
- Fix for SIGSEGV in gfc_trans_label_assign.
- Fix for Spurious "Type specified for intrinsic function 'command_argument_count' at (1) is ignored" under -Wsurprising.
- Fix for LTO PGO bootstrap fails on linux-sparc64 in stream_out_histogram_value.
- Fix for ICE on using sync images with integer(kind<>4), with -fcoarray=lib -fcheck=bounds.
- Fix for __glibcxx_assert and Debug Mode checks can't be used in constexpr functions.
- Fix for spurious -Wunused-variable on a pointer with attribute unused in function template.
- Fix for relative line numbers only working if gcc_{error,warning}_prefix defined.
- Fix for dg-message not supported.
- Fix for Incorrect result from alignof in templates, if also using __alignof__.
- Fix for ICE with allocatable coarray, class and associate in resolve_assoc_var, at fortran/resolve.c:8750.
- Fix for new_allocator::construct needs to be constrained.
- Fix for internal compiler error: in conv_function_val, at fortran/trans-expr.c:3792.
- Fix for by-ref capture of constexpr class object rejected.
- Fix for segfault when run CPU2006 465.tonto since r263875.
- Fix for -fmerge-all-constants leads to corrupt output without inlining.
- Fix for std::variant with multiple identical types assignment fail to compile.
- Fix for GDC generate duplicate symbols when mixins and interfaces are used to gather.
- Fix for __builtin_vec_xor() causes subregs to be used when not using V4SImode vectors.
- Fix for std::gcd mishandles mixed-signedness.
- Fix for gcc.dg/vmx/ops.c and several other test break after r279772.
- Fix for std::experimental::filesystem::path::generic_string() doesn't normalize.
- Fix for ICE in gfc_dt_upper_string, at fortran/module.c:441.
- Fix for ICE on invalid with argument list for module procedure.
- Fix for ICE in gfc_conv_array_constructor_expr, at fortran/trans-expr.c:7594.
- Fix for ICE in scan_omp_1_op, at omp-low.c:3485.
- Fix for ICE in gfc_get_dataptr_offset, at fortran/trans-array.c:6951.
- Fix for Invalid UP/DOWN rounding with EN descriptor.
- Fix for GCC eliminates conditions it should not, when strict-enums is on.
- Fix for ICE in make_ssa_name_fn, at tree-ssanames.c:279 since r7-536-g381cdae49785fc4b.
- Fix for Wrong array creation with p => array_dt(1:n)%component.
- Fix for is_trivially_copy_constructible<> fails with compiler error on complicated object with private default constructor.
- Fix for gcc.dg/gomp/pr82374.c fails on power 7.
- Fix for Memory leak introduced in 8.3.0->8.3.1.
- Fix for Longcalls mis-optimize loading the function address.
- Fix for std::pmr::pool_options::max_blocks_per_chunk=1 causes pool resources to return null pointers.
- Fix for experimental/executor and socket header issues-.
- Fix for filesystem::path::generic_string() only works with std::allocator.
- Fix for UBSAN: "invalid vptr" false positive for virtual inheritance with -fno-sanitize-recover=all.
- Fix for Memory leak in nested types with final.
- Fix for the compiler consider "type is( real(kind(1.)) )" as a syntax error since r10-7369-gc38daa7976886a59.
- Fix for wrong code with vector modulo operation since r0-117580.
- Fix for Error: Expected comma or semicolon, comma found.
- Fix for '-fcompare-debug' failure (length) with -O2 -fnon-call-exceptions since r8-565-g7581ce9a1ad6df9c.
- Fix for GCC 9.2.1 segfaults when compiling file with -O3 since r9-5354.
- Fix for std::match_results equality comparisons should not be noexcept.
- Fix for -Wpadded -fsanitize=undefined together cause warning on main().
- Fix for filesystem::sysmlink_status using stat instead of lstat when --disable-libstdcxx-filesystem-ts.
- Fix for internal compiler error: tree check: expected class ‘type’, have ‘exceptional’ (error_mark) in diag_attr_exclusions, at attribs.c:396 since r8-5161.
- Fix for Assembler messages: Error: operand out of range (4 is not between 0 and 3) (xxsldwi 0,32,33,4).
- Fix for Incorrect "no return statement" warning with [[noreturn]] and __FUNCTION__.
- Fix for internal compiler error: Segmentation fault.
- Fix for Severe regression leading to double free in tcache.
- Fix for Different results between gcc-9 and gcc-6.
- Fix for ppc incorrect mffs-based emulation of mffsl.
- Fix for ICE in gcc.dg/pr94780.c after r10-7999.
- Fix for internal compiler error: in gimplify_label_expr, at gimplify.c:2573.
- Fix for memory corruption in std::pmr::monotonic_buffer_resource.
- Fix for detect_stack_use_after_return=1 is much slower than clang's.
- Fix for pmr::synchronized_pool_resource crashes without -pthread.
- Fix for error: ‘template<class returnType> JSC::FunctionPtr::FunctionPtr(returnType (*)())’ cannot be overloaded since r10-7998-g5f1cd1da1a805c3d.
- Fix for -fipa-pta + pthread_once crash since r6-5684-g47e5754e17e9ac3b.
- Fix for dereferencing type-punned pointer will break strict-aliasing rules when using super class for a template type.
- Fix for Wrong code generation for vec_pack_to_short_fp32 builtin for Power.
- Fix for ICE in add_phi_arg, at tree-phinodes.c:359 since r8-2993-ga7976089dba5e227.
- Fix for Invalid loop distribution since r8-2390-gdfbddbeb1ca912c9.
- Fix for internal compiler error: in verify_gimple_stmt, at tree-cfg.c:4959.
- Fix for GCC never terminates with trivial input program.
- Fix for -fcompare-debug failure (length) with -Og -fcse-follow-jumps -fnon-call-exceptions.
- Fix for ICE in gfc_hash_value, at fortran/class.c:538.
- Fix for Segfault on a legal WAIT statement.
- Fix for Bogus warning from module with long name and an equivalence.
- Fix for new test case in r11-345 error: gcc.dg/tree-ssa/pr94969.c: dump file does not exist.
- Fix for CLOSE hangs when -fopenmp is specified in compilation.
- Fix for wrong vtable offset in virtual function call.
- Fix for Templates + Diamond Inheritance + Final = Pure Virtual Function Call.
- Fix for ICE on some architecture targets when trying to use unknown attribute.
- Fix for Hang in WAIT with a bad ID= value if threading specified.
- Fix for ICE instead of error when trying to use bad template type inside template.
- Fix for structured binding of template type inside template function is reported as "incomplete class type".
- Fix for Wparentheses (assignment used as truth value) on parenthesized ternary conditional E2.
- Fix for ICE in build_reference_type, at tree.c:7942.
- Fix for Segfault compiling extra interface on intrinsic.
- Fix for ICE in gfc_is_simply_contiguous, at fortran/expr.c:5844.
- Fix for ICE in gfortran.dg/equiv_11.f90 after r11-594.
- Fix for gfortran.dg/pr95090.f90 since r11-670.
- Fix for ICE in comptypes, at cp/typeck.c:1498 since r7-4206-g84ff4775d41b716c.
- Fix for ICE in gfc_check_reshape, at fortran/check.c:4751.
- Fix for ICE in gfc_target_encode_expr, at fortran/target-memory.c:362.
- Fix for ICE in access_attr_decl, at fortran/decl.c:9075.
- Fix for ICE in gfc_check_pointer_assign, at fortran/expr.c:4274.
- Fix for ICE in build_field, at fortran/trans-common.c:301.
- Fix for Legit-looking code doesn't work with -O2.
- Fix for ICE in dependent_type_p, at cp/pt.c:25610.
- Fix for ICE in check_sym_interfaces, at fortran/interface.c:2015.
- Fix for ICE in resolve_fl_procedure, at fortran/resolve.c:13002.
- Fix for ICE in gfc_resolve_code, at fortran/resolve.c:11807.
- Fix for ICE during GIMPLE pass: vect: verify_ssa failed since r9-5325-gf25507d041de4df6.
- Fix for bogus recursive call to nonrecursive procedure with -fcheck=recursion.
- Fix for std::filesystem::file_size returns wrong size for large files on Windows.
- Fix for ICE in generate_code_for_partition, at tree-loop-distribution.c:1323 since r11-1565-g2c0069fafb53ccb7.
- Fix for Spurious UBSan warning when computing the opposite of the absolute value of INT_MIN.
- Fix for Bogus error with additional blanks in type(*).
- Fix for Silencing an unused label warning with (void)&&label; can make gcc segfault.
- Fix for ICE in gfc_add_type, at fortran/symbol.c:2030 since r11-524-geb069ae8819c3a84.
- Fix for ICE in resolve_symbol, at fortran/resolve.c:15175 since r7-5348-g6479f45b31c13f30.
- Fix for ICE in gfc_get_derived_type, at fortran/trans-types.c:2729.
- Fix for Optimization issue with external HDF5 library.
- Fix for ICE in gfortran.dg/pr93423.f90 after r11-1792.
- Fix for Vector element extract mistypes long long int down to long int.
- Fix for -fc-prototypes forgets types for doubles.
- Fix for __builtin_convertvector ICE without lhs.
- Fix for OpenMP host teams reductions ignored.
- Fix for Horrible performance of std::read_symlink.
- Fix for get_environment_variable crashes for environment variables that are empty strings.
- Fix for ICE in get_atomic_generic_size.
- Fix for Bad "set but not used" warning with _Generic.
- Fix for Clobbers on NULL since r8-1519.
- Fix for slow compile with `-g -O3` since r11-39-gf9e1ea10e657af9f.
- Fix for std::swap(std::variant, std::variant) triggers undefined behavior sanitizer.
- Fix for std::tuple chooses wrong constructor for uses-allocator construction.
- Fix for -frounding-math -std=c++2a error: '(1.29e+2 * 6.9314718055994529e-1)' is not a constant expression.
- Fix for Wrong answer with intrinsic IALL.
- Fix for an O2, O3 codegen bug.
- Fix for The value of result is wrong when vector (step size is negative) * matrix.
- Fix for Zero valued #line directive results in excessively large blocks of memory being allocated.
- Fix for noexcept specifier in std::bind_front().
- Fix for assume_aligned is not constexpr.
- Fix for string_view bounds error in filesystem::path.
- Fix for .gcno files are not written to same directory as the object file.
- Fix for Wrong answer from MAXLOC with character arg.
- Fix for ICE on firefox built with lto+pgo: dist/include/mozilla/Casting.h:64:1: internal compiler error: in to_frequency, at profile-count.c:273.
- Fix for g++.dg/asan/asan_test.C compilation failure starting with r11-3827.
- Fix for Wrong min value generated for DFP numbers.
- Fix for New gfortran.dg/pdt_14.f03 failure after g:617695cdc2b3d950f1e4deb5ea85d5cc302943f4.
- Fix for terminate called in std::experimental::filesystem::recursive_directory_iterator.
- Fix for FTB msp430-elf error: the value of '__gnu_cxx::__numeric_traits_integer<__int20>::__max' is not usable in a constant expression.
- Fix for ICE near htab_hash_string when LTO, -O & -g.
- Fix for ext/stdio_filebuf/char/79820.cc is broken.
- GNU C Library provides:
- Binutils provides:
- Fix for Bug in bfd causes crashes with DXVK.
- Userspace RCU provides:
- Version 0.11.2, see the release notes for details.
- Fix for explicitly include urcu/config.h in files using CONFIG_RCU_ defines.
- Fix for add -lurcu-common to pkg-config libs for each flavor.
- Fix race between rcu_barrier() and call_rcu_data_free().
- TBB provides:
- Version 2019_U9, see the release notes for details.
- TCMalloc provides:
- Version 2.8, see the release notes for details.
- GCC provides:
- Fix for gcc looks for C++ attributes in the wrong place in a lambda-expression.
- Fix for enum class bitfield size-checking needs a separate warning flag controlling it.
- Fix for std::locale::classic() Needless Race.
- Fix for ICE in resolve_component, at fortran/resolve.c:13696.
- Fix for ICE in curr_insn_transform, at lra-constraints.c:3892.
- Fix for error: unrecognizable insn on ppc64le.
- Fix for ICE: Segmentation fault signal terminated program cc1plus, with -std=c++2a -fconcepts.
- Fix for PowerPC vec_xl_len should take const.
- Fix for ubsan does not work with openmp default (none) directive.
- Fix for Doc typos in __builtin_crypto_vpmsum*.
- Fix for Debug mode: there is a racing condition between destructors of iterator and the associated container..
- Fix for error in update of gcc.target/powerpc/pr72804.c in r277872.
- Fix for Documentation ambiguous/misleading about interplay of optimization and warning flags.
- Fix for Inappropriate comment for std::ios_base::trunc.
- Fix for frename-registers does not work well with __builtin_return.
- Fix for std::discrete_distribution's operator>> causes OOM.
- Fix for std::filesystem::path::generic_string doesn't convert the first slash on Windows.
- Fix for libstdc++ wrongly uses direct clock_gettime syscall on non-glibc, breaks time64.
- Fix for points-to wrong for integer offsetting and field-sensitive analysis.
- Fix for ICE in oacc_code_to_statement, at fortran/openmp.c:6007.
- Fix for OpenMP target teams distribute parallel for with defaultmap not mapping correctly.
- Fix for ICE in simd_clone_struct_copy, at omp-simd-clone.c:84.
- Fix for __builtin_convertvector doesn't mark input as used.
- Fix for infinite loop building ghostscript and icu with -O3 on powerpc64le-linux-gnu.
- Fix for fortran.dg/minlocval_4.f90 fails on power 9 after r10-4161.
- Fix for GCC adds unwanted nops to align loops on powerpc 8xx since r9-1623.
- Fix for PPC64 builtin vec_rlnm() argument order is wrong..
- Fix for Incorrect DW_AT_location generated for copy-constructed function argument.
- Fix for r10-6762 breaks gcc.target/powerpc/fold-vec-st-*.c test cases.
- Fix for ICE using lambda capture in openMP parallel for reduction.
- Fix for PowerPC vec_extract with variable element number has code regressions for V2DI/V2DF vectors.
- Fix for std::to_address doesn't work with past-the-end Debug Mode iterators.
- Fix for Problematic ld_date configure check.
- Fix for gcc.target/powerpc/pr72804.c fails.
- Fix for pr71109.c -fcompare-debug failures on x86_64 and powerpc64le.
- Fix for std::experimental::net::v1::make_service function template not instantiatable.
- Fix for Wrong optimization: memset of n-bit integer types (from bit-fields) is truncated to n bits (instead of sizeof).
- Fix for gfortran 8/9 reject module procedure definition in same module as function interface.
- Fix for Missing c++ debug information for 'auto&' return type.
- Fix for ICE in tsubst_expr, at cp/pt.c:18181.
- Fix for Logical operator inside fold-expression: strange warning.
- Fix for r9-8486 causes several builtin instruction test case execution failures on power 9.
- GNU C Library provides:
- Fix for (CVE-2020-1752) 'glob' use-after-free bug (CVE-2020-1752).
- Fix for (CVE-2020-1751) Array overflow in backtrace on powerpc (CVE-2020-1751).
- Fix for configure: broken detection of STT_GNU_IFUNC when GCC defaults to PIE.
- Fix for system() returns wrong errors when posix_spawn fails.
- Fix for Incorrect prctl.
- Fix for Bad LOADARGS_N.
- Binutils provides:
- Fix for nm should not mark symbols in .init_array as "t".
- Fix for nm reports data variable as "T" with -flto.
- Fix for objcopy : free() invalid pointer in _bfd_coff_free_symbols.
- Fix for ar and ranlib should not call lto-wrapper for LTO bytecode.
- Fix for error: PHDR segment not covered by LOAD segment.
- Fix for nm shows symbol as 'U' while showed as 'T'.
- Fix for powerpc64-unknown-linux-gnu-ld overflows string buffer in --stats mode.
- Fix for powerpc64-ld infinite loop
- Python provides:
- Adding the following flags when building python: --enable-optimizations and --with-lto
- GCC provides:
- brace initialization requires public destructor.
- ICE using lambda in #pragma omp declare reduction.
- enum class bitfield size-checking needs a separate warning flag controlling it.
- [C++11] std::proj returns incorrect values.
- powerpc: -flto forgets 'no-vsx' function attributes.
- boost::is_final does not work for template types.
- can construct vector with non-copyable-but-trivially-copyable elements.
- std::terminate() will happily call a null terminate handler.
- std::function and std::is_invocable_r do not understand guaranteed elision.
- ICE: verify_ssa failed (error: definition in block 2 follows the use).
- assumed rank optional.
- internal compiler error: in gfc_conv_procedure_call.
- Crash on tr2::dynamic_bitset::operator=() with optimization.
- Formatted stream IO irreproducible read with binary data in file.
- std::pmr::polymorphic_allocator<char> throws bad_alloc on macOS.
- Partial specializations of class templates with class NTTP fails.
- [[likely]]/[[unlikely]] prevent method from being a constant expression.
- ICE in IPA pass fnsummary in openmp offload.
- [C++20] template argument deduction fails for custom non-type parameters.
- CFI_address wrongly assumes that lower bounds are at zero – invalid for pointers + allocatables.
- couple of suspicious assignments in expect.c.
- internal compiler error: in convert_mpz_to_unsigned, at fortran/simplify.c:173.
- Handling of unknown attributes.
- Wrong .debug_line section information when compiling stdin input with -g3.
- P1064R0 - virtual constexpr fails if object taken from array.
- Bit-field of scoped enumeration type cannot be initialized.
- ICE in convert_nonlocal_reference_op, at tree-nested.c:1065.
- CWG1299 extend_ref_init_temps_1 punts on COND_EXPRs.
- compiler treats enum type as an integer during overload resolution when a bit-field of this enum is considered.
- Suspicious code in cgraph_edge_brings_all_agg_vals_for_node(), ipa-cp.c.
- ICE in gfc_trans_omp_atomic, at fortran/trans-openmp.c:3526.
- Side-effects dropped when decltype(nullptr) typed expression is passed to ellipsis.
- libgomp: destructor missing to delete goacc_cleanup_key.
- Bogus `-Wsuggest-attribute=cold` on function already marked as `__attribute__((cold))`.
- unused return value in affinity-fmt.c.
- [[deprecated("message")]] on template struct/class drops message.
- INQUIRE on pre-assigned files of ROUND and SIGN properties fails.
- OpenMP module description incomplete in gcc/fortran/intrinsic.texi – missing PARAMETER.
- GNU C Library provides:
- Fix for CVE-2019-19126: LD_PREFER_MAP_32BIT_EXEC not ignored in setuid binaries.
- pvalloc must not have __attribute_alloc_size__.
- login: Use pread64 in utmp implementation.
- Add nocancel version of pread64().
- login: Introduce matches_last_entry to utmp processing.
- login: pututline uses potentially outdated cache.
- Missing nonstring attributes in <utmp.h>, <utmpx.h>.
- login: Remove double-assignment of fl.l_whence in try_file_lock.
- login: Repeating pututxline on EINTR/EAGAIN causes stale utmp entries.
- login: utmp implementation uses struct flock with fcntl64.
- login: utmp alarm timer can arrive after lock acquisition.
- login: Fix updwtmp, updwtmx unlocking.
- login: Replace macro-based control flow with function calls in utmp.
- login: Assume that _HAVE_UT_* constants are true.
- Eliminate __libc_utmp_jump_table.
- misc/test-errno-linux: Handle EINVAL from quotactl.
- <string.h> does not enable const correctness for strchr et al. for Clang++.
- Disable libio vtable validation for interposed pre-2.1 stdio handles.
- strstr: Invalid result if needle crosses page on s390-z15 ifunc variant.
- glibc's __glibc_has_include causes issues with clang -frewrite-includes.
- malloc: Various cleanups for malloc/tst-mxfast.
- Add glibc.malloc.mxfast tunable.
- malloc_info() returns wrong numbers.
- [powerpc] No need to enter "Ignore Exceptions Mode".
- [powerpc] Rename fesetenv_mode to fesetenv_control.
- [powerpc] libc_feholdsetround_noex_ppc_ctx: optimize FPSCR write.
- [powerpc] Rename fegetenv_status to fegetenv_control.
- [powerpc] __fesetround_inline optimizations.
- [powerpc] libc_feupdateenv_test: optimize FPSCR access.
- [powerpc] fenv_private.h clean up.
- [powerpc] SET_RESTORE_ROUND optimizations and bug fix.
- [powerpc] fegetenv_status: simplify instruction generation.
- [powerpc] fesetenv: optimize FPSCR access.
- [powerpc] SET_RESTORE_ROUND improvements.
- [powerpc] fe{en,dis}ableexcept, fesetmode: optimize FPSCR accesses.
- [powerpc] fe{en,dis}ableexcept optimize bit translations.
- S390: Add new s390 platform z15.
- Gold missing armv8 from may_use_v5t_interworking() results in less efficient v4t stubs.
- Unintended malloc_info formatting changes.
- Make tst-strftime2 and tst-strftime3 depend on locale generation.
- Binutils provides:
- Version 2.34, see the release notes for details.
- GNU Debugger provides:
- Version 8.3.1, see the release notes for details.
- Support for RHEL 8.
- Support for SLES 15.
- Support for Ubuntu 18.04.
- Support for Debian 10.
- GCC provides:
- Version 9.2, see the release notes for details.
- GNU C Library provides:
- Version 2.30, see the release notes for details.
- Binutils provides:
- Version 2.32, see the release notes for details.
- GNU Debugger provides:
- Version 8.3, see the release notes for details.
- Userspace RCU provides:
- Version 0.11.1, see the release notes for details.
- OpenSSL provides:
- Version 1.1.1c, see the release notes for details.
- Expat provides:
- Version 2.2.7, see the release notes for details.
- Libhugetlbfs provides:
- Version 2.21, see the release notes for details.
- Python provides:
- Version 3.7.3, see the release notes for details.
- Boost provides:
- Version 1.70.0, see the release notes for details.
- Provides a new component: Power Vector Library (pveclib).
- GCC provides:
- Support for x86 SSE3 and SSSE3 intrinsics.
- Fix for testsuite test divkc3-1.c FAILs when compiling with -mabi=ieeelongdouble.
- Fix for r266868 breaks gcc.target/powerpc/undef-bool-2.c on powerpc64.
- Fix for numerous big-endian issues with compatibility implementations of vector intrinsics for powerpc.
- GNU C Library provides:
- Fix for CVE-2018-19591: if_nametoindex: Fix descriptor for overlong name.
- Fix for CVE-2016-10739: getaddrinfo: Fully parse IPv4 address strings.
- Properly cleanup if first helper thread creation failed.
- Fix misreported errno on preadv2/pwritev2.
- Do not return NULL on asprintf failure in gettext.
- Always call memcpy in _int_realloc.
- Fix pthread_rwlock_try*lock stalls.
- Avoid fork handler lock for async-signal-safe fork.
- Add compiler barriers around modifications of the robust mutex list for pthread_mutex_trylock.
- Do not send queries for non-host-names in nss_dns.
- Fix rwlock stall with PREFER_WRITER_NONRECURSIVE_NP.
- Add missing CFI register information (powerpc).
- Fix _dl_profile_fixup data-dependency issue.
- Fix use-after-free in addgetnetgrentX.
- Use correct type for si_band in siginfo_t.
- Fix race in pthread_mutex_lock while promoting to PTHREAD_MUTEX_ELISION_NP.
- Fix strstr bug with huge needles.
- Check for NULL value from gethostbyname_r.
- Fix waiters-after-spinning case .
- GNU Debugger provides:
- Version 8.2.1, see the release notes for details.
- Fix for bfd doesn't handle ELF compressed data alignment.
- GNU MPFR provides:
- Fix double-rounding bug in the internal function mpfr_set_1_2.
- Shared cache: cleanup and various improvements/corrections.
- Detect use of DBL_* macros instead of MPFR_DBL_* ones..
- Golang provides:
- Go 1.10.8.
- Fix enabling debug information.
- Use private futexes on Linux.
- Fix of OMUL should be evaluated when using soft-float.
- Prevent overflow in walkinrange.
- Move wildcard-trimming to before CheckImportPath.
- Relax pathOK check to allow any letter.
- Reject 'get' of paths containing leading dots or unsupported characters.
- Put runtime.framepointer_enabled in DATA instead of RODATA.
- Limit number of signature checks for each verification.
- Check for nil connRequest.conn before use.
- Restore r2 when restoring state from gobuf in gogo on ppc64x.
- Userspace RCU provides:
- Version 0.10.2, see the release notes for details.
- Fix: don't wait after completion of a work queue job batch.
- Fix: mixup between URCU_WORKQUEUE_RT and URCU_CALL_RCU_RT
- Valgrind provides:
- Version 3.14.0, see the release notes for details.
- Fix the generation of the manpages.
- OpenSSL provides:
- Fix for CVE-2018-0732.
- Fix for CVE-2018-0734.
- Fix for CVE-2018-0735.
- Fix for CVE-2018-5407.
- Fix for CVE-2019-1543.
- Fix for CVE-2019-1559.
- Avoid an underflow in ecp_nistp521.c.
- Fix a crash in reuse of d2i_X509_PUBKEY.
- Implement coordinate blinding for EC_POINT.
- Fix segfault in RSA_free() (and DSA/DH/EC_KEY).
Advance Toolchain new location
Since the end of August 2019, Advance Toolchain has been available from a new FTP server: public.dhe.ibm.com
Please be advised the FTP server at Unicamp won't be updated any longer.
New features in 13.0-4
Previous releases
New features in 13.0-3
New features in 13.0-2
New features in 13.0-1
New features in 13.0-0
New features in 12.0-1
Support
Customer support for the Advance Toolchain (AT) is provided in one of three ways:
- If you are using AT as directed by an IBM product team (ex.: IBM XL Compiler or PowerVM Lx86) please report suspected AT problems to IBM Support using that product name and entitlement.
- IBM's Support Line for Linux Offerings now provides support for the Advance Toolchain as well. If you have a contract with a Support Line for Linux, place a call to IBM Support, e.g. for United States:
- Dial 1-800-426-IBM-SERV
- Option #2 (Other business products or solutions)
- Option #2 (Software)
- Option #7 (Other OS/Linux)
- All other users can use an electronic forum that is monitored Monday through Friday. For questions regarding the use of or to report a suspected defect in AT, click here.
- Log in.
- Start a topic.
- Enter and save your question or problem.
- An initial response will be attempted within 2 business days.
Installation
The gpg public key(s) gpg-pubkey-6976a827-5164221b will be provided in the repository where these release notes were found. The pubkey(s) can be used to verify the authenticity of both the Advance Toolchain install packages and the repository contents. After downloading the gpg-pubkey(s) they can be imported as follows:
rpm --import gpg-pubkey-6976a827-5164221b
Using DNF
First, if you have never created an Advance Toolchain repository configuration file, you need to do so. Create the following file using the text editor of your choice as root:
/etc/yum.repos.d/at13.0.repo
and add the following content:
# Begin of configuration file [at13.0] name=Advance Toolchain IBM FTP baseurl=ftp://public.dhe.ibm.com/software/server/POWER/Linux/toolchain/at/redhat/RHEL8 failovermethod=priority enabled=1 gpgcheck=1 gpgkey=ftp://public.dhe.ibm.com/software/server/POWER/Linux/toolchain/at/redhat/RHEL8/gpg-pubkey-6976a827-5164221b # End of configuration file
To install execute dnf install as root:
dnf install advance-toolchain-at13.0-runtime / advance-toolchain-at13.0-devel / advance-toolchain-at13.0-perf
Answer y when DNF prompts for confirmation.
Manual installation for rpms
If you are installing the rpms manually you will need to install them in the following order (due to prerequisites):
advance-toolchain-at13.0-runtime-13.0-4 advance-toolchain-at13.0-devel-13.0-4 advance-toolchain-at13.0-perf-13.0-4 advance-toolchain-at13.0-mcore-libs-13.0-4 advance-toolchain-at13.0-runtime-at12.0-compat-13.0-4
If you are updating a previous installation, you need to update as a batch, so rpm can solve the dependencies, i.e.:
rpm -Uvh advance-toolchain-at13.0-runtime-13.0-4.ppc64.rpm \ advance-toolchain-at13.0-devel-13.0-4.ppc64.rpm \ advance-toolchain-at13.0-perf-13.0-4.ppc64.rpm \ advance-toolchain-at13.0-mcore-13.0-4.ppc64.rpm \ advance-toolchain-at13.0-runtime-at12.0-compat-13.0-4.ppc64.rpm
The rpm command should always be run as root. Failure to do so will result in an error similar to this:
error: can't create transaction lock on /var/lib/rpm/__db.000
Important notes
- Timezone files: If you need to use something different than Factory, then you should copy the timezone file you want from /opt/at13.0/share/zoneinfo to /opt/at13.0/etc/localtime
- advance-toolchain-at13.0-runtime-compat-13.0-4: DO NOT INSTALL it on RHEL7 and beyond. These are intended for runtime compatibility on RHEL6 only (see below).
Installation for runtime compatibility on previous distribution versions
Users running applications on previous distributions of SLES or RHEL may install the compatibility rpm advance-toolchain-at13.0-runtime-compat-13.0-4 in order to get the Advance Toolchain runtime libraries.
Installation of the cross-compiler (x86)
You can download advance-toolchain-at13.0-cross-13.0-4 and install in a x86 machine to build Power binaries on it. Binaries generated by the cross-compiler will run on a Power system with the same version of the Advance Toolchain installed.
back to topDocumentation
The official documentation for the Advance Toolchain is available at the IBM Power Linux Community website.
back to topLegal notices
Each component of Advance Toolchain has its own license, they are all covered by this list:
- LGPL 2.1: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html
- GPL 2.0: https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html
- GPL 3.0: https://www.gnu.org/licenses/gpl-3.0.en.html
- MIT
- BSD
- PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2
- Boost Software License 1.0
- Eclipse Public License (EPL) 1.0
- Zlib
- Apache License 2.0
The licenses for each GPL and LGPL code segment can be found in the advance-toolchain-at13.0-src-13.0-4.tgz file in the repository, the others are listed below.
In order to comply with the GPL and LGPL licenses, the source code for the following packages is available:
- binutils (GPL 2.0)
- gcc (GPL 3.0)
- gdb (GPL 2.0)
- glibc (LGPL 2.1)
- gmp (GPL 3.0)
- Threading Building Blocks (GPL 2.0)
- libdfp (LGPL 2.1)
- libhugetlbfs (LGPL 2.1)
- libvecpf (LGPL 2.1)
- linux kernel (GPL 2.0)
- mpc (GPL 3.0)
- mpfr (GPL 3.0)
- oprofile (GPL 2.0)
- Userspace RCU (LGPL 2.1)
- Valgrind (GPL 2.0)
Boost
Boost Software License - Version 1.0 - August 17th, 2003
Permission is hereby granted, free of charge, to any person or organization
obtaining a copy of the software and accompanying documentation covered by
this license (the "Software") to use, reproduce, display, distribute,
execute, and transmit the Software, and to prepare derivative works of the
Software, and to permit third-parties to whom the Software is furnished to
do so, all subject to the following:
The copyright notices in the Software and this entire statement, including
the above license grant, this restriction and the following disclaimer,
must be included in all copies of the Software, in whole or in part, and
all derivative works of the Software, unless such copies or derivative
works are solely in the form of machine-executable object code generated by
a source language processor.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
Expat (MIT)
Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark Cooper
Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Expat maintainers.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Golang (BSD)
Copyright (c) 2012 The Go Authors. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Gperftools (BSD)
Copyright (c) 2005, Google Inc. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
* Neither the name of Google Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Libauxv (BSD)
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
* Neither the name of the IBM Corporation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL IBM CORPORATION BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Libpfm (MIT)
Copyright (c) 2002-2006 Hewlett-Packard Development Company, L.P.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
OpenSSL (BSD)
Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved.
Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com). All rights reserved.
* Note: this distribution of OpenSSL does not include the IDEA and RC5 algorithms
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software must display the following acknowledgment: "This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to endorse or promote products derived from this software without prior written permission. For written permission, please contact openssl-core@openssl.org.
5. Products derived from this software may not be called "OpenSSL" nor may "OpenSSL" appear in their names without prior written permission of the OpenSSL Project.
6. Redistributions of any form whatsoever must retain the following acknowledgment: "This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/)"
THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
This product includes cryptographic software written by Eric Young (eay@cryptsoft.com). This product includes software written by Tim Hudson (tjh@cryptsoft.com).
PAFLib (MIT)
Copyright IBM Corp. 2013
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM
,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
Python
Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Python Software Foundation; All Rights Reserved
PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2
--------------------------------------------
1. This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"), and the Individual or Organization ("Licensee") accessing and otherwise using this software ("Python") in source or binary form and its associated documentation.
2. Subject to the terms and conditions of this License Agreement, PSF hereby grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, analyze, test, perform and/or display publicly, prepare derivative works, distribute, and otherwise use Python alone or in any derivative version, provided, however, that PSF's License Agreement and PSF's notice of copyright, i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Python Software Foundation; All Rights Reserved" are retained in Python alone or in any derivative version prepared by Licensee.
3. In the event Licensee prepares a derivative work that is based on or incorporates Python or any part thereof, and wants to make the derivative work available to others as provided herein, then Licensee hereby agrees to include in any such work a brief summary of the changes made to Python.
4. PSF is making Python available to Licensee on an "AS IS" basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT INFRINGE ANY THIRD PARTY RIGHTS.
5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
6. This License Agreement will automatically terminate upon a material breach of its terms and conditions.
7. Nothing in this License Agreement shall be deemed to create any relationship of agency, partnership, or joint venture between PSF and Licensee. This License Agreement does not grant permission to use PSF trademarks or trade name in a trademark sense to endorse or promote products or services of Licensee, or any third party.
8. By copying, installing or otherwise using Python, Licensee agrees to be bound by the terms and conditions of this License Agreement.
SPHDE (EPL)
Copyright (c) 2012 IBM Corporation
Distributed through the Eclipse Public License 1.0. The source code for this project is available on GitHub.
ZLIB Compression Library
(C) 1995-2013 Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
PVEC Library (Apache License 2.0)
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.
"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:
- You must give any other recipients of the Work or Derivative Works a copy of this License; and
- You must cause any modified files to carry prominent notices stating that You changed the files; and
- You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
- If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.
You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS