linux.hh (13536:77e19417e723) linux.hh (13537:2441d9a15e3c)
1/*
2 * Copyright (c) 2010, 2011-2012, 2015 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

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

53 public:
54 static void
55 archClone(uint64_t flags,
56 Process *pp, Process *cp,
57 ThreadContext *ptc, ThreadContext *ctc,
58 uint64_t stack, uint64_t tls)
59 {
60 ArmISA::copyRegs(ptc, ctc);
1/*
2 * Copyright (c) 2010, 2011-2012, 2015 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

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

53 public:
54 static void
55 archClone(uint64_t flags,
56 Process *pp, Process *cp,
57 ThreadContext *ptc, ThreadContext *ctc,
58 uint64_t stack, uint64_t tls)
59 {
60 ArmISA::copyRegs(ptc, ctc);
61
62 if (stack)
63 ctc->setIntReg(TheISA::StackPointerReg, stack);
64 }
65};
66
67class ArmLinux32 : public ArmLinux
68{
69 public:
70
71 static const int TGT_SIGHUP = 0x000001;

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

266
267 /// For times().
268 struct tms {
269 int32_t tms_utime; //!< user time
270 int32_t tms_stime; //!< system time
271 int32_t tms_cutime; //!< user time of children
272 int32_t tms_cstime; //!< system time of children
273 };
61 }
62};
63
64class ArmLinux32 : public ArmLinux
65{
66 public:
67
68 static const int TGT_SIGHUP = 0x000001;

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

263
264 /// For times().
265 struct tms {
266 int32_t tms_utime; //!< user time
267 int32_t tms_stime; //!< system time
268 int32_t tms_cutime; //!< user time of children
269 int32_t tms_cstime; //!< system time of children
270 };
271
272 static void
273 archClone(uint64_t flags,
274 Process *pp, Process *cp,
275 ThreadContext *ptc, ThreadContext *ctc,
276 uint64_t stack, uint64_t tls)
277 {
278 ArmLinux::archClone(flags, pp, cp, ptc, ctc, stack, tls);
279
280 if (stack)
281 ctc->setIntReg(ArmISA::INTREG_SP, stack);
282 }
274};
275
276class ArmLinux64 : public ArmLinux
277{
278 public:
279
280 static const int TGT_SIGHUP = 0x000001;
281 static const int TGT_SIGINT = 0x000002;

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

511
512 /// For times().
513 struct tms {
514 int64_t tms_utime; //!< user time
515 int64_t tms_stime; //!< system time
516 int64_t tms_cutime; //!< user time of children
517 int64_t tms_cstime; //!< system time of children
518 };
283};
284
285class ArmLinux64 : public ArmLinux
286{
287 public:
288
289 static const int TGT_SIGHUP = 0x000001;
290 static const int TGT_SIGINT = 0x000002;

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

520
521 /// For times().
522 struct tms {
523 int64_t tms_utime; //!< user time
524 int64_t tms_stime; //!< system time
525 int64_t tms_cutime; //!< user time of children
526 int64_t tms_cstime; //!< system time of children
527 };
528
529 static void archClone(uint64_t flags,
530 Process *pp, Process *cp,
531 ThreadContext *ptc, ThreadContext *ctc,
532 uint64_t stack, uint64_t tls)
533 {
534 ArmLinux::archClone(flags, pp, cp, ptc, ctc, stack, tls);
535
536 if (stack)
537 ctc->setIntReg(ArmISA::INTREG_SP0, stack);
538 }
519};
520
521#endif
539};
540
541#endif