Page MenuHomePhabricator
Feed Advanced Search

Mar 2 2020

mvels closed D75457: Add flag _LIBCPP_ABI_STRING_OPTIMIZED_EXTERNAL_INSTANTIATIONS for basic_string ABI.
Mar 2 2020, 7:30 AM · Restricted Project
Herald added a reviewer for D75457: Add flag _LIBCPP_ABI_STRING_OPTIMIZED_EXTERNAL_INSTANTIATIONS for basic_string ABI: mclow.lists.

Heads up: this trivial change was per-approved per EricWf, I will be committing after double checking build and unit tests for stable and unstable

Mar 2 2020, 7:14 AM · Restricted Project
mvels created D75457: Add flag _LIBCPP_ABI_STRING_OPTIMIZED_EXTERNAL_INSTANTIATIONS for basic_string ABI.
Mar 2 2020, 7:14 AM · Restricted Project
mvels committed rGf87d30cba2b5: Partially inline basic_string::operator=(const basic_string&) (authored by mvels).
Partially inline basic_string::operator=(const basic_string&)
Mar 2 2020, 7:04 AM
mvels closed D75211: Partially inline basic_string::operator=(const basic_string&).
Mar 2 2020, 7:04 AM · Restricted Project

Feb 27 2020

mvels added inline comments to D75211: Partially inline basic_string::operator=(const basic_string&).
Feb 27 2020, 5:51 PM · Restricted Project

Feb 26 2020

mvels added a comment to D75211: Partially inline basic_string::operator=(const basic_string&).

@mvels Can you look over this diff?

There are two copies of each file in different locations.

Please update this review with a clean diff.

Feb 26 2020, 5:03 PM · Restricted Project
mvels updated the diff for D75211: Partially inline basic_string::operator=(const basic_string&).

Removed duplicated files

Feb 26 2020, 5:03 PM · Restricted Project
mvels added a comment to D72165: Optimize / partially inline basic_string assignment operator.

New review in https://reviews.llvm.org/D75211

Feb 26 2020, 1:06 PM · Restricted Project
mvels abandoned D72165: Optimize / partially inline basic_string assignment operator.
Feb 26 2020, 1:06 PM · Restricted Project
mvels updated the diff for D75211: Partially inline basic_string::operator=(const basic_string&).

Fix left behind comment

Feb 26 2020, 1:06 PM · Restricted Project
mvels abandoned D72987: Add basic_string::__assign_str_noalias_external(const value_type* s, size_type n).
Feb 26 2020, 1:06 PM · Restricted Project
mvels added reviewers for D75211: Partially inline basic_string::operator=(const basic_string&): EricWF, ldionne.
Feb 26 2020, 1:06 PM · Restricted Project
mvels created D75211: Partially inline basic_string::operator=(const basic_string&).
Feb 26 2020, 1:06 PM · Restricted Project
mvels committed rGd260ea7199bc: Inline basic_string::erase for fastpath where __n == npos (authored by mvels).
Inline basic_string::erase for fastpath where __n == npos
Feb 26 2020, 10:44 AM
mvels closed D73743: Inline basic_string::erase for fastpath where __n == npos.
Feb 26 2020, 10:44 AM · Restricted Project
mvels updated the diff for D73743: Inline basic_string::erase for fastpath where __n == npos.

Small twiddles from review

Feb 26 2020, 10:34 AM · Restricted Project
mvels committed rG07eb82fc06cc: Add _LIBCPP_BUILTIN_CONSTANT_P support. (authored by mvels).
Add _LIBCPP_BUILTIN_CONSTANT_P support.
Feb 26 2020, 8:05 AM
mvels closed D73732: Add _LIBCPP_BUILTIN_CONSTANT_P support..
Feb 26 2020, 8:05 AM · Restricted Project
mvels updated the diff for D73732: Add _LIBCPP_BUILTIN_CONSTANT_P support..

Combined ifdef block for GNUC_VER

Feb 26 2020, 7:45 AM · Restricted Project

Feb 21 2020

mvels updated the diff for D73743: Inline basic_string::erase for fastpath where __n == npos.
  • Cosmetics: un-delete empty line
Feb 21 2020, 11:58 AM · Restricted Project
mvels updated the diff for D73743: Inline basic_string::erase for fastpath where __n == npos.
  • Cleaned up return types
  • Udpated ABI list
Feb 21 2020, 11:54 AM · Restricted Project
mvels added a comment to D73743: Inline basic_string::erase for fastpath where __n == npos.

PTAL

Feb 21 2020, 11:54 AM · Restricted Project
mvels updated the diff for D73743: Inline basic_string::erase for fastpath where __n == npos.

Inline basic_string::erase for fastpath where __n == npos

