-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Start separating out the RTS and Haskell imports of MachRegs.h
No functional differences yet
- Loading branch information
Ian Lynagh
committed
Aug 6, 2012
1 parent
6997bb5
commit 8e7fb28
Showing
13 changed files
with
128 additions
and
51 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Original file line | Diff line number | Diff line change |
---|---|---|---|
@@ -0,0 +1,47 @@ | |||
/* ----------------------------------------------------------------------------- | |||
* | |||
* (c) The GHC Team, 1998-2011 | |||
* | |||
* Registers used in STG code. Might or might not correspond to | |||
* actual machine registers. | |||
* | |||
* Do not #include this file directly: #include "Rts.h" instead. | |||
* | |||
* To understand the structure of the RTS headers, see the wiki: | |||
* http://hackage.haskell.org/trac/ghc/wiki/Commentary/SourceTree/Includes | |||
* | |||
* ---------------------------------------------------------------------------*/ | |||
|
|||
#ifndef HASKELLMACHREGS_H | |||
#define HASKELLMACHREGS_H | |||
|
|||
/* | |||
* Defining NO_REGS causes no global registers to be used. NO_REGS is | |||
* typically defined by GHC, via a command-line option passed to gcc, | |||
* when the -funregisterised flag is given. | |||
* | |||
* NB. When NO_REGS is on, calling & return conventions may be | |||
* different. For example, all function arguments will be passed on | |||
* the stack, and components of an unboxed tuple will be returned on | |||
* the stack rather than in registers. | |||
*/ | |||
#ifdef NO_REGS | |||
|
|||
#define MACHREGS_NO_REGS 1 | |||
|
|||
#else | |||
|
|||
#define MACHREGS_NO_REGS 0 | |||
|
|||
#define MACHREGS_i386 i386_TARGET_ARCH | |||
#define MACHREGS_x86_64 x86_64_TARGET_ARCH | |||
#define MACHREGS_powerpc (powerpc_TARGET_ARCH || powerpc64_TARGET_ARCH || rs6000_TARGET_ARCH) | |||
#define MACHREGS_sparc sparc_TARGET_ARCH | |||
#define MACHREGS_arm arm_TARGET_ARCH | |||
#define MACHREGS_darwin darwin_TARGET_OS | |||
|
|||
#endif | |||
|
|||
#include "stg/MachRegs.h" | |||
|
|||
#endif /* HASKELLMACHREGS_H */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Original file line | Diff line number | Diff line change |
---|---|---|---|
@@ -0,0 +1,47 @@ | |||
/* ----------------------------------------------------------------------------- | |||
* | |||
* (c) The GHC Team, 1998-2011 | |||
* | |||
* Registers used in STG code. Might or might not correspond to | |||
* actual machine registers. | |||
* | |||
* Do not #include this file directly: #include "Rts.h" instead. | |||
* | |||
* To understand the structure of the RTS headers, see the wiki: | |||
* http://hackage.haskell.org/trac/ghc/wiki/Commentary/SourceTree/Includes | |||
* | |||
* ---------------------------------------------------------------------------*/ | |||
|
|||
#ifndef RTSMACHREGS_H | |||
#define RTSMACHREGS_H | |||
|
|||
/* | |||
* Defining NO_REGS causes no global registers to be used. NO_REGS is | |||
* typically defined by GHC, via a command-line option passed to gcc, | |||
* when the -funregisterised flag is given. | |||
* | |||
* NB. When NO_REGS is on, calling & return conventions may be | |||
* different. For example, all function arguments will be passed on | |||
* the stack, and components of an unboxed tuple will be returned on | |||
* the stack rather than in registers. | |||
*/ | |||
#ifdef NO_REGS | |||
|
|||
#define MACHREGS_NO_REGS 1 | |||
|
|||
#else | |||
|
|||
#define MACHREGS_NO_REGS 0 | |||
|
|||
#define MACHREGS_i386 i386_HOST_ARCH | |||
#define MACHREGS_x86_64 x86_64_HOST_ARCH | |||
#define MACHREGS_powerpc (powerpc_HOST_ARCH || powerpc64_HOST_ARCH || rs6000_HOST_ARCH) | |||
#define MACHREGS_sparc sparc_HOST_ARCH | |||
#define MACHREGS_arm arm_HOST_ARCH | |||
#define MACHREGS_darwin darwin_HOST_OS | |||
|
|||
#endif | |||
|
|||
#include "stg/MachRegs.h" | |||
|
|||
#endif /* RTSMACHREGS_H */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters