Skip to content

Commit 122f8c4

Browse files
committed
[GR-20016] Merge RAbstractLogicalVector to RLogicalVector.
PullRequest: fastr/2426
2 parents aebe9a6 + e8dfdfe commit 122f8c4

File tree

69 files changed

+216
-269
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

69 files changed

+216
-269
lines changed

com.oracle.truffle.r.ffi.impl/src/com/oracle/truffle/r/ffi/impl/nodes/AsLogicalNode.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2014, 2018, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2014, 2020, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* This code is free software; you can redistribute it and/or modify it
@@ -31,7 +31,7 @@
3131
import com.oracle.truffle.r.runtime.RRuntime;
3232
import com.oracle.truffle.r.runtime.data.RTypes;
3333
import com.oracle.truffle.r.runtime.data.model.RAbstractAtomicVector;
34-
import com.oracle.truffle.r.runtime.data.model.RAbstractLogicalVector;
34+
import com.oracle.truffle.r.runtime.data.RLogicalVector;
3535

3636
@TypeSystemReference(RTypes.class)
3737
public abstract class AsLogicalNode extends FFIUpCallNode.Arg1 {
@@ -44,7 +44,7 @@ protected int asLogical(byte b) {
4444
}
4545

4646
@Specialization
47-
protected int asLogical(RAbstractLogicalVector obj) {
47+
protected int asLogical(RLogicalVector obj) {
4848
if (obj.getLength() == 0) {
4949
return RRuntime.INT_NA;
5050
}
@@ -59,8 +59,8 @@ protected int asLogical(RAbstractAtomicVector obj,
5959
byte result;
6060
if (castObj instanceof Byte) {
6161
result = (byte) castObj;
62-
} else if (castObj instanceof RAbstractLogicalVector) {
63-
result = ((RAbstractLogicalVector) castObj).getDataAt(0);
62+
} else if (castObj instanceof RLogicalVector) {
63+
result = ((RLogicalVector) castObj).getDataAt(0);
6464
} else {
6565
throw RInternalError.shouldNotReachHere();
6666
}

com.oracle.truffle.r.library/src/com/oracle/truffle/r/library/fastrGrid/LRaster.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
import com.oracle.truffle.r.runtime.data.RNull;
3939
import com.oracle.truffle.r.runtime.data.RStringVector;
4040
import com.oracle.truffle.r.runtime.data.RIntVector;
41-
import com.oracle.truffle.r.runtime.data.model.RAbstractLogicalVector;
41+
import com.oracle.truffle.r.runtime.data.RLogicalVector;
4242
import com.oracle.truffle.r.runtime.data.model.RAbstractVector;
4343

4444
/**
@@ -67,7 +67,7 @@ public static LRaster create() {
6767
@Specialization
6868
@TruffleBoundary
6969
Object doRaster(RAbstractVector raster, RAbstractVector xVec, RAbstractVector yVec, RAbstractVector widthVec, RAbstractVector heightVec, RDoubleVector hjust, RDoubleVector vjust,
70-
RAbstractLogicalVector interpolate) {
70+
RLogicalVector interpolate) {
7171
GridContext ctx = GridContext.getContext();
7272
GridDevice dev = ctx.getCurrentDevice();
7373

@@ -117,7 +117,7 @@ Object doRaster(RAbstractVector raster, RAbstractVector xVec, RAbstractVector yV
117117
return RNull.instance;
118118
}
119119

120-
private static ImageInterpolation getInterpolation(RAbstractLogicalVector interpolation, int idx) {
120+
private static ImageInterpolation getInterpolation(RLogicalVector interpolation, int idx) {
121121
if (RRuntime.fromLogical(interpolation.getDataAt(idx % interpolation.getLength()))) {
122122
return ImageInterpolation.LINEAR_INTERPOLATION;
123123
}

com.oracle.truffle.r.library/src/com/oracle/truffle/r/library/stats/CompleteCases.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
import com.oracle.truffle.r.runtime.data.RPairList;
3535
import com.oracle.truffle.r.runtime.data.model.RAbstractComplexVector;
3636
import com.oracle.truffle.r.runtime.data.RIntVector;
37-
import com.oracle.truffle.r.runtime.data.model.RAbstractLogicalVector;
37+
import com.oracle.truffle.r.runtime.data.RLogicalVector;
3838
import com.oracle.truffle.r.runtime.data.model.RAbstractStringVector;
3939
import com.oracle.truffle.r.runtime.data.model.RAbstractVector;
4040

@@ -138,8 +138,8 @@ private void iterateAbstractVectorContents(int len, byte[] result, Object obj) {
138138
result[e % len] = RRuntime.LOGICAL_FALSE;
139139
}
140140
}
141-
} else if (entry instanceof RAbstractLogicalVector) {
142-
RAbstractLogicalVector v = (RAbstractLogicalVector) entry;
141+
} else if (entry instanceof RLogicalVector) {
142+
RLogicalVector v = (RLogicalVector) entry;
143143
for (int e = 0; e < v.getLength(); e++) {
144144
if (RRuntime.isNA(v.getDataAt(e))) {
145145
result[e % len] = RRuntime.LOGICAL_FALSE;

com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/AsLogical.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2013, 2020, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* This code is free software; you can redistribute it and/or modify it
@@ -37,7 +37,6 @@
3737
import com.oracle.truffle.r.runtime.builtins.RBuiltin;
3838
import com.oracle.truffle.r.runtime.data.RArgsValuesAndNames;
3939
import com.oracle.truffle.r.runtime.data.RLogicalVector;
40-
import com.oracle.truffle.r.runtime.data.model.RAbstractLogicalVector;
4140
import com.oracle.truffle.r.runtime.data.nodes.VectorReuse;
4241

4342
@RBuiltin(name = "as.logical", kind = PRIMITIVE, dispatch = INTERNAL_GENERIC, parameterNames = {"x", "..."}, behavior = PURE)
@@ -49,20 +48,20 @@ public abstract class AsLogical extends RBuiltinNode.Arg2 {
4948
}
5049

5150
@Specialization(guards = "reuseTemporaryNode.supports(v)", limit = "getVectorAccessCacheSize()")
52-
protected RAbstractLogicalVector asLogical(RAbstractLogicalVector v, @SuppressWarnings("unused") RArgsValuesAndNames dotdotdot,
51+
protected RLogicalVector asLogical(RLogicalVector v, @SuppressWarnings("unused") RArgsValuesAndNames dotdotdot,
5352
@Cached("createTemporary(v)") VectorReuse reuseTemporaryNode,
5453
@Cached("createBinaryProfile()") ConditionProfile noAttributes) {
5554
if (noAttributes.profile(v.getAttributes() == null)) {
5655
return v;
5756
} else {
58-
RLogicalVector res = (RLogicalVector) reuseTemporaryNode.getMaterializedResult(v);
57+
RLogicalVector res = reuseTemporaryNode.getMaterializedResult(v);
5958
res.resetAllAttributes(true);
6059
return res;
6160
}
6261
}
6362

6463
@Specialization(replaces = "asLogical")
65-
protected RAbstractLogicalVector asLogicalGeneric(RAbstractLogicalVector v, RArgsValuesAndNames dotdotdot,
64+
protected RLogicalVector asLogicalGeneric(RLogicalVector v, RArgsValuesAndNames dotdotdot,
6665
@Cached("createTemporaryGeneric()") VectorReuse reuseTemporaryNode,
6766
@Cached("createBinaryProfile()") ConditionProfile noAttributes) {
6867
return asLogical(v, dotdotdot, reuseTemporaryNode, noAttributes);

com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/ColMeans.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
import com.oracle.truffle.r.runtime.data.RDataFactory;
3030
import com.oracle.truffle.r.runtime.data.RDoubleVector;
3131
import com.oracle.truffle.r.runtime.data.RIntVector;
32-
import com.oracle.truffle.r.runtime.data.model.RAbstractLogicalVector;
32+
import com.oracle.truffle.r.runtime.data.RLogicalVector;
3333
import com.oracle.truffle.r.runtime.ops.BinaryArithmetic;
3434

3535
//Implements .colMeans
@@ -97,7 +97,7 @@ protected RDoubleVector colMeansNaRmTrue(RDoubleVector x, int rowNum, int colNum
9797
}
9898

9999
@Specialization(guards = "!naRm")
100-
protected RDoubleVector colMeansNaRmFalse(RAbstractLogicalVector x, int rowNum, int colNum, @SuppressWarnings("unused") boolean naRm) {
100+
protected RDoubleVector colMeansNaRmFalse(RLogicalVector x, int rowNum, int colNum, @SuppressWarnings("unused") boolean naRm) {
101101
checkVectorLength(x, rowNum, colNum);
102102

103103
double[] result = new double[colNum];
@@ -118,7 +118,7 @@ protected RDoubleVector colMeansNaRmFalse(RAbstractLogicalVector x, int rowNum,
118118
}
119119

120120
@Specialization(guards = "naRm")
121-
protected RDoubleVector colMeansNaRmTrue(RAbstractLogicalVector x, int rowNum, int colNum, @SuppressWarnings("unused") boolean naRm) {
121+
protected RDoubleVector colMeansNaRmTrue(RLogicalVector x, int rowNum, int colNum, @SuppressWarnings("unused") boolean naRm) {
122122
checkVectorLength(x, rowNum, colNum);
123123

124124
double[] result = new double[colNum];

com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/ColSums.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
import com.oracle.truffle.r.runtime.data.VectorDataLibrary;
3636
import com.oracle.truffle.r.runtime.data.VectorDataLibrary.RandomAccessIterator;
3737
import com.oracle.truffle.r.runtime.data.RIntVector;
38-
import com.oracle.truffle.r.runtime.data.model.RAbstractLogicalVector;
38+
import com.oracle.truffle.r.runtime.data.RLogicalVector;
3939
import com.oracle.truffle.r.runtime.ops.BinaryArithmetic;
4040
import com.oracle.truffle.r.runtime.ops.na.NACheck;
4141

@@ -92,7 +92,7 @@ protected RDoubleVector colSums(RDoubleVector x, int rowNum, int colNum, boolean
9292
}
9393

9494
@Specialization(limit = "getTypedVectorDataLibraryCacheSize()")
95-
protected RDoubleVector colSums(RAbstractLogicalVector x, int rowNum, int colNum, boolean rnaParam,
95+
protected RDoubleVector colSums(RLogicalVector x, int rowNum, int colNum, boolean rnaParam,
9696
@CachedLibrary("x.getData()") VectorDataLibrary xDataLib) {
9797
checkVectorLength(xDataLib, x, rowNum, colNum);
9898

com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/DuplicatedFunctions.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
* Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
1515
*
1616
* Copyright (c) 2014, Purdue University
17-
* Copyright (c) 2014, 2018, Oracle and/or its affiliates
17+
* Copyright (c) 2014, 2020, Oracle and/or its affiliates
1818
*
1919
* All rights reserved.
2020
*/
@@ -41,7 +41,6 @@
4141
import com.oracle.truffle.r.runtime.builtins.RBuiltin;
4242
import com.oracle.truffle.r.runtime.data.RDataFactory;
4343
import com.oracle.truffle.r.runtime.data.RLogicalVector;
44-
import com.oracle.truffle.r.runtime.data.model.RAbstractLogicalVector;
4544
import com.oracle.truffle.r.runtime.data.model.RAbstractVector;
4645
import com.oracle.truffle.r.runtime.nodes.DuplicationHelper;
4746

@@ -70,7 +69,7 @@ protected static void casts(Casts casts) {
7069
private final ConditionProfile incomparable = ConditionProfile.createBinaryProfile();
7170

7271
protected boolean isIncomparable(RAbstractVector incomparables) {
73-
if (incomparable.profile(incomparables.getLength() == 1 && incomparables instanceof RLogicalVector && ((RAbstractLogicalVector) incomparables).getDataAt(0) == RRuntime.LOGICAL_FALSE)) {
72+
if (incomparable.profile(incomparables.getLength() == 1 && incomparables instanceof RLogicalVector && ((RLogicalVector) incomparables).getDataAt(0) == RRuntime.LOGICAL_FALSE)) {
7473
return false;
7574
} else {
7675
return true;
@@ -131,7 +130,7 @@ public abstract static class AnyDuplicated extends RBuiltinNode.Arg3 {
131130
private final ConditionProfile incomparable = ConditionProfile.createBinaryProfile();
132131

133132
protected boolean isIncomparable(RAbstractVector incomparables) {
134-
if (incomparable.profile(incomparables.getLength() == 1 && incomparables instanceof RLogicalVector && ((RAbstractLogicalVector) incomparables).getDataAt(0) == RRuntime.LOGICAL_FALSE)) {
133+
if (incomparable.profile(incomparables.getLength() == 1 && incomparables instanceof RLogicalVector && ((RLogicalVector) incomparables).getDataAt(0) == RRuntime.LOGICAL_FALSE)) {
135134
return false;
136135
} else {
137136
return true;

com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Format.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@
6161
import com.oracle.truffle.r.runtime.data.RStringVector;
6262
import com.oracle.truffle.r.runtime.data.model.RAbstractComplexVector;
6363
import com.oracle.truffle.r.runtime.data.RIntVector;
64-
import com.oracle.truffle.r.runtime.data.model.RAbstractLogicalVector;
64+
import com.oracle.truffle.r.runtime.data.RLogicalVector;
6565
import com.oracle.truffle.r.runtime.data.model.RAbstractStringVector;
6666
import com.oracle.truffle.r.runtime.data.model.RAbstractVector;
6767
import com.oracle.truffle.r.runtime.env.REnvironment;
@@ -142,7 +142,7 @@ private static RStringVector createResult(RAbstractVector value, String[] array)
142142

143143
@Specialization
144144
@TruffleBoundary
145-
protected RStringVector format(RAbstractLogicalVector value, boolean trim, int digits, int nsmall, int width, int justify, boolean naEncode, int scientific, String decimalMark) {
145+
protected RStringVector format(RLogicalVector value, boolean trim, int digits, int nsmall, int width, int justify, boolean naEncode, int scientific, String decimalMark) {
146146
String[] result = LogicalVectorPrinter.format(value, trim, width, getParameters(digits, scientific));
147147
return createResult(value, result);
148148
}

com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/FrameFunctions.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2014, 2019, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2014, 2020, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* This code is free software; you can redistribute it and/or modify it
@@ -80,7 +80,7 @@
8080
import com.oracle.truffle.r.runtime.data.RNull;
8181
import com.oracle.truffle.r.runtime.data.RPairList;
8282
import com.oracle.truffle.r.runtime.data.RPromise;
83-
import com.oracle.truffle.r.runtime.data.model.RAbstractLogicalVector;
83+
import com.oracle.truffle.r.runtime.data.RLogicalVector;
8484
import com.oracle.truffle.r.runtime.env.REnvironment;
8585
import com.oracle.truffle.r.runtime.env.frame.FrameSlotChangeMonitor;
8686
import com.oracle.truffle.r.runtime.gnur.SEXPTYPE;
@@ -297,8 +297,8 @@ private static boolean keepSource() {
297297
Object keepSourceOpt = RContext.getInstance().stateROptions.getValue("keep.source");
298298
boolean keepSource = false;
299299
if (keepSourceOpt != RNull.instance) {
300-
assert keepSourceOpt instanceof RAbstractLogicalVector;
301-
keepSource = RRuntime.fromLogical(((RAbstractLogicalVector) keepSourceOpt).getDataAt(0));
300+
assert keepSourceOpt instanceof RLogicalVector;
301+
keepSource = RRuntime.fromLogical(((RLogicalVector) keepSourceOpt).getDataAt(0));
302302
}
303303
return keepSource;
304304
}

com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/IsFiniteFunctions.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,10 @@
4444
import com.oracle.truffle.r.runtime.data.RComplex;
4545
import com.oracle.truffle.r.runtime.data.RDataFactory;
4646
import com.oracle.truffle.r.runtime.data.RDoubleVector;
47-
import com.oracle.truffle.r.runtime.data.RLogicalVector;
4847
import com.oracle.truffle.r.runtime.data.RNull;
4948
import com.oracle.truffle.r.runtime.data.model.RAbstractComplexVector;
5049
import com.oracle.truffle.r.runtime.data.RIntVector;
51-
import com.oracle.truffle.r.runtime.data.model.RAbstractLogicalVector;
50+
import com.oracle.truffle.r.runtime.data.RLogicalVector;
5251
import com.oracle.truffle.r.runtime.data.RRawVector;
5352
import com.oracle.truffle.r.runtime.data.model.RAbstractStringVector;
5453
import com.oracle.truffle.r.runtime.data.model.RAbstractVector;
@@ -115,7 +114,7 @@ protected RLogicalVector doFunDouble(RDoubleVector x, DoublePredicate fun) {
115114
return result;
116115
}
117116

118-
protected RLogicalVector doFunLogical(RAbstractLogicalVector x, LogicalPredicate fun) {
117+
protected RLogicalVector doFunLogical(RLogicalVector x, LogicalPredicate fun) {
119118
byte[] b = new byte[x.getLength()];
120119
for (int i = 0; i < b.length; i++) {
121120
b[i] = RRuntime.asLogical(fun.test(x.getDataAt(i)));
@@ -164,7 +163,7 @@ protected RLogicalVector doComplete(RIntVector vec) {
164163
}
165164

166165
@Specialization(guards = "vec.isComplete()")
167-
protected RLogicalVector doComplete(RAbstractLogicalVector vec) {
166+
protected RLogicalVector doComplete(RLogicalVector vec) {
168167
return doFunConstant(vec, RRuntime.LOGICAL_TRUE);
169168
}
170169

@@ -174,7 +173,7 @@ protected RLogicalVector doIsFinite(RIntVector vec) {
174173
}
175174

176175
@Specialization(replaces = "doComplete")
177-
protected RLogicalVector doIsFinite(RAbstractLogicalVector vec) {
176+
protected RLogicalVector doIsFinite(RLogicalVector vec) {
178177
return doFunLogical(vec, value -> !RRuntime.isNA(value));
179178
}
180179

@@ -202,7 +201,7 @@ protected RLogicalVector doComplete(RIntVector vec) {
202201
}
203202

204203
@Specialization
205-
protected RLogicalVector doComplete(RAbstractLogicalVector vec) {
204+
protected RLogicalVector doComplete(RLogicalVector vec) {
206205
return doFunConstant(vec, RRuntime.LOGICAL_FALSE);
207206
}
208207

@@ -234,7 +233,7 @@ protected RLogicalVector doIsNan(RIntVector vec) {
234233
}
235234

236235
@Specialization
237-
protected RLogicalVector doIsNan(RAbstractLogicalVector vec) {
236+
protected RLogicalVector doIsNan(RLogicalVector vec) {
238237
return doFunConstant(vec, RRuntime.LOGICAL_FALSE);
239238
}
240239

0 commit comments

Comments
 (0)