Feb 21 2020, 11:45 AM · Restricted Project

Feb 20 2020

mvels retitled D73223: Partially inline basic_string copy constructor in UNSTABLE from Splits copy constructor up inlining short initialization, outlining long initialization into __init_copy_ctor_external() which is the externally instantiated slow path. to Partially inline basic_string copy constructor in UNSTABLE.
Feb 20 2020, 9:06 PM · Restricted Project
mvels closed D74870: Split _LIBCPP_STRING_EXTERN_TEMPLATE_LIST up into a V1 and UNSTABLE version..
Feb 20 2020, 8:57 PM · Restricted Project
mvels committed rGd8969a1cb963: Split _LIBCPP_STRING_EXTERN_TEMPLATE_LIST up into a V1 and UNSTABLE version. (authored by mvels).
Split _LIBCPP_STRING_EXTERN_TEMPLATE_LIST up into a V1 and UNSTABLE version.
Feb 20 2020, 8:31 PM
mvels added a comment to D74870: Split _LIBCPP_STRING_EXTERN_TEMPLATE_LIST up into a V1 and UNSTABLE version..

Thanks for the Feedback Eric, personally I think this version or your alternative are close, and both are based on the same (solid) principle of 'make the ABI explicit'

Feb 20 2020, 8:13 PM · Restricted Project

Feb 19 2020

mvels updated the diff for D73743: Inline basic_string::erase for fastpath where __n == npos.
  • Fix external template list + typo
Feb 19 2020, 2:57 PM · Restricted Project
mvels added a comment to D73743: Inline basic_string::erase for fastpath where __n == npos.

Is there a way I can easily tell phabricator that this is baselined against https://reviews.llvm.org/D74870 ?

Feb 19 2020, 2:55 PM · Restricted Project
mvels added inline comments to D73743: Inline basic_string::erase for fastpath where __n == npos.
Feb 19 2020, 2:55 PM · Restricted Project
mvels updated the diff for D73743: Inline basic_string::erase for fastpath where __n == npos.
  • Fix external template list
Feb 19 2020, 2:55 PM · Restricted Project
mvels updated the diff for D74870: Split _LIBCPP_STRING_EXTERN_TEMPLATE_LIST up into a V1 and UNSTABLE version..

Fix Phabricator (arc tool is not very bright)

Feb 19 2020, 2:48 PM · Restricted Project
mvels updated the diff for D74870: Split _LIBCPP_STRING_EXTERN_TEMPLATE_LIST up into a V1 and UNSTABLE version..

Fix external template list

Feb 19 2020, 2:48 PM · Restricted Project
mvels updated the diff for D74870: Split _LIBCPP_STRING_EXTERN_TEMPLATE_LIST up into a V1 and UNSTABLE version..

Inline basic_string::erase for fastpath where __n == npos

Feb 19 2020, 2:45 PM · Restricted Project
mvels added a comment to D73743: Inline basic_string::erase for fastpath where __n == npos.

The external template list changes (split into explicit V1 and UNSTABLE versions) are in https://reviews.llvm.org/D74870

Feb 19 2020, 2:18 PM · Restricted Project
mvels committed rGc4b8c3ddc1ab: Add benchmarks for basic_string::erase (authored by mvels).
Add benchmarks for basic_string::erase
Feb 19 2020, 2:11 PM
mvels closed D73740: Add benchmarks for basic_string::erase.
Feb 19 2020, 2:10 PM · Restricted Project
mvels created D74870: Split _LIBCPP_STRING_EXTERN_TEMPLATE_LIST up into a V1 and UNSTABLE version..
Feb 19 2020, 1:39 PM · Restricted Project

Jan 31 2020

mvels requested changes to D73807: [libc++] Optimize std::string's external instantiations in an ABI compatible way.
Jan 31 2020, 2:44 PM
mvels updated the diff for D73743: Inline basic_string::erase for fastpath where __n == npos.

Added clarifying comments

Jan 31 2020, 2:25 PM · Restricted Project
mvels updated the diff for D73743: Inline basic_string::erase for fastpath where __n == npos.

Make inlining subject to both unstable ABI and V2

Jan 31 2020, 2:07 PM · Restricted Project

Jan 30 2020

