1. A method, comprising: invoking a first operation, that does not use hardware transactional memory, for a concurrent linked queue of an interpretive program using a Just-In-Time (JIT) compiler of a virtual machine; determining whether a data processing system executing the virtual machine supports hardware transactional memory; detecting within the first operation, responsive to determining that the data processing system does support hardware transactional memory, a call to a second operation that is configured, in byte code, to return an indication of a failed hardware transaction; and generating, responsive to detecting the second operation, a machine code implementation of the first operation that includes a machine code implementation of the second operation and does not use hardware transactional memory.