Bug 43554 - profile-mode version of forward_list missing
Summary: profile-mode version of forward_list missing
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: libstdc++ (show other bugs)
Version: 4.5.0
: P3 enhancement
Target Milestone: ---
Assignee: Paolo Carlini
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-03-28 10:36 UTC by Paolo Carlini
Modified: 2012-09-24 10:29 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed: 2010-05-03 23:06:50


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Paolo Carlini 2010-03-28 10:36:17 UTC
I'm looking for help for the profile-mode version (I'm going to take care of the debug-mode one)
Comment 1 rus 2010-03-28 22:58:29 UTC
Subject: Re:  profile-mode version of forward_list 
	missing

On Sun, Mar 28, 2010 at 3:36 AM, paolo dot carlini at oracle dot com
<gcc-bugzilla@gcc.gnu.org> wrote:
>
>
> --
>
> paolo dot carlini at oracle dot com changed:
>
>           What    |Removed                     |Added
> ----------------------------------------------------------------------------
>             Status|UNCONFIRMED                 |NEW
>     Ever Confirmed|0                           |1
>   Last reconfirmed|0000-00-00 00:00:00         |2010-03-28 10:36:29
>               date|                            |
>
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43554
>
> ------- You are receiving this mail because: -------
> You are on the CC list for the bug, or are watching someone who is.


Hello Paolo,

Could you please assign it to me.  (Also feel free to assign any other
unclaimed profile mode bugs to me, current or future.)

Thank you,
Silvius
Comment 2 rus 2010-05-03 22:46:30 UTC
It's not clear from the description what the problem is here.  The profile mode doesn't instrument either forward_list or slist at this point, so all inclusions of <forward_list> should fall back to normal mode.

Could you please clarify the problem?
Comment 3 Paolo Carlini 2010-05-03 23:06:40 UTC
Silvius, this is not a bug proper, instead an *enhancement* request: it seems quite obvious to me, if only for consistency, that we want to provide debug-mode and profile-mode versions of forward_list too, like all the other containers, no?!?
Comment 4 rus 2010-05-03 23:12:58 UTC
Oh, OK.  I misunderstood.  Then let's keep it open to track the addition of new modules including forward_list.
Comment 5 Paolo Carlini 2010-05-03 23:16:44 UTC
Yes ;) I'm going to work asap on debug-mode, certainly we want it too for 4.6.0, but it's a bit tricky because of the special way many operations are specified in terms of the *preceding* element: debug-mode is missing a bit of infrastructure for that.
Comment 6 Paolo Carlini 2010-09-29 12:01:16 UTC
The debug-mode bits are now in. It would be nice to have the profile-mode bits too for 4.6.0...
Comment 7 rus 2010-10-03 07:06:26 UTC
Hello Paolo,

Thank you for the notification.  It's *much* easier to use debug mode as a
template than to start from scratch.

What is the time frame for 4.6.0?

For reference, what needs to be done at this point is a couple of new
diagnostics
1. "forward_list to vector": if the only operations are "insert_after last
element" and iteration, and if the size is always about the same.
2. "forward_list to deque": this needs a cost model.

Paolo, would it make sense to open tickets for other diagnostics as well,
even if it would take me a while to close them?  Maybe some student out
there will pick them if they're well defined.

Thank you,
Silvius


On Wed, Sep 29, 2010 at 5:01 AM, paolo.carlini at oracle dot com <
gcc-bugzilla@gcc.gnu.org> wrote:

> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43554
>
> --- Comment #6 from Paolo Carlini <paolo.carlini at oracle dot com>
> 2010-09-29 12:01:16 UTC ---
> The debug-mode bits are now in. It would be nice to have the profile-mode
> bits
> too for 4.6.0...
>
> --
> Configure bugmail: http://gcc.gnu.org/bugzilla/userprefs.cgi?tab=email
> ------- You are receiving this mail because: -------
> You are the assignee for the bug.
>
Comment 8 rus 2010-10-03 07:40:42 UTC
Hello Paolo,

Thank you for the notification.  It's *much* easier to use debug mode as a
template than to start from scratch.

What is the time frame for 4.6.0?

For reference, what needs to be done at this point is a couple of new
diagnostics
1. "forward_list to vector": if the only operations are "insert_after last
element" and iteration, and if the size is always about the same.
2. "forward_list to deque": this needs a cost model.

Paolo, would it make sense to open tickets for other diagnostics as well,
even if it would take me a while to close them?  Maybe some student out
there will pick them if they're well defined.

Thank you,
Silvius


On Wed, Sep 29, 2010 at 5:01 AM, paolo.carlini at oracle dot com <
gcc-bugzilla@gcc.gnu.org> wrote:

> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43554
>
> --- Comment #6 from Paolo Carlini <paolo.carlini at oracle dot com>
> 2010-09-29 12:01:16 UTC ---
> The debug-mode bits are now in. It would be nice to have the profile-mode
> bits
> too for 4.6.0...
>
> --
> Configure bugmail: http://gcc.gnu.org/bugzilla/userprefs.cgi?tab=email
> ------- You are receiving this mail because: -------
> You are the assignee for the bug.
>
Comment 9 Paolo Carlini 2010-10-03 09:22:41 UTC
(In reply to comment #8)
> What is the time frame for 4.6.0?

We are still in Stage 1, but I don't have many details at the moment, I would suggest simply following the various announcements on the gcc mailing list.

> For reference, what needs to be done at this point is a couple of new
> diagnostics
> 1. "forward_list to vector": if the only operations are "insert_after last
> element" and iteration, and if the size is always about the same.
> 2. "forward_list to deque": this needs a cost model.

Ok...

> Paolo, would it make sense to open tickets for other diagnostics as well,
> even if it would take me a while to close them?  Maybe some student out
> there will pick them if they're well defined.

If you ask me, normally we don't open many PRs for pure enhancement issues, the situation can quickly grow without control. After all, Bugzilla is for *bugs*. Thus I would recommend summarizing those issues to a minimal number of PRs, better if each has a student already "assigned", somehow.
Comment 10 Paolo Carlini 2010-10-11 23:15:01 UTC
Silvius --

due to the recent changes to the normal-mode forward_list to enable the debug-mode version (essentially the use of a nested namespace), now simply including <forward_list> as part of a profile-mode build breaks everything. Just run make check-profile to see what I mean. I can add a dummy profile-mode forward_list, not profiling anything, just let me know if you actually mean to implement something beyond that. Thanks.
Comment 11 Paolo Carlini 2010-10-17 10:23:21 UTC
I'm not able to get in contact with Silvius. Thus I'm adding a dummy profile-mode forward_list myself, and hoping for substantive work from the contributors of profile-mode in the future (by the way, the situation with <bitset> seems quite similar).
Comment 12 paolo@gcc.gnu.org 2010-10-17 14:49:16 UTC
Author: paolo
Date: Sun Oct 17 14:49:11 2010
New Revision: 165587

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=165587
Log:
2010-10-17  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/43554
	* include/profile/forward_list: New file.
	* include/std/forward_list: Include <profile/forward_list>.
	* include/Makefile.am: Add.
	* testsuite/23_containers/forward_list/capacity/1.cc: Adjust.
	* include/Makefile.in: Regenerate.


Added:
    trunk/libstdc++-v3/include/profile/forward_list
Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/include/Makefile.am
    trunk/libstdc++-v3/include/Makefile.in
    trunk/libstdc++-v3/include/std/forward_list
    trunk/libstdc++-v3/testsuite/23_containers/forward_list/capacity/1.cc
Comment 13 Paolo Carlini 2012-09-24 10:29:44 UTC
I'm closing this.