An apparatus comprising: data processing circuitry to perform data processing operations in response to a sequence of instructions, wherein the sequence of instructions comprises branch instructions; and trace generating circuitry to generate a trace stream of trace items indicative of the data processing operations, wherein the trace generating circuitry is responsive to one or more not-taken branch instructions followed by a taken branch instruction in the sequence of instructions to: include at least one not-taken trace item corresponding to the one or more not-taken branch instructions followed by a taken trace item in the trace stream when a current status condition of the apparatus is met; and to include a source address associated with the taken branch instruction in the trace stream when the current status condition of the apparatus is not met; wherein the current status condition comprises a multiplicity of the one or more not-taken branch instructions; wherein the current status condition of the apparatus is the multiplicity being less than a threshold value; and wherein the apparatus is characterized in comprising a not-taken counter responsive to a not-taken branch instruction to increment, wherein the tracing trace generating circuitry is responsive to occurrence of an exception in the data processing circuitry to include in the trace stream an exception trace item indicative of a point in the sequence of instructions at which the exception occurred and to reset the not-taken counter. data processing circuitry to perform data processing operations in response to a sequence of instructions, wherein the sequence of instructions comprises branch instructions; and trace generating circuitry to generate a trace stream of trace items indicative of the data processing operations, wherein the trace generating circuitry is responsive to one or more not-taken branch instructions followed by a taken branch instruction in the sequence of instructions to: include at least one not-taken trace item corresponding to the one or more not-taken branch instructions followed by a taken trace item in the trace stream when a current status condition of the apparatus is met; and to include a source address associated with the taken branch instruction in the trace stream when the current status condition of the apparatus is not met; wherein the current status condition comprises a multiplicity of the one or more not-taken branch instructions; wherein the current status condition of the apparatus is the multiplicity being less than a threshold value; and wherein the apparatus is characterized in comprising a not-taken counter responsive to a not-taken branch instruction to increment, wherein the tracing trace generating circuitry is responsive to occurrence of an exception in the data processing circuitry to include in the trace stream an exception trace item indicative of a point in the sequence of instructions at which the exception occurred and to reset the not-taken counter. include at least one not-taken trace item corresponding to the one or more not-taken branch instructions followed by a taken trace item in the trace stream when a current status condition of the apparatus is met; and to include a source address associated with the taken branch instruction in the trace stream when the current status condition of the apparatus is not met; wherein the current status condition comprises a multiplicity of the one or more not-taken branch instructions; wherein the current status condition of the apparatus is the multiplicity being less than a threshold value; and wherein the apparatus is characterized in comprising a not-taken counter responsive to a not-taken branch instruction to increment, wherein the tracing trace generating circuitry is responsive to occurrence of an exception in the data processing circuitry to include in the trace stream an exception trace item indicative of a point in the sequence of instructions at which the exception occurred and to reset the not-taken counter.