diff --git a/src/backend/executor/instrument.c b/src/backend/executor/instrument.c
index c58ee3d3002fa4ba1705cfef72c56d1307093664..2b4ce751f5efbb7715f5a28a3a61e637c1a9a775 100644
--- a/src/backend/executor/instrument.c
+++ b/src/backend/executor/instrument.c
@@ -33,9 +33,9 @@ InstrAlloc(int n, int instrument_options)
 	instr = palloc0(n * sizeof(Instrumentation));
 	if (instrument_options & (INSTRUMENT_BUFFERS | INSTRUMENT_TIMER))
 	{
+		bool		need_buffers = (instrument_options & INSTRUMENT_BUFFERS) != 0;
+		bool		need_timer = (instrument_options & INSTRUMENT_TIMER) != 0;
 		int			i;
-		bool		need_buffers = instrument_options & INSTRUMENT_BUFFERS;
-		bool		need_timer = instrument_options & INSTRUMENT_TIMER;
 
 		for (i = 0; i < n; i++)
 		{
@@ -51,10 +51,13 @@ InstrAlloc(int n, int instrument_options)
 void
 InstrStartNode(Instrumentation *instr)
 {
-	if (instr->need_timer && INSTR_TIME_IS_ZERO(instr->starttime))
-		INSTR_TIME_SET_CURRENT(instr->starttime);
-	else
-		elog(DEBUG2, "InstrStartNode called twice in a row");
+	if (instr->need_timer)
+	{
+		if (INSTR_TIME_IS_ZERO(instr->starttime))
+			INSTR_TIME_SET_CURRENT(instr->starttime);
+		else
+			elog(DEBUG2, "InstrStartNode called twice in a row");
+	}
 
 	/* save buffer usage totals at node entry, if needed */
 	if (instr->need_bufusage)
@@ -73,7 +76,6 @@ InstrStopNode(Instrumentation *instr, double nTuples)
 	/* let's update the time only if the timer was requested */
 	if (instr->need_timer)
 	{
-
 		if (INSTR_TIME_IS_ZERO(instr->starttime))
 		{
 			elog(DEBUG2, "InstrStopNode called without start");
@@ -84,7 +86,6 @@ InstrStopNode(Instrumentation *instr, double nTuples)
 		INSTR_TIME_ACCUM_DIFF(instr->counter, endtime, instr->starttime);
 
 		INSTR_TIME_SET_ZERO(instr->starttime);
-
 	}
 
 	/* Add delta of buffer usage since entry to node's totals */