diff --git a/lib/node_modules/@stdlib/blas/base/dsyr2/test/fixtures/column_major_x0.json b/lib/node_modules/@stdlib/blas/base/dsyr2/test/fixtures/column_major_x0.json
new file mode 100644
index 000000000000..feecd4f67108
--- /dev/null
+++ b/lib/node_modules/@stdlib/blas/base/dsyr2/test/fixtures/column_major_x0.json
@@ -0,0 +1,18 @@
+{
+  "order": "column-major",
+  "uplo": "lower",
+  "N": 3,
+  "alpha": 2.0,
+  "x": [ 0.0, 0.0, 0.0 ],
+  "strideX": 1,
+  "offsetX": 0,
+  "y": [ 1.0, 2.0, 3.0 ],
+  "strideY": 1,
+  "offsetY": 0,
+  "A": [ 1.0, 1.0, 1.0, 0.0, 2.0, 2.0, 0.0, 0.0, 3.0 ],
+  "lda": 3,
+  "strideA1": 1,
+  "strideA2": 3,
+  "offsetA": 0,
+  "A_out": [ 1.0, 1.0, 1.0, 0.0, 2.0, 2.0, 0.0, 0.0, 3.0 ]
+}
diff --git a/lib/node_modules/@stdlib/blas/base/dsyr2/test/fixtures/row_major_x0.json b/lib/node_modules/@stdlib/blas/base/dsyr2/test/fixtures/row_major_x0.json
new file mode 100644
index 000000000000..73f6c166cb49
--- /dev/null
+++ b/lib/node_modules/@stdlib/blas/base/dsyr2/test/fixtures/row_major_x0.json
@@ -0,0 +1,18 @@
+{
+  "order": "row-major",
+  "uplo": "lower",
+  "N": 3,
+  "alpha": 2.0,
+  "x": [ 0.0, 0.0, 0.0 ],
+  "strideX": 1,
+  "offsetX": 0,
+  "y": [ 1.0, 2.0, 3.0 ],
+  "strideY": 1,
+  "offsetY": 0,
+  "A": [ 1.0, 0.0, 0.0, 1.0, 2.0, 0.0, 1.0, 2.0, 3.0 ],
+  "lda": 3,
+  "strideA1": 3,
+  "strideA2": 1,
+  "offsetA": 0,
+  "A_out": [ 1.0, 0.0, 0.0, 1.0, 2.0, 0.0, 1.0, 2.0, 3.0 ]
+}
diff --git a/lib/node_modules/@stdlib/blas/base/dsyr2/test/test.dsyr2.js b/lib/node_modules/@stdlib/blas/base/dsyr2/test/test.dsyr2.js
index 6a155a5889dc..23ab41fce88b 100644
--- a/lib/node_modules/@stdlib/blas/base/dsyr2/test/test.dsyr2.js
+++ b/lib/node_modules/@stdlib/blas/base/dsyr2/test/test.dsyr2.js
@@ -31,6 +31,7 @@ var dsyr2 = require( './../lib/dsyr2.js' );
 
 var ru = require( './fixtures/row_major_u.json' );
 var rl = require( './fixtures/row_major_l.json' );
+var rx0 = require( './fixtures/row_major_x0.json' );
 var rxpyp = require( './fixtures/row_major_xpyp.json' );
 var rxnyp = require( './fixtures/row_major_xnyp.json' );
 var rxpyn = require( './fixtures/row_major_xpyn.json' );
@@ -38,6 +39,7 @@ var rxnyn = require( './fixtures/row_major_xnyn.json' );
 
 var cu = require( './fixtures/column_major_u.json' );
 var cl = require( './fixtures/column_major_l.json' );
+var cx0 = require( './fixtures/column_major_x0.json' );
 var cxpyp = require( './fixtures/column_major_xpyp.json' );
 var cxnyp = require( './fixtures/column_major_xnyp.json' );
 var cxpyn = require( './fixtures/column_major_xpyn.json' );
@@ -300,6 +302,52 @@ tape( 'the function performs the symmetric rank 2 operation `A = α*x*y^T + α*y
 	t.end();
 });
 