mvels committed rG282b803b6297: White space only change: reflow a comment in basic_string (authored by mvels).
White space only change: reflow a comment in basic_string
Jan 30 2020, 5:10 PM
mvels closed D73552: White space only change: reflow a comment in basic_string.
Jan 30 2020, 5:09 PM · Restricted Project
mvels added a reviewer for D73743: Inline basic_string::erase for fastpath where __n == npos: ldionne.
Jan 30 2020, 1:44 PM · Restricted Project
mvels created D73743: Inline basic_string::erase for fastpath where __n == npos.
Jan 30 2020, 1:43 PM · Restricted Project
mvels updated the summary of D73740: Add benchmarks for basic_string::erase.
Jan 30 2020, 1:05 PM · Restricted Project
mvels created D73740: Add benchmarks for basic_string::erase.
Jan 30 2020, 1:05 PM · Restricted Project
mvels created D73732: Add _LIBCPP_BUILTIN_CONSTANT_P support..
Jan 30 2020, 11:25 AM · Restricted Project
mvels updated the summary of D73732: Add _LIBCPP_BUILTIN_CONSTANT_P support..
Jan 30 2020, 11:25 AM · Restricted Project

Jan 28 2020

mvels added reviewers for D73552: White space only change: reflow a comment in basic_string: ldionne, EricWF.
Jan 28 2020, 7:10 AM · Restricted Project
mvels created D73552: White space only change: reflow a comment in basic_string.
Jan 28 2020, 7:08 AM · Restricted Project

Jan 24 2020

mvels added a comment to D68623: Optimize and fix basic_string move assignment operator.

Oh, it popped on my screen and I missed that it closed / landed, sorry about that :)

Jan 24 2020, 7:09 AM · Restricted Project

Jan 23 2020

mvels added a comment to D68623: Optimize and fix basic_string move assignment operator.

Ping?

Jan 23 2020, 2:01 PM · Restricted Project
mvels updated the diff for D73291: Inline basic_string::assign(s [, n]) for compile time known short strings.
  • Cleaned up LIBCC_ASSERT
Jan 23 2020, 2:01 PM · Restricted Project
mvels created D73291: Inline basic_string::assign(s [, n]) for compile time known short strings.
Jan 23 2020, 1:24 PM · Restricted Project

Jan 22 2020

mvels created D73223: Partially inline basic_string copy constructor in UNSTABLE.
Jan 22 2020, 1:10 PM · Restricted Project
mvels updated the summary of D73134: Add invariant on <long string cap> >= __min_cap and change brittle __was_long cases.
Jan 22 2020, 10:51 AM · Restricted Project
mvels updated the summary of D73134: Add invariant on <long string cap> >= __min_cap and change brittle __was_long cases.
Jan 22 2020, 10:51 AM · Restricted Project

Jan 21 2020

mvels created D73134: Add invariant on <long string cap> >= __min_cap and change brittle __was_long cases.
Jan 21 2020, 1:00 PM · Restricted Project
mvels added a reviewer for D73134: Add invariant on <long string cap> >= __min_cap and change brittle __was_long cases: EricWF.
Jan 21 2020, 1:00 PM · Restricted Project

Jan 18 2020

mvels abandoned D72986: Removed pathological case.
Jan 18 2020, 2:16 PM · Restricted Project
mvels updated the summary of D72987: Add basic_string::__assign_str_noalias_external(const value_type* s, size_type n).
Jan 18 2020, 2:16 PM · Restricted Project
mvels added a comment to D72987: Add basic_string::__assign_str_noalias_external(const value_type* s, size_type n).

Eric, let me know if this follows the intended explicit ABI versioned changes.

Jan 18 2020, 2:09 PM · Restricted Project
mvels created D72987: Add basic_string::__assign_str_noalias_external(const value_type* s, size_type n).
Jan 18 2020, 2:07 PM · Restricted Project
mvels created D72986: Removed pathological case.
Jan 18 2020, 2:07 PM · Restricted Project

Jan 17 2020

mvels added inline comments to D72160: Optimize / partially inline basic_string copy constructor.
Jan 17 2020, 12:28 PM · Restricted Project
mvels updated the diff for D72160: Optimize / partially inline basic_string copy constructor.

Rename __init_long

Jan 17 2020, 12:28 PM · Restricted Project
mvels updated the diff for D72160: Optimize / partially inline basic_string copy constructor.
  • Optimize / partially inline basic_string assignment operator
Jan 17 2020, 11:49 AM · Restricted Project
mvels abandoned D69061: Partially inline copy constructor basic_string(const basic_string&[, allocator]) - ALTERNATIVE to https://reviews.llvm.org/D68617.
Jan 17 2020, 10:42 AM · Restricted Project

Jan 15 2020

mvels updated the diff for D72704: Optimize basic_string::operator=(const basic_string&) for SSO assignments.

Force single branch on fast path

Jan 15 2020, 9:35 AM · Restricted Project
mvels updated the diff for D72704: Optimize basic_string::operator=(const basic_string&) for SSO assignments.

Scoped for pathological case to be handled outline

Jan 15 2020, 9:15 AM · Restricted Project

Jan 14 2020

