summaryrefslogtreecommitdiffstats
path: root/private/mvdm/softpc.new/host/inc/ppc/prod/sas4gen.h
diff options
context:
space:
mode:
Diffstat (limited to 'private/mvdm/softpc.new/host/inc/ppc/prod/sas4gen.h')
-rw-r--r--private/mvdm/softpc.new/host/inc/ppc/prod/sas4gen.h838
1 files changed, 838 insertions, 0 deletions
diff --git a/private/mvdm/softpc.new/host/inc/ppc/prod/sas4gen.h b/private/mvdm/softpc.new/host/inc/ppc/prod/sas4gen.h
new file mode 100644
index 000000000..4f3803b41
--- /dev/null
+++ b/private/mvdm/softpc.new/host/inc/ppc/prod/sas4gen.h
@@ -0,0 +1,838 @@
+/*[
+ * Generated File: sas4gen.h
+ *
+]*/
+
+#ifndef _SAS4GEN_H_
+#define _SAS4GEN_H_
+typedef IU32 TYPE_sas_memory_size IPT0();
+typedef void TYPE_sas_connect_memory IPT3(IU32, lo_addr, IU32, Int_addr, SAS_MEM_TYPE, type);
+typedef void TYPE_sas_enable_20_bit_wrapping IPT0();
+typedef void TYPE_sas_disable_20_bit_wrapping IPT0();
+typedef IBOOL TYPE_sas_twenty_bit_wrapping_enabled IPT0();
+typedef SAS_MEM_TYPE TYPE_sas_memory_type IPT1(IU32, addr);
+typedef IU8 TYPE_sas_hw_at IPT1(IU32, addr);
+typedef IU16 TYPE_sas_w_at IPT1(IU32, addr);
+typedef IU32 TYPE_sas_dw_at IPT1(IU32, addr);
+typedef IU8 TYPE_sas_hw_at_no_check IPT1(IU32, addr);
+typedef IU16 TYPE_sas_w_at_no_check IPT1(IU32, addr);
+typedef IU32 TYPE_sas_dw_at_no_check IPT1(IU32, addr);
+typedef void TYPE_sas_store IPT2(IU32, addr, IU8, val);
+typedef void TYPE_sas_storew IPT2(IU32, addr, IU16, val);
+typedef void TYPE_sas_storedw IPT2(IU32, addr, IU32, val);
+typedef void TYPE_sas_store_no_check IPT2(IU32, addr, IU8, val);
+typedef void TYPE_sas_storew_no_check IPT2(IU32, addr, IU16, val);
+typedef void TYPE_sas_storedw_no_check IPT2(IU32, addr, IU32, val);
+typedef void TYPE_sas_loads IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+typedef void TYPE_sas_stores IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+typedef void TYPE_sas_loads_no_check IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+typedef void TYPE_sas_stores_no_check IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+typedef void TYPE_sas_move_bytes_forward IPT3(IU32, src, IU32, dest, IU32, len);
+typedef void TYPE_sas_move_words_forward IPT3(IU32, src, IU32, dest, IU32, len);
+typedef void TYPE_sas_move_doubles_forward IPT3(IU32, src, IU32, dest, IU32, len);
+typedef void TYPE_sas_fills IPT3(IU32, dest, IU8, val, IU32, len);
+typedef void TYPE_sas_fillsw IPT3(IU32, dest, IU16, val, IU32, len);
+typedef void TYPE_sas_fillsdw IPT3(IU32, dest, IU32, val, IU32, len);
+typedef IU8 * TYPE_sas_scratch_address IPT1(IU32, length);
+typedef IU8 * TYPE_sas_transbuf_address IPT2(IU32, dest_addr, IU32, length);
+typedef void TYPE_sas_loads_to_transbuf IPT3(IU32, src_addr, IU8 *, dest_addr, IU32, length);
+typedef void TYPE_sas_stores_from_transbuf IPT3(IU32, dest_addr, IU8 *, src_addr, IU32, length);
+typedef IU8 TYPE_sas_PR8 IPT1(IU32, addr);
+typedef IU16 TYPE_sas_PR16 IPT1(IU32, addr);
+typedef IU32 TYPE_sas_PR32 IPT1(IU32, addr);
+typedef void TYPE_sas_PW8 IPT2(IU32, addr, IU8, val);
+typedef void TYPE_sas_PW16 IPT2(IU32, addr, IU16, val);
+typedef void TYPE_sas_PW32 IPT2(IU32, addr, IU32, val);
+typedef void TYPE_sas_PW8_no_check IPT2(IU32, addr, IU8, val);
+typedef void TYPE_sas_PW16_no_check IPT2(IU32, addr, IU16, val);
+typedef void TYPE_sas_PW32_no_check IPT2(IU32, addr, IU32, val);
+typedef IU8 * TYPE_getPtrToPhysAddrByte IPT1(IU32, phys_addr);
+typedef IU8 * TYPE_get_byte_addr IPT1(IU32, phys_addr);
+typedef IU8 * TYPE_getPtrToLinAddrByte IPT1(IU32, lin_addr);
+typedef IBOOL TYPE_sas_init_pm_selectors IPT2(IU16, sel1, IU16, sel2);
+typedef void TYPE_sas_overwrite_memory IPT2(IU32, addr, IU32, length);
+typedef void TYPE_sas_PWS IPT3(IU32, dest, IU8 *, src, IU32, len);
+typedef void TYPE_sas_PWS_no_check IPT3(IU32, dest, IU8 *, src, IU32, len);
+typedef void TYPE_sas_PRS IPT3(IU32, src, IU8 *, dest, IU32, len);
+typedef void TYPE_sas_PRS_no_check IPT3(IU32, src, IU8 *, dest, IU32, len);
+typedef IBOOL TYPE_sas_PigCmpPage IPT3(IU32, src, IU8 *, dest, IU32, len);
+typedef IU8 * TYPE_sas_touch IPT2(IU32, addr, IU32, length);
+typedef IBOOL TYPE_IOVirtualised IPT4(IU16, port, IU32 *, value, IU32, offset, IU8, width);
+typedef IU32 TYPE_VirtualiseInstruction IPT4(IU32, eipInRom, IUH, size, IU32, linearAddrOrPort, IU32, dataIn);
+typedef IBOOL TYPE_IsPageInstanceData IPT1(IU32, physAddr);
+
+struct SasVector {
+ IU32 (*Sas_memory_size) IPT0();
+ void (*Sas_connect_memory) IPT3(IU32, lo_addr, IU32, Int_addr, SAS_MEM_TYPE, type);
+ void (*Sas_enable_20_bit_wrapping) IPT0();
+ void (*Sas_disable_20_bit_wrapping) IPT0();
+ IBOOL (*Sas_twenty_bit_wrapping_enabled) IPT0();
+ SAS_MEM_TYPE (*Sas_memory_type) IPT1(IU32, addr);
+ IU8 (*Sas_hw_at) IPT1(IU32, addr);
+ IU16 (*Sas_w_at) IPT1(IU32, addr);
+ IU32 (*Sas_dw_at) IPT1(IU32, addr);
+ IU8 (*Sas_hw_at_no_check) IPT1(IU32, addr);
+ IU16 (*Sas_w_at_no_check) IPT1(IU32, addr);
+ IU32 (*Sas_dw_at_no_check) IPT1(IU32, addr);
+ void (*Sas_store) IPT2(IU32, addr, IU8, val);
+ void (*Sas_storew) IPT2(IU32, addr, IU16, val);
+ void (*Sas_storedw) IPT2(IU32, addr, IU32, val);
+ void (*Sas_store_no_check) IPT2(IU32, addr, IU8, val);
+ void (*Sas_storew_no_check) IPT2(IU32, addr, IU16, val);
+ void (*Sas_storedw_no_check) IPT2(IU32, addr, IU32, val);
+ void (*Sas_loads) IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+ void (*Sas_stores) IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+ void (*Sas_loads_no_check) IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+ void (*Sas_stores_no_check) IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+ void (*Sas_move_bytes_forward) IPT3(IU32, src, IU32, dest, IU32, len);
+ void (*Sas_move_words_forward) IPT3(IU32, src, IU32, dest, IU32, len);
+ void (*Sas_move_doubles_forward) IPT3(IU32, src, IU32, dest, IU32, len);
+ void (*Sas_fills) IPT3(IU32, dest, IU8, val, IU32, len);
+ void (*Sas_fillsw) IPT3(IU32, dest, IU16, val, IU32, len);
+ void (*Sas_fillsdw) IPT3(IU32, dest, IU32, val, IU32, len);
+ IU8 * (*Sas_scratch_address) IPT1(IU32, length);
+ IU8 * (*Sas_transbuf_address) IPT2(IU32, dest_addr, IU32, length);
+ void (*Sas_loads_to_transbuf) IPT3(IU32, src_addr, IU8 *, dest_addr, IU32, length);
+ void (*Sas_stores_from_transbuf) IPT3(IU32, dest_addr, IU8 *, src_addr, IU32, length);
+ IU8 (*Sas_PR8) IPT1(IU32, addr);
+ IU16 (*Sas_PR16) IPT1(IU32, addr);
+ IU32 (*Sas_PR32) IPT1(IU32, addr);
+ void (*Sas_PW8) IPT2(IU32, addr, IU8, val);
+ void (*Sas_PW16) IPT2(IU32, addr, IU16, val);
+ void (*Sas_PW32) IPT2(IU32, addr, IU32, val);
+ void (*Sas_PW8_no_check) IPT2(IU32, addr, IU8, val);
+ void (*Sas_PW16_no_check) IPT2(IU32, addr, IU16, val);
+ void (*Sas_PW32_no_check) IPT2(IU32, addr, IU32, val);
+ IU8 * (*SasPtrToPhysAddrByte) IPT1(IU32, phys_addr);
+ IU8 * (*Sas_get_byte_addr) IPT1(IU32, phys_addr);
+ IU8 * (*SasPtrToLinAddrByte) IPT1(IU32, lin_addr);
+ IBOOL (*SasRegisterVirtualSelectors) IPT2(IU16, sel1, IU16, sel2);
+ void (*Sas_overwrite_memory) IPT2(IU32, addr, IU32, length);
+ void (*Sas_PWS) IPT3(IU32, dest, IU8 *, src, IU32, len);
+ void (*Sas_PWS_no_check) IPT3(IU32, dest, IU8 *, src, IU32, len);
+ void (*Sas_PRS) IPT3(IU32, src, IU8 *, dest, IU32, len);
+ void (*Sas_PRS_no_check) IPT3(IU32, src, IU8 *, dest, IU32, len);
+ IBOOL (*Sas_PigCmpPage) IPT3(IU32, src, IU8 *, dest, IU32, len);
+ IU8 * (*Sas_touch) IPT2(IU32, addr, IU32, length);
+ IBOOL (*IOVirtualised) IPT4(IU16, port, IU32 *, value, IU32, offset, IU8, width);
+ IU32 (*SasVirtualiseInstruction) IPT4(IU32, eipInRom, IUH, size, IU32, linearAddrOrPort, IU32, dataIn);
+ IBOOL (*IsPageInstanceData) IPT1(IU32, physAddr);
+};
+
+extern struct SasVector Sas;
+
+#ifdef CCPU
+IMPORT IU32 c_sas_memory_size IPT0();
+#define sas_memory_size() c_sas_memory_size()
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_memory_size() (*(Sas.Sas_memory_size))()
+#else /* PROD */
+IMPORT IU32 sas_memory_size IPT0();
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_connect_memory IPT3(IU32, lo_addr, IU32, Int_addr, SAS_MEM_TYPE, type);
+#define sas_connect_memory(lo_addr, Int_addr, type) c_sas_connect_memory(lo_addr, Int_addr, type)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_connect_memory(lo_addr, Int_addr, type) (*(Sas.Sas_connect_memory))(lo_addr, Int_addr, type)
+#else /* PROD */
+IMPORT void sas_connect_memory IPT3(IU32, lo_addr, IU32, Int_addr, SAS_MEM_TYPE, type);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_enable_20_bit_wrapping IPT0();
+#define sas_enable_20_bit_wrapping() c_sas_enable_20_bit_wrapping()
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_enable_20_bit_wrapping() (*(Sas.Sas_enable_20_bit_wrapping))()
+#else /* PROD */
+IMPORT void sas_enable_20_bit_wrapping IPT0();
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_disable_20_bit_wrapping IPT0();
+#define sas_disable_20_bit_wrapping() c_sas_disable_20_bit_wrapping()
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_disable_20_bit_wrapping() (*(Sas.Sas_disable_20_bit_wrapping))()
+#else /* PROD */
+IMPORT void sas_disable_20_bit_wrapping IPT0();
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IBOOL c_sas_twenty_bit_wrapping_enabled IPT0();
+#define sas_twenty_bit_wrapping_enabled() c_sas_twenty_bit_wrapping_enabled()
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_twenty_bit_wrapping_enabled() (*(Sas.Sas_twenty_bit_wrapping_enabled))()
+#else /* PROD */
+IMPORT IBOOL sas_twenty_bit_wrapping_enabled IPT0();
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT SAS_MEM_TYPE c_sas_memory_type IPT1(IU32, addr);
+#define sas_memory_type(addr) c_sas_memory_type(addr)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_memory_type(addr) (*(Sas.Sas_memory_type))(addr)
+#else /* PROD */
+IMPORT SAS_MEM_TYPE sas_memory_type IPT1(IU32, addr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU8 c_sas_hw_at IPT1(IU32, addr);
+#define sas_hw_at(addr) c_sas_hw_at(addr)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_hw_at(addr) (*(Sas.Sas_hw_at))(addr)
+#else /* PROD */
+IMPORT IU8 sas_hw_at IPT1(IU32, addr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU16 c_sas_w_at IPT1(IU32, addr);
+#define sas_w_at(addr) c_sas_w_at(addr)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_w_at(addr) (*(Sas.Sas_w_at))(addr)
+#else /* PROD */
+IMPORT IU16 sas_w_at IPT1(IU32, addr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU32 c_sas_dw_at IPT1(IU32, addr);
+#define sas_dw_at(addr) c_sas_dw_at(addr)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_dw_at(addr) (*(Sas.Sas_dw_at))(addr)
+#else /* PROD */
+IMPORT IU32 sas_dw_at IPT1(IU32, addr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU8 c_sas_hw_at IPT1(IU32, addr);
+#define sas_hw_at_no_check(addr) c_sas_hw_at(addr)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_hw_at_no_check(addr) (*(Sas.Sas_hw_at_no_check))(addr)
+#else /* PROD */
+IMPORT IU8 sas_hw_at_no_check IPT1(IU32, addr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU16 c_sas_w_at IPT1(IU32, addr);
+#define sas_w_at_no_check(addr) c_sas_w_at(addr)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_w_at_no_check(addr) (*(Sas.Sas_w_at_no_check))(addr)
+#else /* PROD */
+IMPORT IU16 sas_w_at_no_check IPT1(IU32, addr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU32 c_sas_dw_at IPT1(IU32, addr);
+#define sas_dw_at_no_check(addr) c_sas_dw_at(addr)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_dw_at_no_check(addr) (*(Sas.Sas_dw_at_no_check))(addr)
+#else /* PROD */
+IMPORT IU32 sas_dw_at_no_check IPT1(IU32, addr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_store IPT2(IU32, addr, IU8, val);
+#define sas_store(addr, val) c_sas_store(addr, val)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_store(addr, val) (*(Sas.Sas_store))(addr, val)
+#else /* PROD */
+IMPORT void sas_store IPT2(IU32, addr, IU8, val);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_storew IPT2(IU32, addr, IU16, val);
+#define sas_storew(addr, val) c_sas_storew(addr, val)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_storew(addr, val) (*(Sas.Sas_storew))(addr, val)
+#else /* PROD */
+IMPORT void sas_storew IPT2(IU32, addr, IU16, val);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_storedw IPT2(IU32, addr, IU32, val);
+#define sas_storedw(addr, val) c_sas_storedw(addr, val)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_storedw(addr, val) (*(Sas.Sas_storedw))(addr, val)
+#else /* PROD */
+IMPORT void sas_storedw IPT2(IU32, addr, IU32, val);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_store IPT2(IU32, addr, IU8, val);
+#define sas_store_no_check(addr, val) c_sas_store(addr, val)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_store_no_check(addr, val) (*(Sas.Sas_store_no_check))(addr, val)
+#else /* PROD */
+IMPORT void sas_store_no_check IPT2(IU32, addr, IU8, val);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_storew IPT2(IU32, addr, IU16, val);
+#define sas_storew_no_check(addr, val) c_sas_storew(addr, val)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_storew_no_check(addr, val) (*(Sas.Sas_storew_no_check))(addr, val)
+#else /* PROD */
+IMPORT void sas_storew_no_check IPT2(IU32, addr, IU16, val);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_storedw IPT2(IU32, addr, IU32, val);
+#define sas_storedw_no_check(addr, val) c_sas_storedw(addr, val)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_storedw_no_check(addr, val) (*(Sas.Sas_storedw_no_check))(addr, val)
+#else /* PROD */
+IMPORT void sas_storedw_no_check IPT2(IU32, addr, IU32, val);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_loads IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+#define sas_loads(addr, stringptr, len) c_sas_loads(addr, stringptr, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_loads(addr, stringptr, len) (*(Sas.Sas_loads))(addr, stringptr, len)
+#else /* PROD */
+IMPORT void sas_loads IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_stores IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+#define sas_stores(addr, stringptr, len) c_sas_stores(addr, stringptr, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_stores(addr, stringptr, len) (*(Sas.Sas_stores))(addr, stringptr, len)
+#else /* PROD */
+IMPORT void sas_stores IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_loads_no_check IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+#define sas_loads_no_check(addr, stringptr, len) c_sas_loads_no_check(addr, stringptr, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_loads_no_check(addr, stringptr, len) (*(Sas.Sas_loads_no_check))(addr, stringptr, len)
+#else /* PROD */
+IMPORT void sas_loads_no_check IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_stores_no_check IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+#define sas_stores_no_check(addr, stringptr, len) c_sas_stores_no_check(addr, stringptr, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_stores_no_check(addr, stringptr, len) (*(Sas.Sas_stores_no_check))(addr, stringptr, len)
+#else /* PROD */
+IMPORT void sas_stores_no_check IPT3(IU32, addr, IU8 *, stringptr, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_move_bytes_forward IPT3(IU32, src, IU32, dest, IU32, len);
+#define sas_move_bytes_forward(src, dest, len) c_sas_move_bytes_forward(src, dest, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_move_bytes_forward(src, dest, len) (*(Sas.Sas_move_bytes_forward))(src, dest, len)
+#else /* PROD */
+IMPORT void sas_move_bytes_forward IPT3(IU32, src, IU32, dest, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_move_words_forward IPT3(IU32, src, IU32, dest, IU32, len);
+#define sas_move_words_forward(src, dest, len) c_sas_move_words_forward(src, dest, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_move_words_forward(src, dest, len) (*(Sas.Sas_move_words_forward))(src, dest, len)
+#else /* PROD */
+IMPORT void sas_move_words_forward IPT3(IU32, src, IU32, dest, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_move_doubles_forward IPT3(IU32, src, IU32, dest, IU32, len);
+#define sas_move_doubles_forward(src, dest, len) c_sas_move_doubles_forward(src, dest, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_move_doubles_forward(src, dest, len) (*(Sas.Sas_move_doubles_forward))(src, dest, len)
+#else /* PROD */
+IMPORT void sas_move_doubles_forward IPT3(IU32, src, IU32, dest, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_fills IPT3(IU32, dest, IU8, val, IU32, len);
+#define sas_fills(dest, val, len) c_sas_fills(dest, val, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_fills(dest, val, len) (*(Sas.Sas_fills))(dest, val, len)
+#else /* PROD */
+IMPORT void sas_fills IPT3(IU32, dest, IU8, val, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_fillsw IPT3(IU32, dest, IU16, val, IU32, len);
+#define sas_fillsw(dest, val, len) c_sas_fillsw(dest, val, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_fillsw(dest, val, len) (*(Sas.Sas_fillsw))(dest, val, len)
+#else /* PROD */
+IMPORT void sas_fillsw IPT3(IU32, dest, IU16, val, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_fillsdw IPT3(IU32, dest, IU32, val, IU32, len);
+#define sas_fillsdw(dest, val, len) c_sas_fillsdw(dest, val, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_fillsdw(dest, val, len) (*(Sas.Sas_fillsdw))(dest, val, len)
+#else /* PROD */
+IMPORT void sas_fillsdw IPT3(IU32, dest, IU32, val, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU8 * c_sas_scratch_address IPT1(IU32, length);
+#define sas_scratch_address(length) c_sas_scratch_address(length)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_scratch_address(length) (*(Sas.Sas_scratch_address))(length)
+#else /* PROD */
+IMPORT IU8 * sas_scratch_address IPT1(IU32, length);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU8 * c_sas_transbuf_address IPT2(IU32, dest_addr, IU32, length);
+#define sas_transbuf_address(dest_addr, length) c_sas_transbuf_address(dest_addr, length)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_transbuf_address(dest_addr, length) (*(Sas.Sas_transbuf_address))(dest_addr, length)
+#else /* PROD */
+IMPORT IU8 * sas_transbuf_address IPT2(IU32, dest_addr, IU32, length);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_loads IPT3(IU32, src_addr, IU8 *, dest_addr, IU32, length);
+#define sas_loads_to_transbuf(src_addr, dest_addr, length) c_sas_loads(src_addr, dest_addr, length)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_loads_to_transbuf(src_addr, dest_addr, length) (*(Sas.Sas_loads_to_transbuf))(src_addr, dest_addr, length)
+#else /* PROD */
+IMPORT void sas_loads_to_transbuf IPT3(IU32, src_addr, IU8 *, dest_addr, IU32, length);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_stores IPT3(IU32, dest_addr, IU8 *, src_addr, IU32, length);
+#define sas_stores_from_transbuf(dest_addr, src_addr, length) c_sas_stores(dest_addr, src_addr, length)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_stores_from_transbuf(dest_addr, src_addr, length) (*(Sas.Sas_stores_from_transbuf))(dest_addr, src_addr, length)
+#else /* PROD */
+IMPORT void sas_stores_from_transbuf IPT3(IU32, dest_addr, IU8 *, src_addr, IU32, length);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU8 phy_r8 IPT1(IU32, addr);
+#define sas_PR8(addr) phy_r8(addr)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PR8(addr) (*(Sas.Sas_PR8))(addr)
+#else /* PROD */
+IMPORT IU8 sas_PR8 IPT1(IU32, addr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU16 phy_r16 IPT1(IU32, addr);
+#define sas_PR16(addr) phy_r16(addr)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PR16(addr) (*(Sas.Sas_PR16))(addr)
+#else /* PROD */
+IMPORT IU16 sas_PR16 IPT1(IU32, addr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU32 phy_r32 IPT1(IU32, addr);
+#define sas_PR32(addr) phy_r32(addr)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PR32(addr) (*(Sas.Sas_PR32))(addr)
+#else /* PROD */
+IMPORT IU32 sas_PR32 IPT1(IU32, addr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void phy_w8 IPT2(IU32, addr, IU8, val);
+#define sas_PW8(addr, val) phy_w8(addr, val)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PW8(addr, val) (*(Sas.Sas_PW8))(addr, val)
+#else /* PROD */
+IMPORT void sas_PW8 IPT2(IU32, addr, IU8, val);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void phy_w16 IPT2(IU32, addr, IU16, val);
+#define sas_PW16(addr, val) phy_w16(addr, val)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PW16(addr, val) (*(Sas.Sas_PW16))(addr, val)
+#else /* PROD */
+IMPORT void sas_PW16 IPT2(IU32, addr, IU16, val);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void phy_w32 IPT2(IU32, addr, IU32, val);
+#define sas_PW32(addr, val) phy_w32(addr, val)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PW32(addr, val) (*(Sas.Sas_PW32))(addr, val)
+#else /* PROD */
+IMPORT void sas_PW32 IPT2(IU32, addr, IU32, val);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void phy_w8_no_check IPT2(IU32, addr, IU8, val);
+#define sas_PW8_no_check(addr, val) phy_w8_no_check(addr, val)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PW8_no_check(addr, val) (*(Sas.Sas_PW8_no_check))(addr, val)
+#else /* PROD */
+IMPORT void sas_PW8_no_check IPT2(IU32, addr, IU8, val);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void phy_w16_no_check IPT2(IU32, addr, IU16, val);
+#define sas_PW16_no_check(addr, val) phy_w16_no_check(addr, val)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PW16_no_check(addr, val) (*(Sas.Sas_PW16_no_check))(addr, val)
+#else /* PROD */
+IMPORT void sas_PW16_no_check IPT2(IU32, addr, IU16, val);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void phy_w32_no_check IPT2(IU32, addr, IU32, val);
+#define sas_PW32_no_check(addr, val) phy_w32_no_check(addr, val)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PW32_no_check(addr, val) (*(Sas.Sas_PW32_no_check))(addr, val)
+#else /* PROD */
+IMPORT void sas_PW32_no_check IPT2(IU32, addr, IU32, val);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU8 * c_GetPhyAdd IPT1(IU32, phys_addr);
+#define getPtrToPhysAddrByte(phys_addr) c_GetPhyAdd(phys_addr)
+#else /* CCPU */
+
+#ifdef PROD
+#define getPtrToPhysAddrByte(phys_addr) (*(Sas.SasPtrToPhysAddrByte))(phys_addr)
+#else /* PROD */
+IMPORT IU8 * getPtrToPhysAddrByte IPT1(IU32, phys_addr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU8 * c_get_byte_addr IPT1(IU32, phys_addr);
+#define get_byte_addr(phys_addr) c_get_byte_addr(phys_addr)
+#else /* CCPU */
+
+#ifdef PROD
+#define get_byte_addr(phys_addr) (*(Sas.Sas_get_byte_addr))(phys_addr)
+#else /* PROD */
+IMPORT IU8 * get_byte_addr IPT1(IU32, phys_addr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU8 * c_GetLinAdd IPT1(IU32, lin_addr);
+#define getPtrToLinAddrByte(lin_addr) c_GetLinAdd(lin_addr)
+#else /* CCPU */
+
+#ifdef PROD
+#define getPtrToLinAddrByte(lin_addr) (*(Sas.SasPtrToLinAddrByte))(lin_addr)
+#else /* PROD */
+IMPORT IU8 * getPtrToLinAddrByte IPT1(IU32, lin_addr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IBOOL c_SasRegisterVirtualSelectors IPT2(IU16, sel1, IU16, sel2);
+#define sas_init_pm_selectors(sel1, sel2) c_SasRegisterVirtualSelectors(sel1, sel2)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_init_pm_selectors(sel1, sel2) (*(Sas.SasRegisterVirtualSelectors))(sel1, sel2)
+#else /* PROD */
+IMPORT IBOOL sas_init_pm_selectors IPT2(IU16, sel1, IU16, sel2);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_overwrite_memory(addr, length) (*(Sas.Sas_overwrite_memory))(addr, length)
+#else /* PROD */
+IMPORT void sas_overwrite_memory IPT2(IU32, addr, IU32, length);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_PWS IPT3(IU32, dest, IU8 *, src, IU32, len);
+#define sas_PWS(dest, src, len) c_sas_PWS(dest, src, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PWS(dest, src, len) (*(Sas.Sas_PWS))(dest, src, len)
+#else /* PROD */
+IMPORT void sas_PWS IPT3(IU32, dest, IU8 *, src, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_PWS_no_check IPT3(IU32, dest, IU8 *, src, IU32, len);
+#define sas_PWS_no_check(dest, src, len) c_sas_PWS_no_check(dest, src, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PWS_no_check(dest, src, len) (*(Sas.Sas_PWS_no_check))(dest, src, len)
+#else /* PROD */
+IMPORT void sas_PWS_no_check IPT3(IU32, dest, IU8 *, src, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_PRS IPT3(IU32, src, IU8 *, dest, IU32, len);
+#define sas_PRS(src, dest, len) c_sas_PRS(src, dest, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PRS(src, dest, len) (*(Sas.Sas_PRS))(src, dest, len)
+#else /* PROD */
+IMPORT void sas_PRS IPT3(IU32, src, IU8 *, dest, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT void c_sas_PRS_no_check IPT3(IU32, src, IU8 *, dest, IU32, len);
+#define sas_PRS_no_check(src, dest, len) c_sas_PRS_no_check(src, dest, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PRS_no_check(src, dest, len) (*(Sas.Sas_PRS_no_check))(src, dest, len)
+#else /* PROD */
+IMPORT void sas_PRS_no_check IPT3(IU32, src, IU8 *, dest, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IBOOL c_sas_PigCmpPage IPT3(IU32, src, IU8 *, dest, IU32, len);
+#define sas_PigCmpPage(src, dest, len) c_sas_PigCmpPage(src, dest, len)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_PigCmpPage(src, dest, len) (*(Sas.Sas_PigCmpPage))(src, dest, len)
+#else /* PROD */
+IMPORT IBOOL sas_PigCmpPage IPT3(IU32, src, IU8 *, dest, IU32, len);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU8 * c_sas_touch IPT2(IU32, addr, IU32, length);
+#define sas_touch(addr, length) c_sas_touch(addr, length)
+#else /* CCPU */
+
+#ifdef PROD
+#define sas_touch(addr, length) (*(Sas.Sas_touch))(addr, length)
+#else /* PROD */
+IMPORT IU8 * sas_touch IPT2(IU32, addr, IU32, length);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IBOOL c_IOVirtualised IPT4(IU16, port, IU32 *, value, IU32, offset, IU8, width);
+#define IOVirtualised(port, value, offset, width) c_IOVirtualised(port, value, offset, width)
+#else /* CCPU */
+
+#ifdef PROD
+#define IOVirtualised(port, value, offset, width) (*(Sas.IOVirtualised))(port, value, offset, width)
+#else /* PROD */
+IMPORT IBOOL IOVirtualised IPT4(IU16, port, IU32 *, value, IU32, offset, IU8, width);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+IMPORT IU32 c_VirtualiseInstruction IPT4(IU32, eipInRom, IUH, size, IU32, linearAddrOrPort, IU32, dataIn);
+#define VirtualiseInstruction(eipInRom, size, linearAddrOrPort, dataIn) c_VirtualiseInstruction(eipInRom, size, linearAddrOrPort, dataIn)
+#else /* CCPU */
+
+#ifdef PROD
+#define VirtualiseInstruction(eipInRom, size, linearAddrOrPort, dataIn) (*(Sas.SasVirtualiseInstruction))(eipInRom, size, linearAddrOrPort, dataIn)
+#else /* PROD */
+IMPORT IU32 VirtualiseInstruction IPT4(IU32, eipInRom, IUH, size, IU32, linearAddrOrPort, IU32, dataIn);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#ifdef CCPU
+
+#else /* CCPU */
+
+#ifdef PROD
+#define IsPageInstanceData(physAddr) (*(Sas.IsPageInstanceData))(physAddr)
+#else /* PROD */
+IMPORT IBOOL IsPageInstanceData IPT1(IU32, physAddr);
+#endif /*PROD*/
+
+#endif /* CCPU */
+
+#endif /* _SAS4GEN_H_ */
+/*======================================== END ========================================*/