-/* -- Auxiliary modes necessary for the Firm representation -- */
-extern ir_mode *mode_b; /**< internal boolean */
-
-extern ir_mode *mode_X; /**< execution */
-extern ir_mode *mode_BB; /**< block */
-
-extern ir_mode *mode_T; /**< tuple (none) */
-extern ir_mode *mode_ANY;/**< undefined mode */
-extern ir_mode *mode_BAD;/**< bad mode */
-
-/*@{*/
-/** Access routines for JNI Interface */
-ir_mode *get_modeF(void);
-ir_mode *get_modeD(void);
-ir_mode *get_modeE(void);
-ir_mode *get_modeBs(void);
-ir_mode *get_modeBu(void);
-ir_mode *get_modeHs(void);
-ir_mode *get_modeHu(void);
-ir_mode *get_modeIs(void);
-ir_mode *get_modeIu(void);
-ir_mode *get_modeLs(void);
-ir_mode *get_modeLu(void);
-ir_mode *get_modeLLs(void);
-ir_mode *get_modeLLu(void);
-ir_mode *get_modeP(void);
-ir_mode *get_modeb(void);
-ir_mode *get_modeX(void);
-ir_mode *get_modeBB(void);
-ir_mode *get_modeM(void);
-ir_mode *get_modeT(void);
-ir_mode *get_modeANY(void);
-ir_mode *get_modeBAD(void);
+FIRM_API ir_mode *mode_b; /**< internal boolean */
+
+FIRM_API ir_mode *mode_X; /**< execution */
+FIRM_API ir_mode *mode_BB; /**< block */
+
+FIRM_API ir_mode *mode_T; /**< tuple (none) */
+FIRM_API ir_mode *mode_ANY;/**< undefined mode */
+FIRM_API ir_mode *mode_BAD;/**< bad mode */
+
+/** Returns float mode */
+FIRM_API ir_mode *get_modeF(void);
+/** Returns double mode */
+FIRM_API ir_mode *get_modeD(void);
+/** Returns quadruple prevision mode */
+FIRM_API ir_mode *get_modeQ(void);
+/** Returns byte signed mode */
+FIRM_API ir_mode *get_modeBs(void);
+/** Returns byte unsigned mode */
+FIRM_API ir_mode *get_modeBu(void);
+/** Returns halfword signed mode */
+FIRM_API ir_mode *get_modeHs(void);
+/** Returns halfword unsigned mode */
+FIRM_API ir_mode *get_modeHu(void);
+/** Returns integer signed mode */
+FIRM_API ir_mode *get_modeIs(void);
+/** Returns integer unsigned mode */
+FIRM_API ir_mode *get_modeIu(void);
+/** Returns long signed mode */
+FIRM_API ir_mode *get_modeLs(void);
+/** Returns long unsigned mode */
+FIRM_API ir_mode *get_modeLu(void);
+/** Returns long long signed mode */
+FIRM_API ir_mode *get_modeLLs(void);
+/** Returns long long unsigned mode */
+FIRM_API ir_mode *get_modeLLu(void);
+/** Returns pointer mode */
+FIRM_API ir_mode *get_modeP(void);
+/** Returns internal boolean mode */
+FIRM_API ir_mode *get_modeb(void);
+/** Returns control-flow mode */
+FIRM_API ir_mode *get_modeX(void);
+/** Returns Basic-Block mode */
+FIRM_API ir_mode *get_modeBB(void);
+/** Returns memory mode */
+FIRM_API ir_mode *get_modeM(void);
+/** Returns tuple mode */
+FIRM_API ir_mode *get_modeT(void);
+/** Returns ANY mode */
+FIRM_API ir_mode *get_modeANY(void);
+/** Returns BAD mode */
+FIRM_API ir_mode *get_modeBAD(void);