diff options
author | Bernd Schmidt <bernds@codesourcery.com> | 2012-04-26 14:20:39 +0000 |
---|---|---|
committer | Bernd Schmidt <bernds@gcc.gnu.org> | 2012-04-26 14:20:39 +0000 |
commit | e90247f8bac2b058550d5e3af7873fa2768624d2 (patch) | |
tree | cc9676874f6a1ec2605d4af7227233a8650f66f1 /gcc/machmode.h | |
parent | 81c082ecd2881c3d1ed9387e4deeb922f74a8c4f (diff) | |
download | gcc-e90247f8bac2b058550d5e3af7873fa2768624d2.zip gcc-e90247f8bac2b058550d5e3af7873fa2768624d2.tar.gz gcc-e90247f8bac2b058550d5e3af7873fa2768624d2.tar.bz2 |
re PR middle-end/52940 (conversion from MODE_PARTIAL_INT uses sign extension for unsigned types)
PR middle-end/52940
* machmode.h (CLASS_HAS_WIDER_MODES_P): True for MODE_PARTIAL_INT.
* expr.c (convert_move): Honor unsignedp when extending partial int
modes.
* genmodes.c (complete_mode): Don't clear component field of partial
int modes.
(emit_mode_inner): Don't emit it however.
(calc_wider_mode): Partial int modes widen to their component.
From-SVN: r186877
Diffstat (limited to 'gcc/machmode.h')
-rw-r--r-- | gcc/machmode.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/machmode.h b/gcc/machmode.h index 4a3f6f5..6137c70 100644 --- a/gcc/machmode.h +++ b/gcc/machmode.h @@ -166,6 +166,7 @@ extern const unsigned char mode_class[NUM_MACHINE_MODES]; /* Nonzero if CLASS modes can be widened. */ #define CLASS_HAS_WIDER_MODES_P(CLASS) \ (CLASS == MODE_INT \ + || CLASS == MODE_PARTIAL_INT \ || CLASS == MODE_FLOAT \ || CLASS == MODE_DECIMAL_FLOAT \ || CLASS == MODE_COMPLEX_FLOAT \ |