亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? machine_queue.hh

?? linux下基于c++的處理器仿真平臺。具有處理器流水線
?? HH
字號:
/* * Copyright (c) 2000, 2001, 2002, 2003, 2004, 2005 * The Regents of The University of Michigan * All Rights Reserved * * This code is part of the M5 simulator, developed by Nathan Binkert, * Erik Hallnor, Steve Raasch, and Steve Reinhardt, with contributions * from Ron Dreslinski, Dave Greene, Lisa Hsu, Kevin Lim, Ali Saidi, * and Andrew Schultz. * * Permission is granted to use, copy, create derivative works and * redistribute this software and such derivative works for any * purpose, so long as the copyright notice above, this grant of * permission, and the disclaimer below appear in all copies made; and * so long as the name of The University of Michigan is not used in * any advertising or publicity pertaining to the use or distribution * of this software without specific, written prior authorization. * * THIS SOFTWARE IS PROVIDED AS IS, WITHOUT REPRESENTATION FROM THE * UNIVERSITY OF MICHIGAN AS TO ITS FITNESS FOR ANY PURPOSE, AND * WITHOUT WARRANTY BY THE UNIVERSITY OF MICHIGAN OF ANY KIND, EITHER * EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE. THE REGENTS OF THE UNIVERSITY OF MICHIGAN SHALL NOT BE * LIABLE FOR ANY DAMAGES, INCLUDING DIRECT, SPECIAL, INDIRECT, * INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WITH RESPECT TO ANY CLAIM * ARISING OUT OF OR IN CONNECTION WITH THE USE OF THE SOFTWARE, EVEN * IF IT HAS BEEN OR IS HEREAFTER ADVISED OF THE POSSIBILITY OF SUCH * DAMAGES. */#ifndef __ENCUMBERED_CPU_FULL_MACHINE_QUEUE_HH__#define __ENCUMBERED_CPU_FULL_MACHINE_QUEUE_HH__#include <cassert>#include "base/dbl_list.hh"#include "cpu/inst_seq.hh"#include "cpu/smt.hh"class FullCPU;class MachineQueueEntry : public DblListEl{  public:    MachineQueueEntry();    // free_list uses a separate pointer from the DblListEl pointers    // so we don't have to worry about using prev & next after element    // is freed (within reason)    MachineQueueEntry *next_free;    // thread_number is kept here so MachineQueue can keep    // thread-based occupancy counts    int thread_number;    // sequence number for RS_link: increment to invalidate all    // current links to this entry.  Also used by memory system to    // detect callbacks on squashed loads.    InstTag tag;#if 0    void copy_to(MachineQueueEntry *e) {	//  Don't copy *next_free	e->thread_number = thread_number;	e->tag = tag;    }#endif    // print contents for debugging    virtual void dump() {}    virtual ~MachineQueueEntry() {}};//// MachineQueueBase enhances DblList<MachineQueueEntry> to include://// - static allocation of an array of elements (the hardware queue)// - membership checking based on bounds of said array// - maintenance of a free list of all array elements not//   on the DblList// - occupancy tracking on a per-thread basis// - management of per-entry instance tags, used to check stale//   references to squashed entries (inherited from good old//   SimpleScalar RS_LINK code)// - diagnostic dumping of queue contents using dump()//   method on MachineQueueEntry objects//class MachineQueueBase : public DblList<MachineQueueEntry>{  protected:    // pointer to containing CPU    FullCPU *cpu;    // pointer to start of array of elements (derived from    // MachineQueueEntry).  Don't subscript this, as the actual array    // is of a derived (and thus larger) type!    MachineQueueEntry *vec_start;    // pointer to end of array (for membership tests)    MachineQueueEntry *vec_end;    // list of free queue entries (through next_free pointer)    MachineQueueEntry *free_list;    unsigned number_active;    unsigned number_free;    unsigned number_thread[SMT_MAX_THREADS];    MachineQueueEntry *new_tail(int thread) {	// get new element off of free list	assert(free_list != NULL);	MachineQueueEntry *new_el = free_list;	free_list = free_list->next_free;	// link in as tail	append(new_el);	number_active++;	number_thread[thread]++;	number_free--;	// bump tag just to be sure stale links/loads are detected	new_el->tag++;	new_el->thread_number = thread;	return new_el;    }  public:    void dump();    void check();    bool is_member(MachineQueueEntry *el) {	return (el == NULL || (vec_start <= el && el < vec_end));    }    void remove(MachineQueueEntry *el) {	assert(is_member(el));	// unlink from queue	DblList<MachineQueueEntry>::remove(el);	// push onto free list	el->next_free = free_list;	free_list = el;	number_active--;	number_thread[el->thread_number]--;	number_free++;    }    unsigned num_free() { return number_free; }    unsigned num_active() { return number_active; }    unsigned num_thread(int thread) { return number_thread[thread]; }};//// actual MachineQueue that implements a queue of things of type T.// T must be derived from MachineQueueEntry.//template<class T> class MachineQueue : public MachineQueueBase {  public:    // initialization: argument specifies total # of entries    void init(FullCPU *cpu, unsigned size);    void init(FullCPU *cpu, unsigned size, unsigned init_param);    //    // these functions are inherited directly from MachineQueueBase,    // but we can safely cast the return values to T* because that's    // the only type we have in this queue    //    T *head() { return (T *)MachineQueueBase::head(); }    T *tail() { return (T *)MachineQueueBase::tail(); }    T *next(T *el) { return (T *)MachineQueueBase::next(el); }    T *prev(T *el) { return (T *)MachineQueueBase::prev(el); }    T *new_tail(int thread) { return (T *)MachineQueueBase::new_tail(thread); }    T *get(unsigned index) {	T *el;	unsigned i = 0;	for (el=head(); el != NULL; el=next(el), ++i) {	    if (i == index) {		return el;	    }	}	return 0;    }    T *operator[](unsigned index) {	T *el;	unsigned i = 0;	for (el=head(); el != NULL; el=next(el), ++i) {	    if (i == index) {		return el;	    }	}	return 0;    }};#endif // __ENCUMBERED_CPU_FULL_MACHINE_QUEUE_HH__

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩中文字幕区一区有砖一区| 日韩在线卡一卡二| 亚洲国产va精品久久久不卡综合| 精品一二三四区| 色八戒一区二区三区| 久久色中文字幕| 天天综合天天综合色| 91麻豆6部合集magnet| 久久综合精品国产一区二区三区| 亚洲午夜视频在线| 波多野结衣91| 久久九九国产精品| 奇米一区二区三区av| 欧美日本在线看| 亚洲欧美日韩国产一区二区三区 | 精品日产卡一卡二卡麻豆| 亚洲视频狠狠干| 国产精品99久久久久久宅男| 5858s免费视频成人| 亚洲综合自拍偷拍| 91丨九色porny丨蝌蚪| 中文字幕高清不卡| 国产精品88av| 久久夜色精品国产噜噜av| 麻豆精品一区二区综合av| 91精品欧美久久久久久动漫| 午夜久久久影院| 宅男噜噜噜66一区二区66| 亚洲成a人v欧美综合天堂| 欧美一a一片一级一片| 亚洲女同一区二区| 一本一道久久a久久精品| 亚洲天堂av一区| 91美女片黄在线| 亚洲欧美另类久久久精品2019| 99视频超级精品| 国产精品高潮呻吟久久| 99久久99精品久久久久久 | 宅男在线国产精品| 免费观看在线综合色| 欧美一卡2卡3卡4卡| 蜜桃免费网站一区二区三区| 日韩欧美另类在线| 国产精品自拍在线| 亚洲国产高清不卡| 色婷婷亚洲婷婷| 日韩电影在线免费观看| 日韩免费高清视频| 国产一区二区看久久| 中文字幕av不卡| 91豆麻精品91久久久久久| 午夜精品免费在线| 精品国产污污免费网站入口| 国产精品1区二区.| 亚洲色图欧美激情| 欧美高清视频一二三区 | 色94色欧美sute亚洲13| 午夜欧美2019年伦理| 26uuu国产电影一区二区| 国产成人免费av在线| 亚洲欧美一区二区三区极速播放 | 成人国产亚洲欧美成人综合网| 亚洲精品成人天堂一二三| 6080午夜不卡| 丁香一区二区三区| 亚洲第一久久影院| 国产欧美精品一区二区三区四区 | 日韩一区二区三区三四区视频在线观看| 久久国产精品无码网站| 国产精品欧美极品| 91精品福利在线一区二区三区| 国产精品一区免费视频| 亚洲成人在线网站| 国产精品蜜臀在线观看| 91麻豆精品国产无毒不卡在线观看 | 欧美日韩国产首页在线观看| 国产精品一二三在| 一区二区三区在线影院| 欧美精品一区二区三区久久久| 91麻豆视频网站| 国产精品一区三区| 日韩高清不卡在线| 亚洲情趣在线观看| 久久久久久久久久久电影| 欧美日韩美少妇| 成人av电影在线观看| 日本三级韩国三级欧美三级| 亚洲人吸女人奶水| 国产女人aaa级久久久级| 欧美一级黄色录像| 精品视频在线免费看| 成人av片在线观看| 国产麻豆精品视频| 美女爽到高潮91| 偷拍日韩校园综合在线| 亚洲欧美日韩国产中文在线| 日本一区二区免费在线| 日韩欧美一级片| 欧美高清视频一二三区 | 不卡视频在线观看| 国产精品一区二区三区四区 | 91 com成人网| 欧美视频在线观看一区| 色综合视频在线观看| 成人免费福利片| 国产91丝袜在线18| 国产一区二区美女诱惑| 国产乱码一区二区三区| 国产一区二区在线免费观看| 毛片不卡一区二区| 毛片av一区二区| 久久国产精品免费| 久久精品免费看| 极品少妇xxxx偷拍精品少妇| 美女网站色91| 韩国三级电影一区二区| 韩国成人精品a∨在线观看| 韩国女主播成人在线观看| 久久99久久精品| 国产一区二区剧情av在线| 捆绑紧缚一区二区三区视频| 日本女优在线视频一区二区| 免费成人小视频| 国产一区二区三区视频在线播放| 国产福利一区在线| 成人性生交大片免费看中文 | 国内精品伊人久久久久av一坑| 狠狠色2019综合网| 成人综合婷婷国产精品久久| 99久久精品情趣| 欧洲另类一二三四区| 欧美日韩和欧美的一区二区| 555www色欧美视频| 精品福利在线导航| 国产精品日韩成人| 一区二区三区在线不卡| 日日摸夜夜添夜夜添亚洲女人| 久久不见久久见免费视频1| 国产成人一区在线| 91美女在线看| 欧美v国产在线一区二区三区| 国产日韩在线不卡| 亚洲午夜精品网| 另类调教123区| 不卡电影一区二区三区| 欧美高清视频不卡网| 欧美精品一区二区三区蜜桃| 亚洲欧美日韩国产综合在线| 日韩av二区在线播放| 国产91精品在线观看| 欧美中文字幕亚洲一区二区va在线 | 色94色欧美sute亚洲线路一久| 91精品国产色综合久久不卡蜜臀| 久久久久久久综合日本| 一区二区三区免费观看| 蜜桃久久久久久| 色激情天天射综合网| 日韩精品一区二区三区蜜臀| 自拍偷拍国产精品| 麻豆精品在线播放| 91国产免费看| 久久精品免视看| 视频在线在亚洲| 一本一本大道香蕉久在线精品| 精品乱人伦小说| 亚洲宅男天堂在线观看无病毒| 国产麻豆精品在线观看| 制服丝袜激情欧洲亚洲| 亚洲免费在线视频一区 二区| 久久精品国产一区二区| 日本高清不卡aⅴ免费网站| 欧美精品一区二区不卡| 午夜久久久久久| 97se亚洲国产综合在线| 久久久亚洲精华液精华液精华液| 亚洲福利视频三区| 色婷婷综合久久久中文一区二区| 久久精品一区二区三区不卡牛牛 | 国产精品一二三| 精品久久久网站| 五月激情综合网| 一本大道av一区二区在线播放| wwww国产精品欧美| 日韩成人免费看| 欧美日韩一区二区在线观看视频| 国产精品久久久久aaaa| 国产裸体歌舞团一区二区| 日韩欧美国产综合| 日日夜夜精品视频免费| 在线观看av一区| 亚洲最新视频在线观看| 91网站黄www| 自拍偷拍亚洲激情| 99热精品一区二区| 亚洲丝袜制服诱惑| www.日本不卡| 18欧美亚洲精品| 91视频www| 一区二区三区日韩欧美精品| 91丨porny丨首页|