aboutsummaryrefslogtreecommitdiff
path: root/COPYRIGHT
Commit message (Collapse)AuthorAgeFilesLines
* add optimized aarch64 memcpy and memsetRich Felker2020-06-261-0/+3
| | | | | | | | | | | | these are based on the ARM optimized-routines repository v20.05 (ef907c7a799a), with macro dependencies flattened out and memmove code removed from memcpy. this change is somewhat unfortunate since having the branch for memmove support in the large n case of memcpy is the performance-optimal and size-optimal way to do both, but it makes memcpy alone (static-linked) about 40% larger and suggests a policy that use of memcpy as memmove is supported. tabs used for alignment have also been replaced with spaces.
* add big-endian support to ARM assembler memcpyAndre McCurdy2020-06-251-1/+1
| | | | | Allow the existing ARM assembler memcpy implementation to be used for both big and little endian targets.
* update COPYRIGHT yearRich Felker2020-01-011-1/+1
|
* update contributor nameAda Worcester2019-12-071-1/+1
| | | | | This changes my name in the COPYRIGHT file, and adds a .mailmap entry for my new name.
* add Arm to the copyright fileSzabolcs Nagy2019-10-061-1/+2
| | | | | | Several math functions are now from the ARM optimized-routines repo licensed under standard MIT terms and copyrighted by Arm Limited, so mention this in the COPYRIGHT too.
* update year in COPYRIGHT fileRich Felker2019-07-151-1/+1
|
* update authors/contributors listRich Felker2019-07-151-0/+15
| | | | | | | | | these additions were made by scanning git log since the last major update in commit 1366b3c5e6d89d5ba90dd41fe5bf0246c5299b84. as before my aim was adding everyone with either substantial code contributions or a pattern of ongoing simple patch submission; any omissions are unintentional.
* new tsearch implementationSzabolcs Nagy2018-09-201-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rewrote the AVL tree implementation: - It is now non-recursive with fixed stack usage (large enough for worst case tree height). twalk and tdestroy are still recursive as that's smaller/simpler. - Moved unrelated interfaces into separate translation units. - The node structure is changed to use indexed children instead of left/right pointers, this simplifies the balancing logic. - Using void * pointers instead of struct node * in various places, because this better fits the api (node address is passed in a void** argument, so it is tempting to incorrectly cast it to struct node **). - As a further performance improvement the rebalancing now stops when it is not needed (subtree height is unchanged). Otherwise the behaviour should be the same as before (checked over generated random inputs that the resulting tree shape is equivalent). - Removed the old copyright notice (including prng related one: it should be licensed under the same terms as the rest of the project). .text size of pic tsearch + tfind + tdelete + twalk: x86_64 i386 aarch64 arm mips powerpc ppc64le sh4 m68k s390x old 941 899 1220 1068 1852 1400 1600 1008 1008 1488 new 857 881 1040 976 1564 1192 1360 736 820 1408
* update authors/contributors listRich Felker2018-02-211-0/+17
| | | | | | | | | | | | | | these additions were made by scanning git log since the last major update in commit 790580b2fc47bc20e613336cb937a120422a770c. in addition to git-level commit authorship, "patch by" text in the commit message was also scanned. this idiom was used in the past for patches that underwent substantial edits when merging or where the author did not provide a commit message. going forward, my intent is to use commit authorship consistently for attribution. as before my aim was adding everyone with either substantial code contributions or a pattern of ongoing simple patch submission; any omissions are unintentional.
* update COPYRIGHT file to clarify that permissions apply for all filesRich Felker2016-04-281-14/+23
| | | | | | | | | | | | | | | | | | | | | | these changes are the outcome of a long mailing list thread that took place March 2016, "musl licensing". among minor other issues, prospective users were not confident that the whole-project MIT license would grant permission for files to which the COPYRIGHT file expressed a belief that copyright not apply, if it turned out that these files were actually subject to copyright. in accordance with the original intent of applying a permissive license to the project, which was that license issues not be an obstacle to use, the text which was causing confusion is removed. no new claims of copyright are made, but new text is added to clarify that the grant of permissions applies to all files, and an explicit grant of permission to use public headers and crt files without attribution has been made. this patch was reviewed and approved by all substantial contributors to the affected files: Bobby Bingham, John Spencer (rofl0r), Nicholas J. Kain, Rich Felker, Richard Pennington, Stefan Kristiansson, and Szabolcs Nagy.
* fix outdated pathnames in COPYRIGHT fileRich Felker2016-03-181-3/+3
|
* update documentation files for mips64 portRich Felker2016-03-061-0/+5
|
* update authors/contributors listRich Felker2016-02-181-0/+9
| | | | | | | these additions were made based on scanning commit authors since the last update, at the time of the 1.1.7 release, and adding everyone with either substantial code contributions or a pattern of ongoing simple patch submission.
* update authors/contributors listRich Felker2015-03-161-0/+8
| | | | | these additions were made based on scanning commit authors since the last update, at the time of the 1.1.4 release.
* update COPYRIGHT file to reflect new contributorsRich Felker2014-07-311-1/+5
|
* update COPYRIGHT file with additional contributor informationRich Felker2014-03-201-22/+54
|
* update copyright dates to 2014Rich Felker2014-03-061-2/+2
|
* add arm-optimized memcpy implementation from bionic libcRich Felker2013-08-141-0/+4
| | | | | | | | | | | | | | | | | | | | the approach of this implementation was heavily investigated prior to adopting it. attempts to obtain similar performance with pure C code were capping out at about 75% of the performance of the asm, with considerably larger code size, and were fragile in that the compiler would sometimes compile part of memcpy into a call to itself. therefore, just using the asm seems to be the best option. this commit is the first to make use of the new subarch-specific asm framework. the new armel directory is the location for arm asm that should not be used for all arm subarchs, only the default one. armhf is the name of the little-endian hardfloat-ABI subarch, which can use the exact same asm. in both cases, the build system finds the asm by following a memcpy.sub file. the other two subarchs, armeb and armebhf, would need a big-endian variant of this code. it would not be hard to adapt the code to big endian, but I will hold off on doing so until there is demand for it.
* mention bits headers in another part of copyright fileRich Felker2013-04-201-1/+1
|
* update copyright yearRich Felker2013-04-201-2/+2
|
* clarify that bits headers are included as public headersRich Felker2013-04-201-6/+6
|
* update copyright file for recent contributionsRich Felker2012-11-141-5/+9
|
* update copyright/credits for recent code additionsRich Felker2012-08-151-2/+12
|
* relicense musl under MIT licenseRich Felker2012-05-051-11/+33
|
* update license of njk contributed code (x86_64 asm)Rich Felker2012-05-051-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | these changes are based on the following communication via email: "I hereby grant that all of the code I have contributed to musl on or before April 23, 2012 may be licensed under the terms of the following MIT license: Copyright (c) 2011-2012 Nicholas J. Kain 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."
* update COPYRIGHT status of TRE regex codeRich Felker2012-03-241-4/+4
|
* Merge remote branch 'nsz/master'Rich Felker2012-03-161-5/+9
|\
| * fix copyright notice for the math libnsz2012-03-131-5/+9
| |
* | revert COPYRIGHT file changes in preparation to merge nsz's math branchRich Felker2012-03-161-4/+5
| |
* | update copyright status (math library and new year)Rich Felker2012-03-161-6/+5
|/
* XSI search.h API implementation by Szabolcs NagyRich Felker2011-06-251-3/+5
|
* initial commit of prng implementation by Szabolcs NagyRich Felker2011-06-231-0/+4
|
* replace heap sort with smoothsort implementation by Valentin OchsRich Felker2011-04-271-0/+4
| | | | | | | | | | | | | | Smoothsort is an adaptive variant of heapsort. This version was written by Valentin Ochs (apo) specifically for inclusion in musl. I worked with him to get it working in O(1) memory usage even with giant array element widths, and to optimize it heavily for size and speed. It's still roughly 4 times as large as the old heap sort implementation, but roughly 20 times faster given an almost-sorted array of 1M elements (20 being the base-2 log of 1M), i.e. it really does reduce O(n log n) to O(n) in the mostly-sorted case. It's still somewhat slower than glibc's Introsort for random input, but now considerably faster than glibc when the input is already sorted, or mostly sorted.
* some docs fixes for x86_64Rich Felker2011-02-151-0/+3
|
* explicitly release crt/* to the public domainRich Felker2011-02-131-0/+6
|
* initial check-in, version 0.5.0v0.5.0Rich Felker2011-02-121-0/+31