mvels updated the diff for D72704: Optimize basic_string::operator=(const basic_string&) for SSO assignments.
  • Fix __assign() --> assign()
Jan 14 2020, 9:08 AM · Restricted Project
mvels created D72704: Optimize basic_string::operator=(const basic_string&) for SSO assignments.
Jan 14 2020, 7:43 AM · Restricted Project
mvels added reviewers for D72704: Optimize basic_string::operator=(const basic_string&) for SSO assignments: EricWF, mclow.lists.
Jan 14 2020, 7:43 AM · Restricted Project

Jan 7 2020

mvels added inline comments to D72343: Add additional benchmark functions to libcxx/benchmarks/string.bench.
Jan 7 2020, 11:21 AM · Restricted Project
mvels created D72343: Add additional benchmark functions to libcxx/benchmarks/string.bench.
Jan 7 2020, 9:18 AM · Restricted Project

Jan 6 2020

mvels abandoned D72179: Optimize basic_string::assign(s [, n]) for compile time known short strings..
Jan 6 2020, 8:44 AM · Restricted Project

Jan 3 2020

mvels created D72179: Optimize basic_string::assign(s [, n]) for compile time known short strings..
Jan 3 2020, 1:30 PM · Restricted Project
mvels added a reviewer for D72165: Optimize / partially inline basic_string assignment operator: EricWF.
Jan 3 2020, 9:10 AM · Restricted Project
mvels created D72165: Optimize / partially inline basic_string assignment operator.
Jan 3 2020, 9:10 AM · Restricted Project
mvels abandoned D72164: Optimize / partially inline basic_string assignment operator.
Jan 3 2020, 9:09 AM · Restricted Project
mvels created D72164: Optimize / partially inline basic_string assignment operator.
Jan 3 2020, 9:09 AM · Restricted Project
mvels updated the summary of D72164: Optimize / partially inline basic_string assignment operator.
Jan 3 2020, 9:09 AM · Restricted Project
mvels added reviewers for D72160: Optimize / partially inline basic_string copy constructor: EricWF, mclow.lists.
Jan 3 2020, 8:03 AM · Restricted Project
mvels created D72160: Optimize / partially inline basic_string copy constructor.
Jan 3 2020, 8:03 AM · Restricted Project

Dec 12 2019

mvels updated the diff for D70617: Add default initialization to compressed_pair..

Moved compressed_pair,pass.cpp to libcxx test dir

Dec 12 2019, 11:50 AM · Restricted Project

Dec 4 2019

mvels added a comment to D70617: Add default initialization to compressed_pair..

Friendly ping?

Dec 4 2019, 2:48 PM · Restricted Project
mvels added a comment to D70621: Add __default_init_tag to basic_string constructors.

Friendly ping

Dec 4 2019, 2:48 PM · Restricted Project

Nov 25 2019

mvels abandoned D68617: partially inline copy constructor basic_string(const basic_string&[, allocator]).
Nov 25 2019, 10:25 AM · Restricted Project
mvels added a comment to D68617: partially inline copy constructor basic_string(const basic_string&[, allocator]).

Following discussions with ericwf & ldionne, we be upstreaming these changes incrementally and address the ABI separately

Nov 25 2019, 7:15 AM · Restricted Project
mvels added a comment to D68623: Optimize and fix basic_string move assignment operator.

Eric or Marschal, can we land this change? Thanks!

Nov 25 2019, 7:10 AM · Restricted Project
mvels added a reviewer for D68623: Optimize and fix basic_string move assignment operator: EricWF.
Nov 25 2019, 7:10 AM · Restricted Project
mvels added a reviewer for D70621: Add __default_init_tag to basic_string constructors: EricWF.
Nov 25 2019, 7:06 AM · Restricted Project

Nov 22 2019

mvels created D70621: Add __default_init_tag to basic_string constructors.
Nov 22 2019, 3:01 PM · Restricted Project
mvels created D70617: Add default initialization to compressed_pair..
Nov 22 2019, 1:58 PM · Restricted Project
mvels added a reviewer for D70617: Add default initialization to compressed_pair.: EricWF.
Nov 22 2019, 1:58 PM · Restricted Project

Nov 8 2019

mvels added a comment to D68623: Optimize and fix basic_string move assignment operator.

Thanks Shoaib!

Nov 8 2019, 12:34 PM · Restricted Project
mvels added a comment to D68623: Optimize and fix basic_string move assignment operator.

Demonstrating my ignorance on the expected / normal flow of submits here: what is the ETA for this?

Nov 8 2019, 11:12 AM · Restricted Project

Oct 19 2019

mvels added inline comments to D68617: partially inline copy constructor basic_string(const basic_string&[, allocator]).
Oct 19 2019, 3:13 AM · Restricted Project