c2bd38e892
* builtins.c (expand_builtin_memset, expand_builtin_memcpy, expand_builtin_strcpy): Additional arguments TARGET and MODE. (expand_builtin_bzero, expand_builtin_strcpy, expand_builtin_strncpy, expand_builtin_bzero): Pass additional TARGET and MODE parameters to the above functions. (expand_builtin_memset, expand_builtin_memcpy): Optimize the case where the LEN parameter is constant zero. (expand_builtin_memcmp): No longer conditional on HAVE_cmpstrsi. Take an additional mode parameter. Optimize the cases where len is either constant zero or one. Optimize to call to memcpy, even if the memcpy isn't inlined. (expand_builtin_strncpy): Optimize to call memcpy, even if the memcpy isn't inlined. (expand_builtin_strcmp, expand_builtin_strncmp): Always attempt to optimize to a call to memcmp. (expand_builtin): expand_builtin_memcmp can always be called, and pass the required parameters to expand_builtin_memcmp, expand_builtin_memset, expand_builtin_memcpy and expand_builtin_strcpy. * gcc.c-torture/execute/string-opt-14.c: New test case. * gcc.c-torture/execute/string-opt-15.c: New test case. From-SVN: r47960 |
||
---|---|---|
.. | ||
compat | ||
compile | ||
execute | ||
unsorted | ||
ChangeLog.0 |