> I prefer: > > #ifndef TARGET_BUILTIN_JMP_BUF_SIZE > #define TARGET_BUILTIN_JMP_BUF_SIZE 5 > #endif > /* builtin_setjmp takes a pointer to TARGET_BUILTIN_JMP_BUF_SIZE > words. */ tmp = build_int_cst (NULL_TREE, TARGET_BUILTIN_JMP_BUF_SIZE * > BITS_PER_WORD / POINTER_SIZE - 1); > > This doesn't change any existing port, which is nice, and on any port that > needs a different number, they have a nice simply direct way to get it.
That's a little confusing though, because JMP_BUF_SIZE just above comes with a different unit: #ifdef JMP_BUF_SIZE tmp = size_int (JMP_BUF_SIZE - 1); #else so I'd do: /* builtin_setjmp takes a pointer to 5 words by default. */ #ifndef TARGET_BUILTIN_JMP_BUF_SIZE #define TARGET_BUILTIN_JMP_BUF_SIZE (5 * BITS_PER_WORD / POINTER_SIZE) #endif TARGET_BUILTIN_JMP_BUF_SIZE tmp = size_int (TARGET_BUILTIN_JMP_BUF_SIZE - 1); instead to be consistent. -- Eric Botcazou