cpu.hh (12749:223c83ed9979) | cpu.hh (13429:a1e199fd8122) |
---|---|
1/* 2 * Copyright (c) 2011-2013, 2016 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 --- 523 unchanged lines hidden (view full) --- 532 * thread. The source of the squash is an external update of 533 * state through the TC. 534 */ 535 void squashFromTC(ThreadID tid); 536 537 /** Function to add instruction onto the head of the list of the 538 * instructions. Used when new instructions are fetched. 539 */ | 1/* 2 * Copyright (c) 2011-2013, 2016 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 --- 523 unchanged lines hidden (view full) --- 532 * thread. The source of the squash is an external update of 533 * state through the TC. 534 */ 535 void squashFromTC(ThreadID tid); 536 537 /** Function to add instruction onto the head of the list of the 538 * instructions. Used when new instructions are fetched. 539 */ |
540 ListIt addInst(DynInstPtr &inst); | 540 ListIt addInst(const DynInstPtr &inst); |
541 542 /** Function to tell the CPU that an instruction has completed. */ | 541 542 /** Function to tell the CPU that an instruction has completed. */ |
543 void instDone(ThreadID tid, DynInstPtr &inst); | 543 void instDone(ThreadID tid, const DynInstPtr &inst); |
544 545 /** Remove an instruction from the front end of the list. There's 546 * no restriction on location of the instruction. 547 */ | 544 545 /** Remove an instruction from the front end of the list. There's 546 * no restriction on location of the instruction. 547 */ |
548 void removeFrontInst(DynInstPtr &inst); | 548 void removeFrontInst(const DynInstPtr &inst); |
549 550 /** Remove all instructions that are not currently in the ROB. 551 * There's also an option to not squash delay slot instructions.*/ 552 void removeInstsNotInROB(ThreadID tid); 553 554 /** Remove all instructions younger than the given sequence number. */ 555 void removeInstsUntil(const InstSeqNum &seq_num, ThreadID tid); 556 --- 250 unchanged lines hidden --- | 549 550 /** Remove all instructions that are not currently in the ROB. 551 * There's also an option to not squash delay slot instructions.*/ 552 void removeInstsNotInROB(ThreadID tid); 553 554 /** Remove all instructions younger than the given sequence number. */ 555 void removeInstsUntil(const InstSeqNum &seq_num, ThreadID tid); 556 --- 250 unchanged lines hidden --- |