[PSEH]
authorTimo Kreuzer <timo.kreuzer@reactos.org>
Sun, 23 Dec 2012 21:33:48 +0000 (21:33 +0000)
committerTimo Kreuzer <timo.kreuzer@reactos.org>
Sun, 23 Dec 2012 21:33:48 +0000 (21:33 +0000)
Add _SEH2_VOLATILE macro, that expands to volatile on gcc. This is to mark variables as volatile, if neccessary.

svn path=/trunk/; revision=57982

reactos/include/reactos/libs/pseh/pseh2.h
reactos/include/reactos/libs/pseh/pseh3.h

index f74805d..fc640cc 100644 (file)
@@ -35,6 +35,7 @@
 #define _SEH2_AbnormalTermination() (AbnormalTermination())
 #define _SEH2_YIELD(STMT_) STMT_
 #define _SEH2_LEAVE __leave
 #define _SEH2_AbnormalTermination() (AbnormalTermination())
 #define _SEH2_YIELD(STMT_) STMT_
 #define _SEH2_LEAVE __leave
+#define _SEH2_VOLATILE
 
 #elif defined(_USE_DUMMY_PSEH) || defined (__arm__) || defined(__clang__) || defined(_M_AMD64)
 
 
 #elif defined(_USE_DUMMY_PSEH) || defined (__arm__) || defined(__clang__) || defined(_M_AMD64)
 
@@ -47,6 +48,7 @@
 #define _SEH2_AbnormalTermination()
 #define _SEH2_YIELD(STMT_) STMT_
 #define _SEH2_LEAVE
 #define _SEH2_AbnormalTermination()
 #define _SEH2_YIELD(STMT_) STMT_
 #define _SEH2_LEAVE
+#define _SEH2_VOLATILE volatile
 
 #elif defined(_USE_PSEH3)
 
 
 #elif defined(_USE_PSEH3)
 
@@ -62,6 +64,7 @@
 #define _SEH2_AbnormalTermination _abnormal_termination
 #define _SEH2_LEAVE _SEH3_LEAVE
 #define _SEH2_YIELD(x) x
 #define _SEH2_AbnormalTermination _abnormal_termination
 #define _SEH2_LEAVE _SEH3_LEAVE
 #define _SEH2_YIELD(x) x
+#define _SEH2_VOLATILE volatile
 
 #elif defined(__GNUC__)
 
 
 #elif defined(__GNUC__)
 
index 14d1fd3..78e2487 100644 (file)
@@ -290,3 +290,4 @@ void * __cdecl __attribute__((error("Can only be used inside an exception filter
 
 #define _SEH3_LEAVE goto _SEH3$_l_AfterTry
 
 
 #define _SEH3_LEAVE goto _SEH3$_l_AfterTry
 
+#define _SEH3_VOLATILE volatile