thread_context.hh (10698:829adc48e175) thread_context.hh (10905:a6ca6831e775)
1/*
2 * Copyright (c) 2011-2012 ARM Limited
3 * Copyright (c) 2013 Advanced Micro Devices, Inc.
4 * All rights reserved
5 *
6 * The license below extends only to copyright in the software and shall
7 * not be construed as granting a license to any other intellectual
8 * property including but not limited to intellectual property relating

--- 485 unchanged lines hidden (view full) ---

494 * Thread context serialization helpers
495 *
496 * These helper functions provide a way to the data in a
497 * ThreadContext. They are provided as separate helper function since
498 * implementing them as members of the ThreadContext interface would
499 * be confusing when the ThreadContext is exported via a proxy.
500 */
501
1/*
2 * Copyright (c) 2011-2012 ARM Limited
3 * Copyright (c) 2013 Advanced Micro Devices, Inc.
4 * All rights reserved
5 *
6 * The license below extends only to copyright in the software and shall
7 * not be construed as granting a license to any other intellectual
8 * property including but not limited to intellectual property relating

--- 485 unchanged lines hidden (view full) ---

494 * Thread context serialization helpers
495 *
496 * These helper functions provide a way to the data in a
497 * ThreadContext. They are provided as separate helper function since
498 * implementing them as members of the ThreadContext interface would
499 * be confusing when the ThreadContext is exported via a proxy.
500 */
501
502void serialize(ThreadContext &tc, std::ostream &os);
503void unserialize(ThreadContext &tc, Checkpoint *cp, const std::string &section);
502void serialize(ThreadContext &tc, CheckpointOut &cp);
503void unserialize(ThreadContext &tc, CheckpointIn &cp);
504
505/** @} */
506
507
508/**
509 * Copy state between thread contexts in preparation for CPU handover.
510 *
511 * @note This method modifies the old thread contexts as well as the
512 * new thread context. The old thread context will have its quiesce
513 * event descheduled if it is scheduled and its status set to halted.
514 *
515 * @param new_tc Destination ThreadContext.
516 * @param old_tc Source ThreadContext.
517 */
518void takeOverFrom(ThreadContext &new_tc, ThreadContext &old_tc);
519
520#endif
504
505/** @} */
506
507
508/**
509 * Copy state between thread contexts in preparation for CPU handover.
510 *
511 * @note This method modifies the old thread contexts as well as the
512 * new thread context. The old thread context will have its quiesce
513 * event descheduled if it is scheduled and its status set to halted.
514 *
515 * @param new_tc Destination ThreadContext.
516 * @param old_tc Source ThreadContext.
517 */
518void takeOverFrom(ThreadContext &new_tc, ThreadContext &old_tc);
519
520#endif