+tape( 'the function performs the symmetric rank 2 operation `A = α*x*y^T + α*y*x^T + A` (row-major, zero-vector)', function test( t ) {
+	var expected;
+	var data;
+	var out;
+	var a;
+	var x;
+	var y;
+
+	data = rx0;
+
+	a = new Float64Array( data.A );
+	x = new Float64Array( data.x );
+	y = new Float64Array( data.y );
+
+	expected = new Float64Array( data.A_out );
+
+	out = dsyr2( data.order, data.uplo, data.N, data.alpha, x, data.strideX, y, data.strideY, a, data.lda );
+	t.strictEqual( out, a, 'returns expected value' );
+	t.deepEqual( out, expected, 'returns expected value' );
+
+	t.end();
+});
+
+tape( 'the function performs the symmetric rank 2 operation `A = α*x*y^T + α*y*x^T + A` (column-major, zero-vector)', function test( t ) {
+	var expected;
+	var data;
+	var out;
+	var a;
+	var x;
+	var y;
+
+	data = cx0;
+
+	a = new Float64Array( data.A );
+	x = new Float64Array( data.x );
+	y = new Float64Array( data.y );
+
+	expected = new Float64Array( data.A_out );
+
+	out = dsyr2( data.order, data.uplo, data.N, data.alpha, x, data.strideX, y, data.strideY, a, data.lda );
+	t.strictEqual( out, a, 'returns expected value' );
+	t.deepEqual( out, expected, 'returns expected value' );
+
+	t.end();
+});
+
 tape( 'the function returns a reference to the input matrix `A`', function test( t ) {
 	var data;
 	var out;
diff --git a/lib/node_modules/@stdlib/blas/base/dsyr2/test/test.ndarray.js b/lib/node_modules/@stdlib/blas/base/dsyr2/test/test.ndarray.js
index 76002766416b..1c76969eec8e 100644
--- a/lib/node_modules/@stdlib/blas/base/dsyr2/test/test.ndarray.js
+++ b/lib/node_modules/@stdlib/blas/base/dsyr2/test/test.ndarray.js
@@ -31,6 +31,7 @@ var dsyr2 = require( './../lib/ndarray.js' );
 
 var ru = require( './fixtures/row_major_u.json' );
 var rl = require( './fixtures/row_major_l.json' );
+var rx0 = require( './fixtures/row_major_x0.json' );
 var rxpyp = require( './fixtures/row_major_xpyp.json' );
 var rxnyp = require( './fixtures/row_major_xnyp.json' );
 var rxpyn = require( './fixtures/row_major_xpyn.json' );
@@ -44,6 +45,7 @@ var rcap = require( './fixtures/row_major_complex_access_pattern.json' );
 
 var cu = require( './fixtures/column_major_u.json' );
 var cl = require( './fixtures/column_major_l.json' );
+var cx0 = require( './fixtures/column_major_x0.json' );
 var cxpyp = require( './fixtures/column_major_xpyp.json' );
 var cxnyp = require( './fixtures/column_major_xnyp.json' );
 var cxpyn = require( './fixtures/column_major_xpyn.json' );
@@ -161,7 +163,7 @@ tape( 'the function throws an error if provided an invalid eighth argument', fun
 
 	function badValue( value ) {
 		return function badValue() {
-			dsyr2( data.uplo, data.N, data.alpha, new Float64Array( data.x ), value, data.offsetX, new Float64Array( data.y ), data.strideY, data.offsetY, new Float64Array( data.A ), data.strideA1, data.strideA2, data.offsetA );
+			dsyr2( data.uplo, data.N, data.alpha, new Float64Array( data.x ), data.strideX, data.offsetX, new Float64Array( data.y ), value, data.offsetY, new Float64Array( data.A ), data.strideA1, data.strideA2, data.offsetA );
 		};
 	}
 });
@@ -258,6 +260,52 @@ tape( 'the function performs the symmetric rank 2 operation `A = α*x*y^T + α*y
 	t.end();
 });
 
+tape( 'the function performs the symmetric rank 2 operation `A = α*x*y^T + α*y*x^T + A` (row-major, zero-vector)', function test( t ) {
+	var expected;
+	var data;
+	var out;
+	var a;
+	var x;
+	var y;
+
+	data = rx0;
+
+	a = new Float64Array( data.A );
+	x = new Float64Array( data.x );
+	y = new Float64Array( data.y );
+
+	expected = new Float64Array( data.A_out );
+
+	out = dsyr2( data.uplo, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
+	t.strictEqual( out, a, 'returns expected value' );
+	t.deepEqual( out, expected, 'returns expected value' );
+
+	t.end();
+});
+
+tape( 'the function performs the symmetric rank 2 operation `A = α*x*y^T + α*y*x^T + A` (column-major, zero-vector)', function test( t ) {
+	var expected;
+	var data;
+	var out;
+	var a;
+	var x;
+	var y;
+
+	data = cx0;
+
+	a = new Float64Array( data.A );
+	x = new Float64Array( data.x );
+	y = new Float64Array( data.y );
+
+	expected = new Float64Array( data.A_out );
+
+	out = dsyr2( data.uplo, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
+	t.strictEqual( out, a, 'returns expected value' );
+	t.deepEqual( out, expected, 'returns expected value' );
+
+	t.end();
+});
+
 tape( 'the function returns a reference to the input matrix `A`', function test( t ) {
 	var data;
 	var out;