process.cc (13570:b6484720c6a9) process.cc (13617:34a793c681ce)
1/*
2 * Copyright (c) 2003-2005 The Regents of The University of Michigan
3 * Copyright (c) 2007-2008 The Florida State University
4 * Copyright (c) 2009 The University of Edinburgh
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions are

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

432}
433
434void
435PowerLinuxProcess::initState()
436{
437 PowerProcess::initState();
438}
439
1/*
2 * Copyright (c) 2003-2005 The Regents of The University of Michigan
3 * Copyright (c) 2007-2008 The Florida State University
4 * Copyright (c) 2009 The University of Edinburgh
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions are

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

432}
433
434void
435PowerLinuxProcess::initState()
436{
437 PowerProcess::initState();
438}
439
440PowerISA::IntReg
440RegVal
441PowerLinuxProcess::getSyscallArg(ThreadContext *tc, int &i)
442{
443 // Linux apparently allows more parameter than the ABI says it should.
444 // This limit may need to be increased even further.
445 assert(i < 6);
446 return tc->readIntReg(ArgumentReg0 + i++);
447}
448
449void
441PowerLinuxProcess::getSyscallArg(ThreadContext *tc, int &i)
442{
443 // Linux apparently allows more parameter than the ABI says it should.
444 // This limit may need to be increased even further.
445 assert(i < 6);
446 return tc->readIntReg(ArgumentReg0 + i++);
447}
448
449void
450PowerLinuxProcess::setSyscallArg(ThreadContext *tc, int i, PowerISA::IntReg val)
450PowerLinuxProcess::setSyscallArg(ThreadContext *tc, int i, RegVal val)
451{
452 // Linux apparently allows more parameter than the ABI says it should.
453 // This limit may need to be increased even further.
454 assert(i < 6);
455 tc->setIntReg(ArgumentReg0 + i, val);
456}
451{
452 // Linux apparently allows more parameter than the ABI says it should.
453 // This limit may need to be increased even further.
454 assert(i < 6);
455 tc->setIntReg(ArgumentReg0 + i, val);
456}