summaryrefslogtreecommitdiff
path: root/lib/Support/regexec.c
diff options
context:
space:
mode:
authorNAKAMURA Takumi <geek4civic@gmail.com>2010-12-16 01:48:15 +0000
committerNAKAMURA Takumi <geek4civic@gmail.com>2010-12-16 01:48:15 +0000
commitad3ea3d85f164dc1b2746950e378334197d8688d (patch)
tree2ff9f0e0c309b26af25be118396fe90ced74109d /lib/Support/regexec.c
parent656b3d22f70c2d1c8a5286f7270cb380df862565 (diff)
downloadllvm-ad3ea3d85f164dc1b2746950e378334197d8688d.tar.gz
llvm-ad3ea3d85f164dc1b2746950e378334197d8688d.tar.bz2
llvm-ad3ea3d85f164dc1b2746950e378334197d8688d.tar.xz
lib/Support/regexec.c: Let Regex LLP64-aware.
On LLP64 Win64, 'states1' (for small version) was expanded to 'char *' for large version. Thus small version would be mischosen when nstates > 32 regardless of sizeof(long) on Win64. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121942 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Support/regexec.c')
-rw-r--r--lib/Support/regexec.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/Support/regexec.c b/lib/Support/regexec.c
index 41fb2ea46c..007861675b 100644
--- a/lib/Support/regexec.c
+++ b/lib/Support/regexec.c
@@ -54,8 +54,9 @@
#include "regex2.h"
/* macros for manipulating states, small version */
-#define states long
-#define states1 states /* for later use in llvm_regexec() decision */
+/* FIXME: 'states' is assumed as 'long' on small version. */
+#define states1 long /* for later use in llvm_regexec() decision */
+#define states states1
#define CLEAR(v) ((v) = 0)
#define SET0(v, n) ((v) &= ~((unsigned long)1 << (n)))
#define SET1(v, n) ((v) |= (unsigned long)1 << (n))