This is the mail archive of the
mailing list for the GCC project.
RE: ARM FLOOR_MOD_EXPR?
- From: Jay K <jay dot krell at cornell dot edu>
- To: gcc <gcc at gcc dot gnu dot org>
- Date: Mon, 21 Jun 2010 05:57:18 +0000
- Subject: RE: ARM FLOOR_MOD_EXPR?
????? tfom = lang_hooks.types.type_for_mode (outmode, 0);
????? if (aggregate_value_p (tfom, 0))
for 64bit mod, outmode ends up TImode.
Our frontend doesn't support TImode -- reasonable? -- and so type_for_mode returns NULL here.
aggregate_value_p then derefences that NULL.
At least that's what happens in 4.3.
I tried hacking the C frontend to interpret % as FLOOR instead of TRUNC.
It works though -- the C frontend supports TImode.
Seems a little bit odd to depend on that?
> From: firstname.lastname@example.org
> To: email@example.com
> Subject: ARM FLOOR_MOD_EXPR?
> Date: Sat, 19 Jun 2010 08:17:16 +0000
> Do FLOOR_DIV_EXPR and FLOOR_MOD_EXPR work on ARM, for 64bit signed integer?
> I have a front end (sort of), using gcc 4.3, generates trees, doesn't work.
> type_for_mode(TImode) is NULL and that is dereferenced.
> I realize TRUNC_* would be far more "normal", but I can't change that.
> I guess I'll just go back to generating function calls.
> - Jay