system.hh (4762:c94e103c83ad) system.hh (5569:baeee670d4ce)
1/*
2 * Copyright (c) 2004-2006 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

49/**
50 * This class contains linux specific system code (Loading, Events).
51 * It points to objects that are the system binaries to load and patches them
52 * appropriately to work in simulator.
53 */
54class LinuxAlphaSystem : public AlphaSystem
55{
56 private:
1/*
2 * Copyright (c) 2004-2006 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

49/**
50 * This class contains linux specific system code (Loading, Events).
51 * It points to objects that are the system binaries to load and patches them
52 * appropriately to work in simulator.
53 */
54class LinuxAlphaSystem : public AlphaSystem
55{
56 private:
57 class SkipDelayLoopEvent : public SkipFuncEvent
57 struct SkipDelayLoopEvent : public SkipFuncEvent
58 {
58 {
59 public:
60 SkipDelayLoopEvent(PCEventQueue *q, const std::string &desc, Addr addr)
61 : SkipFuncEvent(q, desc, addr) {}
62 virtual void process(ThreadContext *tc);
63 };
64
59 SkipDelayLoopEvent(PCEventQueue *q, const std::string &desc, Addr addr)
60 : SkipFuncEvent(q, desc, addr) {}
61 virtual void process(ThreadContext *tc);
62 };
63
65 class PrintThreadInfo : public PCEvent
64 struct PrintThreadInfo : public PCEvent
66 {
65 {
67 public:
68 PrintThreadInfo(PCEventQueue *q, const std::string &desc, Addr addr)
69 : PCEvent(q, desc, addr) {}
70 virtual void process(ThreadContext *tc);
71 };
72
66 PrintThreadInfo(PCEventQueue *q, const std::string &desc, Addr addr)
67 : PCEvent(q, desc, addr) {}
68 virtual void process(ThreadContext *tc);
69 };
70
73
74 /**
75 * Addresses defining where the kernel bootloader places various
76 * elements. Details found in include/asm-alpha/system.h
77 */
78 Addr KernelStart; // Lookup the symbol swapper_pg_dir
79
80 public:
81 Addr InitStack() const { return KernelStart + 0x02000; }

--- 59 unchanged lines hidden ---
71 /**
72 * Addresses defining where the kernel bootloader places various
73 * elements. Details found in include/asm-alpha/system.h
74 */
75 Addr KernelStart; // Lookup the symbol swapper_pg_dir
76
77 public:
78 Addr InitStack() const { return KernelStart + 0x02000; }

--- 59 unchanged lines hidden ---