Mercurial > octave-nkf
comparison liboctave/util/data-conv.cc @ 17415:3856298f1ff8
eliminate unimplemented vax and cray floating point formats
* mach-info.h
* test/io.tst: Delete vaxd, vaxg, and cray from list of architectures
in fopen test.
# HG changeset patch
# User John W. Eaton <jwe@octave.org>
# Date 1379028062 14400
# Thu Sep 12 19:21:02 2013 -0400
# Node ID ea2763020ac1aa15ad0d43d787b61ff3b8469209
# Parent e89e86e1a5518c11058930fec5e907e60e31251b
eliminate unimplemented vax and cray floating point formats
* mach-info.h (oct_mach_info::float_format): Delete flt_fmt_vaxd,
flt_fmt_vaxg, and flt_fmt_cray enum values.
* ls-mat4.cc (float_format_to_mopt_digit, mopt_digit_to_float_format):
Delete cases for vaxd, vaxg, and cray floating point formats.
* lo-ieee.cc (octave_ieee_init): Likewise.
* mach-info.cc (get_float_format,
oct_mach_info::string_to_float_format,
oct_mach_info::float_format_as_string): Likewise.
* oct-stream.cc: Delete explicit template instantiation for do_write.
(octave_stream::write, do_read): Delete checks for vaxd and vaxg
floating point formats.
* pr-output.cc (pr_any_float): Don't check for cray or unknonwn float
formats.
* data-conv.cc (VAX_D_double_to_IEEE_little_double,
VAX_G_double_to_IEEE_little_double, Cray_to_IEEE_little_double,
IEEE_big_float_to_IEEE_little_float, VAX_D_float_to_IEEE_little_float,
VAX_G_float_to_IEEE_little_float, Cray_to_IEEE_little_float,
IEEE_little_double_to_IEEE_big_double,
VAX_D_double_to_IEEE_big_double, VAX_G_double_to_IEEE_big_double,
Cray_to_IEEE_big_double, IEEE_little_float_to_IEEE_big_float,
VAX_D_float_to_IEEE_big_float, VAX_G_float_to_IEEE_big_float,
Cray_to_IEEE_big_float, IEEE_little_double_to_VAX_D_double,
IEEE_big_double_to_VAX_D_double, VAX_G_double_to_VAX_D_double,
Cray_to_VAX_D_double, IEEE_little_float_to_VAX_D_float,
IEEE_big_float_to_VAX_D_float, VAX_G_float_to_VAX_D_float,
Cray_to_VAX_D_float, IEEE_little_double_to_VAX_G_double,
IEEE_big_double_to_VAX_G_double, VAX_D_double_to_VAX_G_double,
Cray_to_VAX_G_double, IEEE_little_float_to_VAX_G_float,
IEEE_big_float_to_VAX_G_float, VAX_D_float_to_VAX_G_float,
Cray_to_VAX_G_float): Delete.
(do_double_format_conversion): Eliminate unimplemented vaxd, vaxg, and
cray conversions.
* file-io.cc (Ffopen, Ffread): Fix doc strings.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Thu, 12 Sep 2013 19:21:02 -0400 |
parents | e89e86e1a551 |
children | 6690dba6078a |
comparison
equal
deleted
inserted
replaced
17413:e89e86e1a551 | 17415:3856298f1ff8 |
---|---|
543 { | 543 { |
544 swap_bytes<8> (d, len); | 544 swap_bytes<8> (d, len); |
545 } | 545 } |
546 | 546 |
547 static void | 547 static void |
548 VAX_D_double_to_IEEE_little_double (void * /* d */, octave_idx_type /* len */) | |
549 { | |
550 gripe_data_conversion ("VAX D float", "IEEE little endian format"); | |
551 } | |
552 | |
553 static void | |
554 VAX_G_double_to_IEEE_little_double (void * /* d */, octave_idx_type /* len */) | |
555 { | |
556 gripe_data_conversion ("VAX G float", "IEEE little endian format"); | |
557 } | |
558 | |
559 static void | |
560 Cray_to_IEEE_little_double (void * /* d */, octave_idx_type /* len */) | |
561 { | |
562 gripe_data_conversion ("Cray", "IEEE little endian format"); | |
563 } | |
564 | |
565 static void | |
566 IEEE_big_float_to_IEEE_little_float (void *d, octave_idx_type len) | 548 IEEE_big_float_to_IEEE_little_float (void *d, octave_idx_type len) |
567 { | 549 { |
568 swap_bytes<4> (d, len); | 550 swap_bytes<4> (d, len); |
569 } | |
570 | |
571 static void | |
572 VAX_D_float_to_IEEE_little_float (void * /* d */, octave_idx_type /* len */) | |
573 { | |
574 gripe_data_conversion ("VAX D float", "IEEE little endian format"); | |
575 } | |
576 | |
577 static void | |
578 VAX_G_float_to_IEEE_little_float (void * /* d */, octave_idx_type /* len */) | |
579 { | |
580 gripe_data_conversion ("VAX G float", "IEEE little endian format"); | |
581 } | |
582 | |
583 static void | |
584 Cray_to_IEEE_little_float (void * /* d */, octave_idx_type /* len */) | |
585 { | |
586 gripe_data_conversion ("Cray", "IEEE little endian format"); | |
587 } | 551 } |
588 | 552 |
589 static void | 553 static void |
590 IEEE_little_double_to_IEEE_big_double (void *d, octave_idx_type len) | 554 IEEE_little_double_to_IEEE_big_double (void *d, octave_idx_type len) |
591 { | 555 { |
592 swap_bytes<8> (d, len); | 556 swap_bytes<8> (d, len); |
593 } | 557 } |
594 | 558 |
595 static void | 559 static void |
596 VAX_D_double_to_IEEE_big_double (void * /* d */, octave_idx_type /* len */) | |
597 { | |
598 gripe_data_conversion ("VAX D float", "IEEE big endian format"); | |
599 } | |
600 | |
601 static void | |
602 VAX_G_double_to_IEEE_big_double (void * /* d */, octave_idx_type /* len */) | |
603 { | |
604 gripe_data_conversion ("VAX G float", "IEEE big endian format"); | |
605 } | |
606 | |
607 static void | |
608 Cray_to_IEEE_big_double (void * /* d */, octave_idx_type /* len */) | |
609 { | |
610 gripe_data_conversion ("Cray", "IEEE big endian format"); | |
611 } | |
612 | |
613 static void | |
614 IEEE_little_float_to_IEEE_big_float (void *d, octave_idx_type len) | 560 IEEE_little_float_to_IEEE_big_float (void *d, octave_idx_type len) |
615 { | 561 { |
616 swap_bytes<4> (d, len); | 562 swap_bytes<4> (d, len); |
617 } | |
618 | |
619 static void | |
620 VAX_D_float_to_IEEE_big_float (void * /* d */, octave_idx_type /* len */) | |
621 { | |
622 gripe_data_conversion ("VAX D float", "IEEE big endian format"); | |
623 } | |
624 | |
625 static void | |
626 VAX_G_float_to_IEEE_big_float (void * /* d */, octave_idx_type /* len */) | |
627 { | |
628 gripe_data_conversion ("VAX G float", "IEEE big endian format"); | |
629 } | |
630 | |
631 static void | |
632 Cray_to_IEEE_big_float (void * /* d */, octave_idx_type /* len */) | |
633 { | |
634 gripe_data_conversion ("Cray", "IEEE big endian format"); | |
635 } | |
636 | |
637 static void | |
638 IEEE_little_double_to_VAX_D_double (void * /* d */, octave_idx_type /* len */) | |
639 { | |
640 gripe_data_conversion ("IEEE little endian", "VAX D"); | |
641 } | |
642 | |
643 static void | |
644 IEEE_big_double_to_VAX_D_double (void * /* d */, octave_idx_type /* len */) | |
645 { | |
646 gripe_data_conversion ("IEEE big endian", "VAX D"); | |
647 } | |
648 | |
649 static void | |
650 VAX_G_double_to_VAX_D_double (void * /* d */, octave_idx_type /* len */) | |
651 { | |
652 gripe_data_conversion ("VAX G float", "VAX D"); | |
653 } | |
654 | |
655 static void | |
656 Cray_to_VAX_D_double (void * /* d */, octave_idx_type /* len */) | |
657 { | |
658 gripe_data_conversion ("Cray", "VAX D"); | |
659 } | |
660 | |
661 static void | |
662 IEEE_little_float_to_VAX_D_float (void * /* d */, octave_idx_type /* len */) | |
663 { | |
664 gripe_data_conversion ("IEEE little endian", "VAX D"); | |
665 } | |
666 | |
667 static void | |
668 IEEE_big_float_to_VAX_D_float (void * /* d */, octave_idx_type /* len */) | |
669 { | |
670 gripe_data_conversion ("IEEE big endian", "VAX D"); | |
671 } | |
672 | |
673 static void | |
674 VAX_G_float_to_VAX_D_float (void * /* d */, octave_idx_type /* len */) | |
675 { | |
676 gripe_data_conversion ("VAX G float", "VAX D"); | |
677 } | |
678 | |
679 static void | |
680 Cray_to_VAX_D_float (void * /* d */, octave_idx_type /* len */) | |
681 { | |
682 gripe_data_conversion ("Cray", "VAX D"); | |
683 } | |
684 | |
685 static void | |
686 IEEE_little_double_to_VAX_G_double (void * /* d */, octave_idx_type /* len */) | |
687 { | |
688 gripe_data_conversion ("IEEE little endian", "VAX G"); | |
689 } | |
690 | |
691 static void | |
692 IEEE_big_double_to_VAX_G_double (void * /* d */, octave_idx_type /* len */) | |
693 { | |
694 gripe_data_conversion ("IEEE big endian", "VAX G"); | |
695 } | |
696 | |
697 static void | |
698 VAX_D_double_to_VAX_G_double (void * /* d */, octave_idx_type /* len */) | |
699 { | |
700 gripe_data_conversion ("VAX D float", "VAX G"); | |
701 } | |
702 | |
703 static void | |
704 Cray_to_VAX_G_double (void * /* d */, octave_idx_type /* len */) | |
705 { | |
706 gripe_data_conversion ("VAX G float", "VAX G"); | |
707 } | |
708 | |
709 static void | |
710 IEEE_little_float_to_VAX_G_float (void * /* d */, octave_idx_type /* len */) | |
711 { | |
712 gripe_data_conversion ("IEEE little endian", "VAX G"); | |
713 } | |
714 | |
715 static void | |
716 IEEE_big_float_to_VAX_G_float (void * /* d */, octave_idx_type /* len */) | |
717 { | |
718 gripe_data_conversion ("IEEE big endian", "VAX G"); | |
719 } | |
720 | |
721 static void | |
722 VAX_D_float_to_VAX_G_float (void * /* d */, octave_idx_type /* len */) | |
723 { | |
724 gripe_data_conversion ("VAX D float", "VAX G"); | |
725 } | |
726 | |
727 static void | |
728 Cray_to_VAX_G_float (void * /* d */, octave_idx_type /* len */) | |
729 { | |
730 gripe_data_conversion ("VAX G float", "VAX G"); | |
731 } | 563 } |
732 | 564 |
733 void | 565 void |
734 do_double_format_conversion (void *data, octave_idx_type len, | 566 do_double_format_conversion (void *data, octave_idx_type len, |
735 oct_mach_info::float_format from_fmt, | 567 oct_mach_info::float_format from_fmt, |
743 case oct_mach_info::flt_fmt_ieee_little_endian: | 575 case oct_mach_info::flt_fmt_ieee_little_endian: |
744 break; | 576 break; |
745 | 577 |
746 case oct_mach_info::flt_fmt_ieee_big_endian: | 578 case oct_mach_info::flt_fmt_ieee_big_endian: |
747 IEEE_big_double_to_IEEE_little_double (data, len); | 579 IEEE_big_double_to_IEEE_little_double (data, len); |
748 break; | |
749 | |
750 case oct_mach_info::flt_fmt_vax_d: | |
751 VAX_D_double_to_IEEE_little_double (data, len); | |
752 break; | |
753 | |
754 case oct_mach_info::flt_fmt_vax_g: | |
755 VAX_G_double_to_IEEE_little_double (data, len); | |
756 break; | |
757 | |
758 case oct_mach_info::flt_fmt_cray: | |
759 Cray_to_IEEE_little_double (data, len); | |
760 break; | 580 break; |
761 | 581 |
762 default: | 582 default: |
763 gripe_unrecognized_float_fmt (); | 583 gripe_unrecognized_float_fmt (); |
764 break; | 584 break; |
773 break; | 593 break; |
774 | 594 |
775 case oct_mach_info::flt_fmt_ieee_big_endian: | 595 case oct_mach_info::flt_fmt_ieee_big_endian: |
776 break; | 596 break; |
777 | 597 |
778 case oct_mach_info::flt_fmt_vax_d: | |
779 VAX_D_double_to_IEEE_big_double (data, len); | |
780 break; | |
781 | |
782 case oct_mach_info::flt_fmt_vax_g: | |
783 VAX_G_double_to_IEEE_big_double (data, len); | |
784 break; | |
785 | |
786 case oct_mach_info::flt_fmt_cray: | |
787 Cray_to_IEEE_big_double (data, len); | |
788 break; | |
789 | |
790 default: | |
791 gripe_unrecognized_float_fmt (); | |
792 break; | |
793 } | |
794 break; | |
795 | |
796 case oct_mach_info::flt_fmt_vax_d: | |
797 switch (from_fmt) | |
798 { | |
799 case oct_mach_info::flt_fmt_ieee_little_endian: | |
800 IEEE_little_double_to_VAX_D_double (data, len); | |
801 break; | |
802 | |
803 case oct_mach_info::flt_fmt_ieee_big_endian: | |
804 IEEE_big_double_to_VAX_D_double (data, len); | |
805 break; | |
806 | |
807 case oct_mach_info::flt_fmt_vax_d: | |
808 break; | |
809 | |
810 case oct_mach_info::flt_fmt_vax_g: | |
811 VAX_G_double_to_VAX_D_double (data, len); | |
812 break; | |
813 | |
814 case oct_mach_info::flt_fmt_cray: | |
815 Cray_to_VAX_D_double (data, len); | |
816 break; | |
817 | |
818 default: | |
819 gripe_unrecognized_float_fmt (); | |
820 break; | |
821 } | |
822 break; | |
823 | |
824 case oct_mach_info::flt_fmt_vax_g: | |
825 switch (from_fmt) | |
826 { | |
827 case oct_mach_info::flt_fmt_ieee_little_endian: | |
828 IEEE_little_double_to_VAX_G_double (data, len); | |
829 break; | |
830 | |
831 case oct_mach_info::flt_fmt_ieee_big_endian: | |
832 IEEE_big_double_to_VAX_G_double (data, len); | |
833 break; | |
834 | |
835 case oct_mach_info::flt_fmt_vax_d: | |
836 VAX_D_double_to_VAX_G_double (data, len); | |
837 break; | |
838 | |
839 case oct_mach_info::flt_fmt_vax_g: | |
840 break; | |
841 | |
842 case oct_mach_info::flt_fmt_cray: | |
843 Cray_to_VAX_G_double (data, len); | |
844 break; | |
845 | |
846 default: | 598 default: |
847 gripe_unrecognized_float_fmt (); | 599 gripe_unrecognized_float_fmt (); |
848 break; | 600 break; |
849 } | 601 } |
850 break; | 602 break; |
870 case oct_mach_info::flt_fmt_ieee_little_endian: | 622 case oct_mach_info::flt_fmt_ieee_little_endian: |
871 break; | 623 break; |
872 | 624 |
873 case oct_mach_info::flt_fmt_ieee_big_endian: | 625 case oct_mach_info::flt_fmt_ieee_big_endian: |
874 IEEE_big_float_to_IEEE_little_float (data, len); | 626 IEEE_big_float_to_IEEE_little_float (data, len); |
875 break; | |
876 | |
877 case oct_mach_info::flt_fmt_vax_d: | |
878 VAX_D_float_to_IEEE_little_float (data, len); | |
879 break; | |
880 | |
881 case oct_mach_info::flt_fmt_vax_g: | |
882 VAX_G_float_to_IEEE_little_float (data, len); | |
883 break; | |
884 | |
885 case oct_mach_info::flt_fmt_cray: | |
886 Cray_to_IEEE_little_float (data, len); | |
887 break; | 627 break; |
888 | 628 |
889 default: | 629 default: |
890 gripe_unrecognized_float_fmt (); | 630 gripe_unrecognized_float_fmt (); |
891 break; | 631 break; |
898 case oct_mach_info::flt_fmt_ieee_little_endian: | 638 case oct_mach_info::flt_fmt_ieee_little_endian: |
899 IEEE_little_float_to_IEEE_big_float (data, len); | 639 IEEE_little_float_to_IEEE_big_float (data, len); |
900 break; | 640 break; |
901 | 641 |
902 case oct_mach_info::flt_fmt_ieee_big_endian: | 642 case oct_mach_info::flt_fmt_ieee_big_endian: |
903 break; | |
904 | |
905 case oct_mach_info::flt_fmt_vax_d: | |
906 VAX_D_float_to_IEEE_big_float (data, len); | |
907 break; | |
908 | |
909 case oct_mach_info::flt_fmt_vax_g: | |
910 VAX_G_float_to_IEEE_big_float (data, len); | |
911 break; | |
912 | |
913 case oct_mach_info::flt_fmt_cray: | |
914 Cray_to_IEEE_big_float (data, len); | |
915 break; | |
916 | |
917 default: | |
918 gripe_unrecognized_float_fmt (); | |
919 break; | |
920 } | |
921 break; | |
922 | |
923 case oct_mach_info::flt_fmt_vax_d: | |
924 switch (from_fmt) | |
925 { | |
926 case oct_mach_info::flt_fmt_ieee_little_endian: | |
927 IEEE_little_float_to_VAX_D_float (data, len); | |
928 break; | |
929 | |
930 case oct_mach_info::flt_fmt_ieee_big_endian: | |
931 IEEE_big_float_to_VAX_D_float (data, len); | |
932 break; | |
933 | |
934 case oct_mach_info::flt_fmt_vax_d: | |
935 break; | |
936 | |
937 case oct_mach_info::flt_fmt_vax_g: | |
938 VAX_G_float_to_VAX_D_float (data, len); | |
939 break; | |
940 | |
941 case oct_mach_info::flt_fmt_cray: | |
942 Cray_to_VAX_D_float (data, len); | |
943 break; | |
944 | |
945 default: | |
946 gripe_unrecognized_float_fmt (); | |
947 break; | |
948 } | |
949 break; | |
950 | |
951 case oct_mach_info::flt_fmt_vax_g: | |
952 switch (from_fmt) | |
953 { | |
954 case oct_mach_info::flt_fmt_ieee_little_endian: | |
955 IEEE_little_float_to_VAX_G_float (data, len); | |
956 break; | |
957 | |
958 case oct_mach_info::flt_fmt_ieee_big_endian: | |
959 IEEE_big_float_to_VAX_G_float (data, len); | |
960 break; | |
961 | |
962 case oct_mach_info::flt_fmt_vax_d: | |
963 VAX_D_float_to_VAX_G_float (data, len); | |
964 break; | |
965 | |
966 case oct_mach_info::flt_fmt_vax_g: | |
967 break; | |
968 | |
969 case oct_mach_info::flt_fmt_cray: | |
970 Cray_to_VAX_G_float (data, len); | |
971 break; | 643 break; |
972 | 644 |
973 default: | 645 default: |
974 gripe_unrecognized_float_fmt (); | 646 gripe_unrecognized_float_fmt (); |
975 break; | 647 break; |