~ubuntu-branches/ubuntu/vivid/golang/vivid

« back to all changes in this revision

Viewing changes to src/cmd/6c/txt.c

  • Committer: Package Import Robot
  • Author(s): James Page
  • Date: 2013-08-20 14:06:23 UTC
  • mfrom: (14.1.23 saucy-proposed)
  • Revision ID: package-import@ubuntu.com-20130820140623-b414jfxi3m0qkmrq
Tags: 2:1.1.2-2ubuntu1
* Merge from Debian unstable (LP: #1211749, #1202027). Remaining changes:
  - 016-armhf-elf-header.patch: Use correct ELF header for armhf binaries.
  - d/control,control.cross: Update Breaks/Replaces for Ubuntu
    versions to ensure smooth upgrades, regenerate control file.

Show diffs side-by-side

added added

removed removed

Lines of Context:
809
809
        case CASE(      TUINT,  TCHAR):
810
810
        case CASE(      TLONG,  TCHAR):
811
811
        case CASE(      TULONG, TCHAR):
812
 
        case CASE(      TIND,   TCHAR):
813
812
 
814
813
        case CASE(      TCHAR,  TUCHAR):
815
814
        case CASE(      TUCHAR, TUCHAR):
819
818
        case CASE(      TUINT,  TUCHAR):
820
819
        case CASE(      TLONG,  TUCHAR):
821
820
        case CASE(      TULONG, TUCHAR):
822
 
        case CASE(      TIND,   TUCHAR):
823
821
 
824
822
        case CASE(      TSHORT, TSHORT):
825
823
        case CASE(      TUSHORT,TSHORT):
827
825
        case CASE(      TUINT,  TSHORT):
828
826
        case CASE(      TLONG,  TSHORT):
829
827
        case CASE(      TULONG, TSHORT):
830
 
        case CASE(      TIND,   TSHORT):
831
828
 
832
829
        case CASE(      TSHORT, TUSHORT):
833
830
        case CASE(      TUSHORT,TUSHORT):
835
832
        case CASE(      TUINT,  TUSHORT):
836
833
        case CASE(      TLONG,  TUSHORT):
837
834
        case CASE(      TULONG, TUSHORT):
838
 
        case CASE(      TIND,   TUSHORT):
839
835
 
840
836
        case CASE(      TINT,   TINT):
841
837
        case CASE(      TUINT,  TINT):
842
838
        case CASE(      TLONG,  TINT):
843
839
        case CASE(      TULONG, TINT):
844
 
        case CASE(      TIND,   TINT):
845
840
 
846
841
        case CASE(      TINT,   TUINT):
847
842
        case CASE(      TUINT,  TUINT):
848
843
        case CASE(      TLONG,  TUINT):
849
844
        case CASE(      TULONG, TUINT):
850
 
        case CASE(      TIND,   TUINT):
851
 
 
852
 
        case CASE(      TUINT,  TIND):
853
 
        case CASE(      TVLONG, TUINT):
854
 
        case CASE(      TVLONG, TULONG):
855
 
        case CASE(      TUVLONG, TUINT):
856
 
        case CASE(      TUVLONG, TULONG):
857
845
 *****/
858
846
                a = AMOVL;
859
847
                break;
860
848
 
861
 
        case CASE(      TVLONG, TCHAR):
862
 
        case    CASE(   TVLONG, TSHORT):
863
 
        case CASE(      TVLONG, TINT):
864
 
        case CASE(      TVLONG, TLONG):
865
 
        case CASE(      TUVLONG, TCHAR):
866
 
        case    CASE(   TUVLONG, TSHORT):
867
 
        case CASE(      TUVLONG, TINT):
868
 
        case CASE(      TUVLONG, TLONG):
 
849
        case CASE(      TINT,   TIND):
869
850
        case CASE(      TINT,   TVLONG):
870
851
        case CASE(      TINT,   TUVLONG):
 
852
        case CASE(      TLONG,  TIND):
871
853
        case CASE(      TLONG,  TVLONG):
872
 
        case CASE(      TINT,   TIND):
873
 
        case CASE(      TLONG,  TIND):
 
854
        case CASE(      TLONG,  TUVLONG):
874
855
                a = AMOVLQSX;
875
856
                if(f->op == OCONST) {
876
857
                        f->vconst &= (uvlong)0xffffffffU;
886
867
        case CASE(      TULONG, TVLONG):
887
868
        case CASE(      TULONG, TUVLONG):
888
869
        case CASE(      TULONG, TIND):
889
 
                a = AMOVL;      /* same effect as AMOVLQZX */
 
870
                a = AMOVLQZX;
890
871
                if(f->op == OCONST) {
891
872
                        f->vconst &= (uvlong)0xffffffffU;
892
873
                        a = AMOVQ;
893
874
                }
894
875
                break;
 
876
        
 
877
        case CASE(      TIND,   TCHAR):
 
878
        case CASE(      TIND,   TUCHAR):
 
879
        case CASE(      TIND,   TSHORT):
 
880
        case CASE(      TIND,   TUSHORT):
 
881
        case CASE(      TIND,   TINT):
 
882
        case CASE(      TIND,   TUINT):
 
883
        case CASE(      TIND,   TLONG):
 
884
        case CASE(      TIND,   TULONG):
 
885
        case CASE(      TVLONG, TCHAR):
 
886
        case CASE(      TVLONG, TUCHAR):
 
887
        case CASE(      TVLONG, TSHORT):
 
888
        case CASE(      TVLONG, TUSHORT):
 
889
        case CASE(      TVLONG, TINT):
 
890
        case CASE(      TVLONG, TUINT):
 
891
        case CASE(      TVLONG, TLONG):
 
892
        case CASE(      TVLONG, TULONG):
 
893
        case CASE(      TUVLONG,        TCHAR):
 
894
        case CASE(      TUVLONG,        TUCHAR):
 
895
        case CASE(      TUVLONG,        TSHORT):
 
896
        case CASE(      TUVLONG,        TUSHORT):
 
897
        case CASE(      TUVLONG,        TINT):
 
898
        case CASE(      TUVLONG,        TUINT):
 
899
        case CASE(      TUVLONG,        TLONG):
 
900
        case CASE(      TUVLONG,        TULONG):
 
901
                a = AMOVQL;
 
902
                if(f->op == OCONST) {
 
903
                        f->vconst &= (int)0xffffffffU;
 
904
                        a = AMOVL;
 
905
                }
 
906
                break;  
895
907
 
 
908
        case CASE(      TIND,   TIND):
896
909
        case CASE(      TIND,   TVLONG):
 
910
        case CASE(      TIND,   TUVLONG):
 
911
        case CASE(      TVLONG, TIND):
897
912
        case CASE(      TVLONG, TVLONG):
 
913
        case CASE(      TVLONG, TUVLONG):
 
914
        case CASE(      TUVLONG,        TIND):
898
915
        case CASE(      TUVLONG,        TVLONG):
899
 
        case CASE(      TVLONG, TUVLONG):
900
916
        case CASE(      TUVLONG,        TUVLONG):
901
 
        case CASE(      TIND,   TUVLONG):
902
 
        case CASE(      TVLONG, TIND):
903
 
        case CASE(      TUVLONG,        TIND):
904
 
        case CASE(      TIND,   TIND):
905
917
                a = AMOVQ;
906
918
                break;
907
919
 
1348
1360
                        a = ASALQ;
1349
1361
                break;
1350
1362
 
 
1363
        case OROTL:
 
1364
                a = AROLL;
 
1365
                if(et == TCHAR || et == TUCHAR)
 
1366
                        a = AROLB;
 
1367
                if(et == TSHORT || et == TUSHORT)
 
1368
                        a = AROLW;
 
1369
                if(et == TVLONG || et == TUVLONG || et == TIND)
 
1370
                        a = AROLQ;
 
1371
                break;
 
1372
 
1351
1373
        case OFUNC:
1352
1374
                a = ACALL;
1353
1375
                break;
1490
1512
                pc--;
1491
1513
}
1492
1514
 
 
1515
void
 
1516
gprefetch(Node *n)
 
1517
{
 
1518
        Node n1;
 
1519
        
 
1520
        regalloc(&n1, n, Z);
 
1521
        gmove(n, &n1);
 
1522
        n1.op = OINDREG;
 
1523
        gins(APREFETCHNTA, &n1, Z);
 
1524
        regfree(&n1);
 
1525
}
 
1526
 
1493
1527
int
1494
1528
sconst(Node *n)
1495
1529
{